transform_test Program

Uses

    • mpl_module
    • parkind1
    • yomgstats
    • oml_mod
    • yomhook
  • program~~transform_test~~UsesGraph program~transform_test transform_test mpl_module mpl_module program~transform_test->mpl_module oml_mod oml_mod program~transform_test->oml_mod parkind1 parkind1 program~transform_test->parkind1 yomgstats yomgstats program~transform_test->yomgstats yomhook yomhook program~transform_test->yomhook

Calls

program~~transform_test~~CallsGraph program~transform_test transform_test abor1 abor1 program~transform_test->abor1 dir_trans dir_trans program~transform_test->dir_trans dr_hook_init dr_hook_init program~transform_test->dr_hook_init ec_meminfo ec_meminfo program~transform_test->ec_meminfo gpnorm_trans gpnorm_trans program~transform_test->gpnorm_trans gstats gstats program~transform_test->gstats gstats_print gstats_print program~transform_test->gstats_print gstats_psut gstats_psut program~transform_test->gstats_psut gstats_setup gstats_setup program~transform_test->gstats_setup inv_trans inv_trans program~transform_test->inv_trans mpl_allreduce mpl_allreduce program~transform_test->mpl_allreduce mpl_buffer_method mpl_buffer_method program~transform_test->mpl_buffer_method mpl_cart_coords mpl_cart_coords program~transform_test->mpl_cart_coords mpl_end mpl_end program~transform_test->mpl_end mpl_groups_create mpl_groups_create program~transform_test->mpl_groups_create mpl_init mpl_init program~transform_test->mpl_init mpl_myrank mpl_myrank program~transform_test->mpl_myrank mpl_nproc mpl_nproc program~transform_test->mpl_nproc mpl_recv mpl_recv program~transform_test->mpl_recv mpl_send mpl_send program~transform_test->mpl_send oml_max_threads oml_max_threads program~transform_test->oml_max_threads proc~cubic_octahedral_gaussian_grid~2 cubic_octahedral_gaussian_grid program~transform_test->proc~cubic_octahedral_gaussian_grid~2 proc~detect_mpirun~2 detect_mpirun program~transform_test->proc~detect_mpirun~2 proc~dump_gridpoint_field~2 dump_gridpoint_field program~transform_test->proc~dump_gridpoint_field~2 proc~get_command_line_arguments~2 get_command_line_arguments program~transform_test->proc~get_command_line_arguments~2 proc~gstats_labels~2 gstats_labels program~transform_test->proc~gstats_labels~2 proc~initialize_spectral_arrays~2 initialize_spectral_arrays program~transform_test->proc~initialize_spectral_arrays~2 proc~parse_grid~2 parse_grid program~transform_test->proc~parse_grid~2 proc~set_ectrans_gpu_nflev~2 set_ectrans_gpu_nflev program~transform_test->proc~set_ectrans_gpu_nflev~2 proc~sort sort program~transform_test->proc~sort setup_trans setup_trans program~transform_test->setup_trans setup_trans0 setup_trans0 program~transform_test->setup_trans0 specnorm specnorm program~transform_test->specnorm trans_inq trans_inq program~transform_test->trans_inq proc~get_command_line_arguments~2->mpl_end proc~get_command_line_arguments~2->mpl_init ec_mpirank ec_mpirank proc~get_command_line_arguments~2->ec_mpirank proc~get_int_value~2 get_int_value proc~get_command_line_arguments~2->proc~get_int_value~2 proc~get_str_value~2 get_str_value proc~get_command_line_arguments~2->proc~get_str_value~2 proc~parsing_failed~2 parsing_failed proc~get_command_line_arguments~2->proc~parsing_failed~2 proc~print_help~2 print_help proc~get_command_line_arguments~2->proc~print_help~2 gstats_label gstats_label proc~gstats_labels~2->gstats_label proc~initialize_2d_spectral_field~2 initialize_2d_spectral_field proc~initialize_spectral_arrays~2->proc~initialize_2d_spectral_field~2 proc~parse_grid~2->proc~parsing_failed~2 ec_putenv ec_putenv proc~set_ectrans_gpu_nflev~2->ec_putenv proc~get_int_value~2->proc~get_str_value~2 proc~get_int_value~2->proc~parsing_failed~2 proc~str2int~2 str2int proc~get_int_value~2->proc~str2int~2 proc~get_str_value~2->proc~parsing_failed~2 proc~initialize_2d_spectral_field~2->trans_inq proc~parsing_failed~2->mpl_end proc~parsing_failed~2->mpl_init proc~parsing_failed~2->ec_mpirank proc~parsing_failed~2->proc~print_help~2

