mk_field_common Function

public function mk_field_common(tk, regDecomp, minIndex, maxIndex, indexflag, name, ungriddedLBound, ungriddedUBound, rc) result(field)

Arguments

Type IntentOptional Attributes Name
type(ESMF_TypeKind_Flag), intent(in) :: tk
integer, intent(in), dimension(:) :: regDecomp
integer, intent(in), dimension(:) :: minIndex
integer, intent(in), dimension(:) :: maxIndex
type(ESMF_Index_Flag), intent(in) :: indexflag
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 field_utils_setup::mk_field_common esmf_fieldcreate esmf_fieldcreate proc~mk_field_common->esmf_fieldcreate proc~mapl_return MAPL_ErrorHandlingMod::MAPL_Return proc~mk_field_common->proc~mapl_return proc~mapl_verify MAPL_ErrorHandlingMod::MAPL_Verify proc~mk_field_common->proc~mapl_verify proc~mk_grid field_utils_setup::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_ThrowMod::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::ESMF_GridCreateNoPeriDim proc~mk_grid->ESMF_GridCreateNoPeriDim

Called by

proc~~mk_field_common~~CalledByGraph proc~mk_field_common field_utils_setup::mk_field_common proc~mk_field_r4_2d field_utils_setup::mk_field_r4_2d proc~mk_field_r4_2d->proc~mk_field_common proc~mk_field_r4_ungrid field_utils_setup::mk_field_r4_ungrid proc~mk_field_r4_ungrid->proc~mk_field_common proc~mk_field_r8_2d field_utils_setup::mk_field_r8_2d proc~mk_field_r8_2d->proc~mk_field_common interface~mk_field field_utils_setup::mk_field interface~mk_field->proc~mk_field_r4_2d interface~mk_field->proc~mk_field_r8_2d proc~set_up_data~2 Test_FieldBLAS::set_up_data proc~set_up_data~2->proc~mk_field_r4_ungrid proc~set_up_data~2->interface~mk_field proc~set_up_data Test_FieldArithmetic::set_up_data proc~set_up_data->interface~mk_field proc~test_fieldconvertprec_r4r8 Test_FieldBLAS::test_FieldConvertPrec_R4R8 proc~test_fieldconvertprec_r4r8->interface~mk_field

Source Code

   function mk_field_common(tk, regDecomp, minIndex, maxIndex, indexflag, name, ungriddedLBound, ungriddedUBound, rc) result(field)
      type(ESMF_TypeKind_Flag), intent(in) :: tk
      integer, dimension(:), intent(in) :: regDecomp
      integer, dimension(:), intent(in) :: minIndex
      integer, dimension(:), intent(in) :: maxIndex
      type(ESMF_Index_Flag), intent(in) :: indexflag
      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(regDecomp=regDecomp, minIndex=minIndex, maxIndex=maxIndex, indexflag = indexflag, 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