Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mpas_dynamical_core_type), | intent(in) | :: | self | |||
logical, | intent(out), | pointer | :: | variable_pointer | ||
character(len=*), | intent(in) | :: | pool_name | |||
character(len=*), | intent(in) | :: | variable_name | |||
integer, | intent(in), | optional | :: | time_level |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(mpas_pool_type), | private, | pointer | :: | mpas_pool | |||
character(len=*), | private, | parameter | :: | subname | = | 'dyn_mpas_subdriver::dyn_mpas_get_variable_pointer_l0' |
subroutine dyn_mpas_get_variable_pointer_l0(self, variable_pointer, pool_name, variable_name, time_level) ! Module(s) from MPAS. use mpas_derived_types, only: mpas_pool_type use mpas_pool_routines, only: mpas_pool_get_config class(mpas_dynamical_core_type), intent(in) :: self logical, pointer, intent(out) :: variable_pointer character(*), intent(in) :: pool_name character(*), intent(in) :: variable_name integer, optional, intent(in) :: time_level character(*), parameter :: subname = 'dyn_mpas_subdriver::dyn_mpas_get_variable_pointer_l0' type(mpas_pool_type), pointer :: mpas_pool nullify(mpas_pool) call self % get_pool_pointer(mpas_pool, pool_name) nullify(variable_pointer) if (trim(adjustl(pool_name)) == 'cfg') then ! Special case for config-related variables. They must be retrieved by calling `mpas_pool_get_config`. call mpas_pool_get_config(mpas_pool, trim(adjustl(variable_name)), variable_pointer) end if if (.not. associated(variable_pointer)) then call self % model_error('Failed to find variable "' // trim(adjustl(variable_name)) // '"', subname, __LINE__) end if nullify(mpas_pool) end subroutine dyn_mpas_get_variable_pointer_l0