Variables

Type Attributes Name Initial
integer(kind=jpim), parameter :: min_octa_points = 20
integer(kind=jpim) :: istack
integer(kind=jpim) :: getstackusage
real(kind=jprb), dimension(1) :: zmaxerr(5)
real(kind=jprb), dimension(1) :: zerr(5)
real(kind=jprb) :: zmaxerrg
integer(kind=jpim), parameter :: nerr = 0
integer(kind=jpim), parameter :: nout = 6
integer(kind=jpim), parameter :: noutdump = 7
integer(kind=jpim) :: nsmax = 79
integer(kind=jpim) :: iters = 10
integer(kind=jpim) :: nfld = 1
integer(kind=jpim) :: nlev = 1
integer(kind=jpim) :: nflevg
integer(kind=jpim) :: ndgl
integer(kind=jpim) :: nspec2
integer(kind=jpim) :: ngptot
integer(kind=jpim) :: ngptotg
integer(kind=jpim) :: ifld
integer(kind=jpim) :: jroc
integer(kind=jpim) :: jb
integer(kind=jpim) :: nspec2g
integer(kind=jpim) :: i
integer(kind=jpim) :: ja
integer(kind=jpim) :: ib
integer(kind=jpim) :: jprtrv
integer(kind=jpim), allocatable :: nloen(:)
integer(kind=jpim), allocatable :: nprcids(:)
integer(kind=jpim) :: myproc
integer(kind=jpim) :: jj
integer(kind=jpim) :: jf
integer(kind=jpim) :: ilf
integer :: jstep
real(kind=jprd) :: ztinit
real(kind=jprd) :: ztloop
real(kind=jprd) :: timef
real(kind=jprd) :: ztstepmax
real(kind=jprd) :: ztstepmin
real(kind=jprd) :: ztstepavg
real(kind=jprd) :: ztstepmed
real(kind=jprd) :: ztstepmax1
real(kind=jprd) :: ztstepmin1
real(kind=jprd) :: ztstepavg1
real(kind=jprd) :: ztstepmed1
real(kind=jprd) :: ztstepmax2
real(kind=jprd) :: ztstepmin2
real(kind=jprd) :: ztstepavg2
real(kind=jprd) :: ztstepmed2
real(kind=jprd), allocatable :: ztstep(:)
real(kind=jprd), allocatable :: ztstep1(:)
real(kind=jprd), allocatable :: ztstep2(:)
real(kind=jprb), allocatable :: znormsp(:)
real(kind=jprb), allocatable :: znormsp1(:)
real(kind=jprb), allocatable :: znormdiv(:)
real(kind=jprb), allocatable :: znormdiv1(:)
real(kind=jprb), allocatable :: znormvor(:)
real(kind=jprb), allocatable :: znormvor1(:)
real(kind=jprb), allocatable :: znormt(:)
real(kind=jprb), allocatable :: znormt1(:)
real(kind=jprd) :: zaveave(0:jpmaxstat)
real(kind=jprb), allocatable, target :: zgmv(:,:,:,:)
real(kind=jprb), allocatable, target :: zgmvs(:,:,:)
real(kind=jprb), pointer :: zgp3a(:,:,:,:)
real(kind=jprb), pointer :: zgpuv(:,:,:,:)
real(kind=jprb), pointer :: zgp2(:,:,:)
real(kind=jprb), allocatable, target :: sp3d(:,:,:)
real(kind=jprb), pointer :: zspvor(:,:) => null()
real(kind=jprb), pointer :: zspdiv(:,:) => null()
real(kind=jprb), pointer :: zspsc3a(:,:,:) => null()
real(kind=jprb), allocatable :: zspsc2(:,:)
real(kind=jprb), allocatable :: zave(:)
real(kind=jprb), allocatable :: zmin(:)
real(kind=jprb), allocatable :: zmax(:)
real(kind=jprb), allocatable :: zreel(:,:,:)
logical :: lstack = .false.
logical :: luserpnm = .false.
logical :: lkeeprpnm = .false.
logical :: luseflt = .false.
logical :: ltrace_stats = .false.
logical :: lstats_omp = .false.
logical :: lstats_comms = .false.
logical :: lstats_mpl = .false.
logical :: lstats = .true.
logical :: lbarrier_stats = .false.
logical :: lbarrier_stats2 = .false.
logical :: ldetailed_stats = .false.
logical :: lstats_alloc = .false.
logical :: lsyncstats = .false.
logical :: lstatscpu = .false.
logical :: lstats_mem = .false.
logical :: lxml_stats = .false.
logical :: lfftw = .true.
logical :: lvordiv = .false.
logical :: lscders = .false.
logical :: luvders = .false.
logical :: lprint_norms = .false.
logical :: lmeminfo = .false.
logical :: lgpnorms = .false.
integer(kind=jpim) :: nstats_mem = 0
integer(kind=jpim) :: ntrace_stats = 0
integer(kind=jpim) :: nprnt_stats = 1
integer(kind=jpim) :: ncheck = 0
logical :: lmpoff = .false.
integer :: verbosity = 0
real(kind=jprb) :: zra = 6371229._jprb
integer(kind=jpim) :: nmax_resol = 37
integer(kind=jpim) :: npromatr = 0
integer(kind=jpim) :: ncombflen = 1800000
integer(kind=jpim) :: nproc
integer(kind=jpim) :: nthread
integer(kind=jpim) :: nprgpns
integer(kind=jpim) :: nprgpew
integer(kind=jpim) :: nprtrv = 0
integer(kind=jpim) :: nprtrw = 0
integer(kind=jpim) :: nspecresmin = 80
integer(kind=jpim) :: mysetv
integer(kind=jpim) :: mysetw
integer(kind=jpim) :: mp_type = 2
integer(kind=jpim) :: mbx_size = 150000000
integer(kind=jpim), allocatable :: numll(:)
integer(kind=jpim), allocatable :: ivset(:)
integer(kind=jpim) :: ivsetsc(1)
integer(kind=jpim) :: nflevl
integer(kind=jpim) :: isqr
logical :: lsync_trans = .true.
logical :: leq_regions = .true.
integer(kind=jpim) :: nproma = 0
integer(kind=jpim) :: ngpblks
integer(kind=jpim) :: iprtrv
integer(kind=jpim) :: iprtrw
integer(kind=jpim) :: iprused
integer(kind=jpim) :: ilevpp
integer(kind=jpim) :: irest
integer(kind=jpim) :: ilev
integer(kind=jpim) :: jlev
integer(kind=jpim) :: iprev
integer(kind=jpim) :: ndimgmv = 0
integer(kind=jpim) :: ndimgmvs = 0
integer(kind=jpim) :: jbegin_uv = 0
integer(kind=jpim) :: jend_uv = 0
integer(kind=jpim) :: jbegin_sc = 0
integer(kind=jpim) :: jend_sc = 0
integer(kind=jpim) :: jbegin_scder_NS = 0
integer(kind=jpim) :: jend_scder_NS = 0
integer(kind=jpim) :: jbegin_scder_EW = 0
integer(kind=jpim) :: jend_scder_EW = 0
integer(kind=jpim) :: jbegin_uder_EW = 0
integer(kind=jpim) :: jend_uder_EW = 0
integer(kind=jpim) :: jbegin_vder_EW = 0
integer(kind=jpim) :: jend_vder_EW = 0
logical :: ldump_values = .false.
logical :: luse_mpi = .true.
character(len=16) :: cgrid = ''

