geos Program

Uses

  • program~~geos~~UsesGraph program~geos geos ESMF ESMF program~geos->ESMF module~mapl3 mapl3 program~geos->module~mapl3 module~generic3g Generic3g module~mapl3->module~generic3g module~mapl3g_cap mapl3g_Cap module~mapl3->module~mapl3g_cap module~mapl3g_maplframework mapl3g_MaplFramework module~mapl3->module~mapl3g_maplframework module~mapl_errorhandling mapl_ErrorHandling module~mapl3->module~mapl_errorhandling mapl3g_GenericPhases mapl3g_GenericPhases module~generic3g->mapl3g_GenericPhases module~mapl3g_componentdriver mapl3g_ComponentDriver module~generic3g->module~mapl3g_componentdriver module~mapl3g_esmf_hconfigutilities mapl3g_ESMF_HConfigUtilities module~generic3g->module~mapl3g_esmf_hconfigutilities module~mapl3g_esmf_interfaces mapl3g_ESMF_Interfaces module~generic3g->module~mapl3g_esmf_interfaces module~mapl3g_generic mapl3g_Generic module~generic3g->module~mapl3g_generic module~mapl3g_genericgridcomp mapl3g_GenericGridComp module~generic3g->module~mapl3g_genericgridcomp module~mapl3g_griddedcomponentdriver mapl3g_GriddedComponentDriver module~generic3g->module~mapl3g_griddedcomponentdriver module~mapl3g_outermetacomponent mapl3g_OuterMetaComponent module~generic3g->module~mapl3g_outermetacomponent module~mapl3g_output_info mapl3g_output_info module~generic3g->module~mapl3g_output_info module~mapl3g_usersetservices mapl3g_UserSetServices module~generic3g->module~mapl3g_usersetservices module~mapl3g_verticaldimspec mapl3g_VerticalDimSpec module~generic3g->module~mapl3g_verticaldimspec module~mapl3g_verticalgrid mapl3g_VerticalGrid module~generic3g->module~mapl3g_verticalgrid module~mapl3g_cap->ESMF module~mapl3g_cap->module~generic3g module~mapl3g_cap->module~mapl_errorhandling module~mapl3g_cap->mapl3g_GenericPhases module~mapl3g_capgridcomp mapl3g_CapGridComp module~mapl3g_cap->module~mapl3g_capgridcomp module~mapl3g_multistate mapl3g_MultiState module~mapl3g_cap->module~mapl3g_multistate module~mapl_keywordenforcermod mapl_KeywordEnforcerMod module~mapl3g_cap->module~mapl_keywordenforcermod module~mapl_timestringconversion MAPL_TimeStringConversion module~mapl3g_cap->module~mapl_timestringconversion module~mapl3g_maplframework->ESMF module~mapl3g_maplframework->module~mapl_errorhandling module~mapl3g_maplframework->module~mapl_keywordenforcermod module~mapl_profiler mapl_Profiler module~mapl3g_maplframework->module~mapl_profiler module~pfio_abstractdirectoryservicemod pFIO_AbstractDirectoryServiceMod module~mapl3g_maplframework->module~pfio_abstractdirectoryservicemod module~pfio_clientmanagermod pFIO_ClientManagerMod module~mapl3g_maplframework->module~pfio_clientmanagermod module~pfio_clientthreadmod pFIO_ClientThreadMod module~mapl3g_maplframework->module~pfio_clientthreadmod module~pfio_directoryservicemod pFIO_DirectoryServiceMod module~mapl3g_maplframework->module~pfio_directoryservicemod module~pfio_mpiservermod pFIO_MpiServerMod module~mapl3g_maplframework->module~pfio_mpiservermod module~pflogger pflogger module~mapl3g_maplframework->module~pflogger mpi mpi module~mapl3g_maplframework->mpi module~mapl_throwmod MAPL_ThrowMod module~mapl_errorhandling->module~mapl_throwmod module~mapl_errorhandling->mpi

Calls

program~~geos~~CallsGraph program~geos geos mapl_initialize mapl_initialize program~geos->mapl_initialize proc~mapl_abort MAPL_abort program~geos->proc~mapl_abort proc~mapl_finalize mapl_finalize program~geos->proc~mapl_finalize proc~mapl_verify MAPL_Verify program~geos->proc~mapl_verify proc~run_geos run_geos program~geos->proc~run_geos mpi_abort mpi_abort proc~mapl_abort->mpi_abort proc~mapl_finalize->proc~mapl_verify none~finalize~12 MaplFramework%finalize proc~mapl_finalize->none~finalize~12 proc~mapl_return MAPL_Return proc~mapl_finalize->proc~mapl_return proc~mapl_throw_exception MAPL_throw_exception proc~mapl_verify->proc~mapl_throw_exception proc~run_geos->proc~mapl_verify ESMF_HConfigDestroy ESMF_HConfigDestroy proc~run_geos->ESMF_HConfigDestroy esmf_hconfigcreateat esmf_hconfigcreateat proc~run_geos->esmf_hconfigcreateat esmf_hconfigisdefined esmf_hconfigisdefined proc~run_geos->esmf_hconfigisdefined interface~mapl_assert MAPL_Assert proc~run_geos->interface~mapl_assert proc~run_geos->proc~mapl_return proc~mapl_run_driver MAPL_run_driver proc~run_geos->proc~mapl_run_driver

Variables

Type Attributes Name Initial
integer :: status
logical :: is_model_pet
type(ESMF_GridComp), allocatable :: servers(:)
type(ESMF_HConfig) :: hconfig

Subroutines

subroutine run_geos(hconfig, is_model_pet, servers, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_HConfig), intent(inout) :: hconfig
logical, intent(in) :: is_model_pet
type(ESMF_GridComp), intent(in), optional :: servers(:)
integer, intent(out), optional :: rc

Source Code

program geos
   use mapl3
   use esmf
   implicit none

   integer :: status
   type(ESMF_HConfig) :: hconfig
   logical :: is_model_pet
   type(ESMF_GridComp), allocatable :: servers(:)

   call MAPL_Initialize(hconfig, is_model_pet=is_model_pet, servers=servers, _RC)
   call run_geos(hconfig, is_model_pet=is_model_pet, servers=servers, _RC)
   call MAPL_Finalize(_RC)

contains

#undef I_AM_MAIN
#include "MAPL_Generic.h"

   subroutine run_geos(hconfig, is_model_pet, servers, rc)
      type(ESMF_HConfig), intent(inout) :: hconfig
      logical, intent(in) :: is_model_pet
      type(ESMF_GridComp), optional, intent(in) :: servers(:)
      integer, optional, intent(out) :: rc

      logical :: has_cap_hconfig
      type(ESMF_HConfig) :: cap_hconfig
      integer :: status

      has_cap_hconfig = ESMF_HConfigIsDefined(hconfig, keystring='cap', _RC)
      _ASSERT(has_cap_hconfig, 'No cap section found in configuration file')
      cap_hconfig = ESMF_HConfigCreateAt(hconfig, keystring='cap', _RC)

      call MAPL_run_driver(cap_hconfig, is_model_pet=is_model_pet, servers=servers, _RC)
      call ESMF_HConfigDestroy(cap_hconfig, _RC)

      _RETURN(_SUCCESS)
   end subroutine run_geos

end program geos