VerticalGrid Derived Type

type, public, abstract :: VerticalGrid


Inherited by

type~~verticalgrid~~InheritedByGraph type~verticalgrid VerticalGrid type~basicverticalgrid BasicVerticalGrid type~basicverticalgrid->type~verticalgrid type~fieldspec~2 FieldSpec type~fieldspec~2->type~verticalgrid vertical_grid type~fixedlevelsverticalgrid FixedLevelsVerticalGrid type~fixedlevelsverticalgrid->type~verticalgrid type~geometryspec GeometrySpec type~geometryspec->type~verticalgrid vertical_grid type~mirrorverticalgrid MirrorVerticalGrid type~mirrorverticalgrid->type~verticalgrid type~modelverticalgrid ModelVerticalGrid type~modelverticalgrid->type~verticalgrid type~outermetacomponent OuterMetaComponent type~outermetacomponent->type~verticalgrid vertical_grid type~componentspec ComponentSpec type~outermetacomponent->type~componentspec component_spec type~bracketspec BracketSpec type~bracketspec->type~fieldspec~2 reference_spec, field_specs type~componentspec->type~geometryspec geometry_spec

Type-Bound Procedures

procedure(I_can_connect_to), public, deferred :: can_connect_to

  • function I_can_connect_to(this, src, rc) result(can_connect_to) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this
    class(VerticalGrid), intent(in) :: src
    integer, intent(out), optional :: rc

    Return Value logical

procedure(I_get_coordinate_field), public, deferred :: get_coordinate_field

  • subroutine I_get_coordinate_field(this, field, coupler, standard_name, geom, typekind, units, rc) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this
    type(ESMF_Field), intent(out) :: field
    type(GriddedComponentDriver), intent(out), pointer :: coupler
    character(len=*), intent(in) :: standard_name
    type(ESMF_Geom), intent(in) :: geom
    type(ESMF_TypeKind_Flag), intent(in) :: typekind
    character(len=*), intent(in) :: units
    integer, intent(out), optional :: rc

procedure, public :: get_id

  • private function get_id(this) result(id)

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this

    Return Value integer

procedure(I_get_num_levels), public, deferred :: get_num_levels

  • function I_get_num_levels(this) result(num_levels) Prototype

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this

    Return Value integer

procedure, public :: make_info

  • private function make_info(this, rc) result(info)

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this
    integer, intent(out), optional :: rc

    Return Value type(ESMF_Info)

procedure, public :: same_id

  • private function same_id(this, other)

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(in) :: this
    class(VerticalGrid), intent(in) :: other

    Return Value logical

procedure, public :: set_id

  • private subroutine set_id(this)

    Arguments

    Type IntentOptional Attributes Name
    class(VerticalGrid), intent(inout) :: this

Source Code

   type, abstract :: VerticalGrid
      private
      integer :: id = -1
   contains
      procedure(I_get_num_levels), deferred :: get_num_levels
      procedure(I_get_coordinate_field), deferred :: get_coordinate_field
      procedure(I_can_connect_to), deferred :: can_connect_to

      procedure :: set_id
      procedure :: get_id
      procedure :: same_id
      procedure :: make_info
   end type VerticalGrid