Functions

function get_int_value(cname, iarg) result(value)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: cname
integer, intent(inout) :: iarg

Return Value integer

function get_str_value(cname, iarg) result(value)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: cname
integer, intent(inout) :: iarg

Return Value character(len=128)

function cubic_octahedral_gaussian_grid(nsmax) result(cgrid)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nsmax

Return Value character(len=16)

function detect_mpirun() result(lmpi_required)

Arguments

None

Return Value logical


Subroutines

subroutine parse_grid(cgrid, ndgl, nloen)

Arguments

Type IntentOptional Attributes Name
character(len=*) :: cgrid
integer, intent(inout) :: ndgl
integer, intent(inout), allocatable :: nloen(:)

subroutine parsing_failed(message)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: message

subroutine get_command_line_arguments(nsmax, cgrid, iters, nfld, nlev, lvordiv, lscders, luvders, lgpnorms, luseflt, nproma, verbosity, ldump_values, lprint_norms, lmeminfo, nprtrv, nprtrw, ncheck)

Arguments

Type IntentOptional Attributes Name
integer, intent(inout) :: nsmax
character(len=16), intent(inout) :: cgrid
integer, intent(inout) :: iters
integer, intent(inout) :: nfld
integer, intent(inout) :: nlev
logical, intent(inout) :: lvordiv
logical, intent(inout) :: lscders
logical, intent(inout) :: luvders
logical, intent(inout) :: lgpnorms
logical, intent(inout) :: luseflt
integer, intent(inout) :: nproma
integer, intent(inout) :: verbosity
logical, intent(inout) :: ldump_values
logical, intent(inout) :: lprint_norms
logical, intent(inout) :: lmeminfo
integer, intent(inout) :: nprtrv
integer, intent(inout) :: nprtrw
integer, intent(inout) :: ncheck

