LTINV_CTL Subroutine

public subroutine LTINV_CTL(KF_OUT_LT, KF_UV, KF_SCALARS, KF_SCDERS, PSPVOR, PSPDIV, PSPSCALAR, PSPSC3A, PSPSC3B, PSPSC2, KFLDPTRUV, KFLDPTRSC, FSPGL_PROC)

Uses

  • proc~~ltinv_ctl~~UsesGraph proc~ltinv_ctl LTINV_CTL PARKIND1 PARKIND1 proc~ltinv_ctl->PARKIND1 module~ltinv_mod LTINV_MOD proc~ltinv_ctl->module~ltinv_mod module~tpm_distr TPM_DISTR proc~ltinv_ctl->module~tpm_distr module~tpm_flt~2 TPM_FLT proc~ltinv_ctl->module~tpm_flt~2 module~tpm_gen~2 TPM_GEN proc~ltinv_ctl->module~tpm_gen~2 module~tpm_trans~2 TPM_TRANS proc~ltinv_ctl->module~tpm_trans~2 module~trmtol_mod~2 TRMTOL_MOD proc~ltinv_ctl->module~trmtol_mod~2 module~buffered_allocator_mod BUFFERED_ALLOCATOR_MOD module~ltinv_mod->module~buffered_allocator_mod EC_PARKIND EC_PARKIND module~tpm_distr->EC_PARKIND module~parkind_ectrans PARKIND_ECTRANS module~tpm_flt~2->module~parkind_ectrans module~seefmm_mix~2 seefmm_mix module~tpm_flt~2->module~seefmm_mix~2 module~tpm_gen~2->module~parkind_ectrans iso_c_binding iso_c_binding module~tpm_trans~2->iso_c_binding module~growing_allocator_mod GROWING_ALLOCATOR_MOD module~tpm_trans~2->module~growing_allocator_mod module~tpm_trans~2->module~parkind_ectrans module~trmtol_mod~2->module~buffered_allocator_mod module~buffered_allocator_mod->iso_c_binding module~buffered_allocator_mod->module~growing_allocator_mod module~buffered_allocator_mod->module~parkind_ectrans module~abort_trans_mod ABORT_TRANS_MOD module~buffered_allocator_mod->module~abort_trans_mod module~growing_allocator_mod->iso_c_binding module~parkind_ectrans->PARKIND1 module~seefmm_mix~2->module~parkind_ectrans ecsort_mix ecsort_mix module~seefmm_mix~2->ecsort_mix module~wts500_mod~2 WTS500_MOD module~seefmm_mix~2->module~wts500_mod~2

*** LTINV_CTL - Control routine for inverse Legandre transform.

  • Interface. ---------- CALL INV_TRANS_CTL(...) KF_OUT_LT - number of fields coming out from inverse LT KF_UV - local number of spectral u-v fields KF_SCALARS - local number of scalar spectral fields KF_SCDERS - local number of derivatives of scalar spectral fields PSPVOR(:,:) - spectral vorticity (input) PSPDIV(:,:) - spectral divergence (input) PSPSCALAR(:,:) - spectral scalarvalued fields (input) KFLDPTRUV(:) - field pointer array for vor./div. KFLDPTRSC(:) - field pointer array for PSPSCALAR FSPGL_PROC - external procedure to be executed in fourier space before transposition

!WARNING!!! Duplication of code besides the FSPGL_PROC argument.

Arguments

Type IntentOptional Attributes Name
integer(kind=JPIM), intent(in) :: KF_OUT_LT
integer(kind=JPIM), intent(in) :: KF_UV
integer(kind=JPIM), intent(in) :: KF_SCALARS
integer(kind=JPIM), intent(in) :: KF_SCDERS
real(kind=JPRB), intent(in), optional :: PSPVOR(:,:)
real(kind=JPRB), intent(in), optional :: PSPDIV(:,:)
real(kind=JPRB), intent(in), optional :: PSPSCALAR(:,:)
real(kind=JPRB), intent(in), optional :: PSPSC3A(:,:,:)
real(kind=JPRB), intent(in), optional :: PSPSC3B(:,:,:)
real(kind=JPRB), intent(in), optional :: PSPSC2(:,:)
integer(kind=JPIM), intent(in), optional :: KFLDPTRUV(:)
integer(kind=JPIM), intent(in), optional :: KFLDPTRSC(:)
real :: FSPGL_PROC

