new_FieldSpec_geom Function

public function new_FieldSpec_geom(unusable, geom, vertical_grid, vertical_dim_spec, typekind, ungridded_dims, standard_name, long_name, units, attributes, regrid_param, default_value) result(field_spec)

Arguments

Type IntentOptional Attributes Name
class(KeywordEnforcer), intent(in), optional :: unusable
type(ESMF_Geom), intent(in), optional :: geom
class(VerticalGrid), intent(in), optional :: vertical_grid
type(VerticalDimSpec), intent(in) :: vertical_dim_spec
type(ESMF_TypeKind_Flag), intent(in) :: typekind
type(UngriddedDims), intent(in) :: ungridded_dims
character(len=*), intent(in), optional :: standard_name
character(len=*), intent(in), optional :: long_name
character(len=*), intent(in), optional :: units
type(StringVector), intent(in), optional :: attributes
type(EsmfRegridderParam), intent(in), optional :: regrid_param
real, intent(in), optional :: default_value

Return Value type(FieldSpec)


Calls

proc~~new_fieldspec_geom~~CallsGraph proc~new_fieldspec_geom new_FieldSpec_geom esmfregridderparam esmfregridderparam proc~new_fieldspec_geom->esmfregridderparam

Called by

proc~~new_fieldspec_geom~~CalledByGraph proc~new_fieldspec_geom new_FieldSpec_geom interface~fieldspec~2 FieldSpec interface~fieldspec~2->proc~new_fieldspec_geom

Source Code

   function new_FieldSpec_geom(unusable, geom, vertical_grid, vertical_dim_spec, typekind, ungridded_dims, &
        standard_name, long_name, units, &
        attributes, regrid_param, default_value) result(field_spec)
      type(FieldSpec) :: field_spec

      class(KeywordEnforcer), optional, intent(in) :: unusable
      type(ESMF_Geom), optional, intent(in) :: geom
      class(VerticalGrid), optional, intent(in) :: vertical_grid
      type(VerticalDimSpec), intent(in) :: vertical_dim_spec
      type(ESMF_Typekind_Flag), intent(in) :: typekind
      type(UngriddedDims), intent(in) :: ungridded_dims
      character(*), optional, intent(in) :: standard_name
      character(*), optional, intent(in) :: units
      character(*), optional, intent(in) :: long_name
      type(StringVector), optional, intent(in) :: attributes
      type(EsmfRegridderParam), optional, intent(in) :: regrid_param

      ! optional args last
      real, optional, intent(in) :: default_value

      integer :: status

      if (present(geom)) field_spec%geom = geom
      if (present(vertical_grid)) field_spec%vertical_grid = vertical_grid
      field_spec%vertical_dim_spec = vertical_dim_spec
      field_spec%typekind = typekind
      field_spec%ungridded_dims = ungridded_dims

      if (present(standard_name)) field_spec%standard_name = standard_name
      if (present(long_name)) field_spec%long_name = long_name
      if (present(units)) field_spec%units = units
      if (present(attributes)) field_spec%attributes = attributes

      ! regrid_param
      field_spec%regrid_param = EsmfRegridderParam() ! use default regrid method
      if (present(regrid_param)) field_spec%regrid_param = regrid_param

      if (present(default_value)) field_spec%default_value = default_value

   end function new_FieldSpec_geom