subroutine str2int(str, int, stat)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: str
integer, intent(out) :: int
integer, intent(out) :: stat

subroutine sort(a, n)

Arguments

Type IntentOptional Attributes Name
real(kind=jprd), intent(inout) :: a(n)
integer(kind=jpim), intent(in) :: n

subroutine print_help(unit)

Arguments

Type IntentOptional Attributes Name
integer, optional :: unit

subroutine initialize_spectral_arrays(nsmax, zsp, sp3d)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nsmax
real(kind=jprb), intent(inout) :: zsp(:,:)
real(kind=jprb), intent(inout) :: sp3d(:,:,:)

subroutine initialize_2d_spectral_field(nsmax, field)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nsmax
real(kind=jprb), intent(inout) :: field(:)

subroutine dump_gridpoint_field(jstep, myproc, nproma, ngpblks, fld, fldchar, noutdump)

Arguments

Type IntentOptional Attributes Name
integer(kind=jpim), intent(in) :: jstep
integer(kind=jpim), intent(in) :: myproc
integer(kind=jpim), intent(in) :: nproma
integer(kind=jpim), intent(in) :: ngpblks
real(kind=jprb), intent(in) :: fld(nproma,ngpblks)
character(len=1), intent(in) :: fldchar
integer(kind=jpim), intent(in) :: noutdump

subroutine gstats_labels()

Arguments

None

subroutine set_ectrans_gpu_nflev(kflev)

Arguments

Type IntentOptional Attributes Name
integer(kind=jpim), intent(in) :: kflev