Calls

proc~~ltinv_ctl~~CallsGraph proc~ltinv_ctl LTINV_CTL gstats gstats proc~ltinv_ctl->gstats proc~ltinv LTINV proc~ltinv_ctl->proc~ltinv proc~trmtol TRMTOL proc~ltinv_ctl->proc~trmtol dr_hook dr_hook proc~ltinv->dr_hook interface~assign_ptr ASSIGN_PTR proc~ltinv->interface~assign_ptr mpl_barrier mpl_barrier proc~ltinv->mpl_barrier proc~abort_trans ABORT_TRANS proc~ltinv->proc~abort_trans proc~get_allocation GET_ALLOCATION proc~ltinv->proc~get_allocation proc~gstats_nvtx GSTATS_NVTX proc~ltinv->proc~gstats_nvtx proc~leinv LEINV proc~ltinv->proc~leinv proc~leinv_strides LEINV_STRIDES proc~ltinv->proc~leinv_strides proc~prfi1b PRFI1B proc~ltinv->proc~prfi1b proc~spnsde SPNSDE proc~ltinv->proc~spnsde proc~vdtuv VDTUV proc~ltinv->proc~vdtuv proc~trmtol->dr_hook proc~trmtol->interface~assign_ptr mpi_alltoallv mpi_alltoallv proc~trmtol->mpi_alltoallv proc~trmtol->mpl_barrier mpl_myrank mpl_myrank proc~trmtol->mpl_myrank proc~trmtol->proc~get_allocation proc~trmtol->proc~gstats_nvtx mpl_abort mpl_abort proc~abort_trans->mpl_abort sdl_srlabort sdl_srlabort proc~abort_trans->sdl_srlabort sdl_traceback sdl_traceback proc~abort_trans->sdl_traceback proc~get_allocation->proc~abort_trans proc~leinv->dr_hook proc~leinv->mpl_barrier proc~leinv->proc~gstats_nvtx proc~leinv->proc~leinv_strides d_myms d_myms proc~leinv->d_myms d_offsets_gemm1 d_offsets_gemm1 proc~leinv->d_offsets_gemm1 d_offsets_gemm2 d_offsets_gemm2 proc~leinv->d_offsets_gemm2 proc~hip_dgemm_batched_overload HIP_DGEMM_BATCHED_OVERLOAD proc~leinv->proc~hip_dgemm_batched_overload proc~hip_dgemm_grouped_overload HIP_DGEMM_GROUPED_OVERLOAD proc~leinv->proc~hip_dgemm_grouped_overload proc~leinv_strides->d_offsets_gemm1 proc~leinv_strides->d_offsets_gemm2 proc~spnsde->d_myms proc~vdtuv->d_myms acc_get_hip_stream acc_get_hip_stream proc~hip_dgemm_batched_overload->acc_get_hip_stream interface~hip_dgemm_batched HIP_DGEMM_BATCHED proc~hip_dgemm_batched_overload->interface~hip_dgemm_batched proc~hip_dgemm_grouped_overload->acc_get_hip_stream interface~hip_dgemm_grouped HIP_DGEMM_GROUPED proc~hip_dgemm_grouped_overload->interface~hip_dgemm_grouped

Called by

proc~~ltinv_ctl~~CalledByGraph proc~ltinv_ctl LTINV_CTL proc~inv_trans_ctl~2 INV_TRANS_CTL proc~inv_trans_ctl~2->proc~ltinv_ctl