mod_tsmp Module

$ interface $ subroutine g2l_state(domain_p, state_p, dim_l, state_l) bind(c) $ use iso_c_binding $ import $ INTEGER(c_int) :: domain_p ! Current local analysis domain $ INTEGER(c_int) :: dim_l ! Local state dimension $ TYPE(c_ptr) :: state_p ! PE-local full state vector $ TYPE(c_ptr) :: state_l ! State vector on local analysis domain $ end subroutine g2l_state $ end interface $ $ interface $ subroutine l2g_state(domain_p, state_p, dim_l, state_l) bind(c) $ use iso_c_binding $ import $ INTEGER(c_int) :: domain_p ! Current local analysis domain $ INTEGER(c_int) :: dim_l ! Local state dimension $ TYPE(c_ptr) :: state_l ! State vector on local analysis domain $ TYPE(c_ptr) :: state_p ! PE-local full state vector $ end subroutine l2g_state $ end interface



Variables

Type Visibility Attributes Name Initial
integer(kind=c_int), public, bind(c) :: enkf_subvecsize
integer(kind=c_int), public, bind(c) :: pf_statevecsize
integer(kind=c_int), public, bind(c) :: nprocpf
integer(kind=c_int), public, bind(c) :: nprocclm
integer(kind=c_int), public, bind(c) :: nproccosmo
integer(kind=c_int), public, bind(c) :: flexible_da_interval
integer(kind=c_int), public, bind(c) :: point_obs
integer(kind=c_int), public, bind(c) :: is_dampfac_state_time_dependent
integer(kind=c_int), public, bind(c) :: is_dampfac_param_time_dependent
integer(kind=c_int), public, bind(c) :: obs_interp_switch
integer(kind=c_int), public, bind(c) :: nx_local
integer(kind=c_int), public, bind(c) :: ny_local
integer(kind=c_int), public, bind(c) :: nz_local
integer(kind=c_int), public, bind(c) :: nx_glob
integer(kind=c_int), public, bind(c) :: ny_glob
integer(kind=c_int), public, bind(c) :: nz_glob
integer(kind=c_int), public, bind(c) :: tag_model_clm = 0
integer(kind=c_int), public, bind(c) :: tag_model_parflow = 1
integer(kind=c_int), public, bind(c) :: tag_model_cosmo = 2
integer(kind=c_int), public, bind(c) :: crns_flag
integer(kind=c_int), public, bind(c) :: da_print_obs_index
type(c_ptr), public, bind(c) :: pf_statevec
type(c_ptr), public, bind(c) :: xcoord
type(c_ptr), public, bind(c) :: ycoord
type(c_ptr), public, bind(c) :: zcoord
real(kind=c_double), public, pointer :: xcoord_fortran(:)
real(kind=c_double), public, pointer :: ycoord_fortran(:)
real(kind=c_double), public, pointer :: zcoord_fortran(:)
real(kind=c_double), public, pointer :: pf_statevec_fortran(:)
real(kind=c_double), public, bind(c) :: da_crns_depth_tol
type(c_ptr), public, bind(c) :: idx_map_subvec2state
integer(kind=c_int), public, pointer :: idx_map_subvec2state_fortran(:)
type(c_ptr), public, bind(c) :: soilay
real(kind=c_double), public, pointer :: soilay_fortran(:)
real(kind=c_double), public, bind(C) :: da_interval
real(kind=c_double), public, bind(C) :: da_interval_final
real(kind=c_double), public, bind(C) :: dampfac_state_time_dependent
real(kind=c_double), public, bind(C) :: dampfac_param_time_dependent
real(kind=c_double), public, BIND(c) :: t_start
integer(kind=c_int), public, BIND(c) :: model
integer(kind=c_int), public, BIND(c) :: tcycle
integer(kind=c_int), public, BIND(c) :: tstartcycle
integer(kind=c_int), public, BIND(c) :: total_steps

Interfaces

interface

  • public subroutine initialize_tsmp() bind(c)

    Arguments

    None

interface

  • public subroutine finalize_tsmp() bind(c)

    Arguments

    None

interface

  • public subroutine integrate_tsmp() bind(c)

    Arguments

    None

interface

  • public subroutine update_tsmp() bind(c)

    Arguments

    None

interface

  • public subroutine init_n_domains_size(n_domains_p) bind(c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=c_int) :: n_domains_p

interface

  • public subroutine init_parf_l_size(dim_l) bind(c)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=c_int) :: dim_l