mk_field_common Function

public function mk_field_common(tk, name, ungriddedLBound, ungriddedUBound, rc) result(field)

Arguments

Type IntentOptional Attributes Name
type(ESMF_TypeKind_Flag), intent(in) :: tk
character(len=*), intent(in) :: name
integer, intent(in), optional :: ungriddedLBound(:)
integer, intent(in), optional :: ungriddedUBound(:)
integer, intent(out), optional :: rc

Return Value type(ESMF_Field)


Calls

proc~~mk_field_common~~CallsGraph proc~mk_field_common mk_field_common esmf_fieldcreate esmf_fieldcreate proc~mk_field_common->esmf_fieldcreate proc~mapl_return MAPL_Return proc~mk_field_common->proc~mapl_return proc~mapl_verify MAPL_Verify proc~mk_field_common->proc~mapl_verify proc~mk_grid mk_grid proc~mk_field_common->proc~mk_grid at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception proc~mapl_verify->proc~mapl_throw_exception proc~mk_grid->proc~mapl_return proc~mk_grid->proc~mapl_verify ESMF_GridCreateNoPeriDim ESMF_GridCreateNoPeriDim proc~mk_grid->ESMF_GridCreateNoPeriDim

Called by

proc~~mk_field_common~~CalledByGraph proc~mk_field_common mk_field_common proc~mk_field_r4_2d mk_field_r4_2d proc~mk_field_r4_2d->proc~mk_field_common proc~mk_field_r4_ungrid mk_field_r4_ungrid proc~mk_field_r4_ungrid->proc~mk_field_common proc~mk_field_r8_2d mk_field_r8_2d proc~mk_field_r8_2d->proc~mk_field_common interface~mk_field mk_field interface~mk_field->proc~mk_field_r4_2d interface~mk_field->proc~mk_field_r8_2d proc~mk_r4ungrid_field mk_r4ungrid_field proc~mk_r4ungrid_field->proc~mk_field_r4_ungrid proc~set_up_data~2 set_up_data proc~set_up_data~2->proc~mk_field_r4_ungrid proc~set_up_data~2->interface~mk_field proc~mk_r4field mk_r4field proc~mk_r4field->interface~mk_field proc~mk_r8field mk_r8field proc~mk_r8field->interface~mk_field proc~set_up_data set_up_data proc~set_up_data->interface~mk_field proc~test_fieldconvertprec_r4r8 test_FieldConvertPrec_R4R8 proc~test_fieldconvertprec_r4r8->interface~mk_field proc~test_fieldaddr4 test_FieldAddR4 proc~test_fieldaddr4->proc~mk_r4field proc~test_fieldaddr8 test_FieldAddR8 proc~test_fieldaddr8->proc~mk_r8field

Source Code

   function mk_field_common(tk, name, ungriddedLBound, ungriddedUBound, rc) result(field)
      type(ESMF_TypeKind_Flag), intent(in) :: tk
      character(len=*), intent(in) :: name
      integer, optional, intent(in) :: ungriddedLBound(:)
      integer, optional, intent(in) :: ungriddedUBound(:)
      integer, optional, intent(out) :: rc
      character(len=*), parameter :: GRID_SUFFIX = '_grid'
      character(len=*), parameter :: FIELD_SUFFIX = '_field'

      type(ESMF_Field) :: field
      type(ESMF_Grid) :: grid
      integer :: status
      
      grid = mk_grid(grid_name = name // GRID_SUFFIX, _RC)
      field = ESMF_FieldCreate(grid, typekind = tk, name = name // FIELD_SUFFIX, ungriddedLBound = ungriddedLBound, ungriddedUBound = ungriddedUBound, _RC)

      _RETURN(_SUCCESS)
   end function mk_field_common