make_gridded_dims.F90 Source File


This file depends on

sourcefile~~make_gridded_dims.f90~~EfferentGraph sourcefile~make_gridded_dims.f90 make_gridded_dims.F90 sourcefile~constants.f90 Constants.F90 sourcefile~make_gridded_dims.f90->sourcefile~constants.f90 sourcefile~errorhandling.f90 ErrorHandling.F90 sourcefile~make_gridded_dims.f90->sourcefile~errorhandling.f90 sourcefile~geomspec.f90 GeomSpec.F90 sourcefile~make_gridded_dims.f90->sourcefile~geomspec.f90 sourcefile~keywordenforcer.f90 KeywordEnforcer.F90 sourcefile~make_gridded_dims.f90->sourcefile~keywordenforcer.f90 sourcefile~lataxis.f90 LatAxis.F90 sourcefile~make_gridded_dims.f90->sourcefile~lataxis.f90 sourcefile~latlondecomposition.f90 LatLonDecomposition.F90 sourcefile~make_gridded_dims.f90->sourcefile~latlondecomposition.f90 sourcefile~latlongeomfactory.f90 LatLonGeomFactory.F90 sourcefile~make_gridded_dims.f90->sourcefile~latlongeomfactory.f90 sourcefile~latlongeomspec.f90 LatLonGeomSpec.F90 sourcefile~make_gridded_dims.f90->sourcefile~latlongeomspec.f90 sourcefile~lonaxis.f90 LonAxis.F90 sourcefile~make_gridded_dims.f90->sourcefile~lonaxis.f90 sourcefile~mapl_minmax.f90 MAPL_MinMax.F90 sourcefile~make_gridded_dims.f90->sourcefile~mapl_minmax.f90 sourcefile~pfio.f90 pFIO.F90 sourcefile~make_gridded_dims.f90->sourcefile~pfio.f90

Source Code

#include "MAPL_ErrLog.h"
submodule (mapl3g_LatLonGeomFactory) make_gridded_dims_smod
   use mapl3g_GeomSpec
   use mapl3g_LonAxis
   use mapl3g_LatAxis
   use mapl3g_LatLonDecomposition
   use mapl3g_LatLonGeomSpec
   use mapl_MinMaxMod
   use mapl_ErrorHandlingMod
   use mapl_Constants
   use pFIO
   use gFTL2_StringVector
   use esmf
   use mapl_KeywordEnforcer, only: KE => KeywordEnforcer
   implicit none (type, external)


contains

   module function make_gridded_dims(this, geom_spec, rc) result(gridded_dims)
      type(StringVector) :: gridded_dims
      class(LatLonGeomFactory), intent(in) :: this
      class(GeomSpec), intent(in) :: geom_spec
      integer, optional, intent(out) :: rc

      gridded_dims = StringVector()
      select type (geom_spec)
      type is (LatLonGeomSpec)
         call gridded_dims%push_back('lon')
         call gridded_dims%push_back('lat')
      class default
         _FAIL('geom_spec is not of dynamic type LatLonGeomSpec.')
      end select

      _RETURN(_SUCCESS)
   end function make_gridded_dims


end submodule make_gridded_dims_smod