run_geos Subroutine

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

Calls

proc~~run_geos~~CallsGraph proc~run_geos run_geos 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~mapl_return MAPL_Return proc~run_geos->proc~mapl_return proc~mapl_run_driver MAPL_run_driver proc~run_geos->proc~mapl_run_driver proc~mapl_verify MAPL_Verify proc~run_geos->proc~mapl_verify 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_run_driver->esmf_hconfigcreateat proc~mapl_run_driver->proc~mapl_return proc~mapl_run_driver->proc~mapl_verify ESMF_CalendarSetDefault ESMF_CalendarSetDefault proc~mapl_run_driver->ESMF_CalendarSetDefault ESMF_ClockCreate ESMF_ClockCreate proc~mapl_run_driver->ESMF_ClockCreate ESMF_ClockGet ESMF_ClockGet proc~mapl_run_driver->ESMF_ClockGet ESMF_TimePrint ESMF_TimePrint proc~mapl_run_driver->ESMF_TimePrint ESMF_TimeSet ESMF_TimeSet proc~mapl_run_driver->ESMF_TimeSet ESMF_VMGet ESMF_VMGet proc~mapl_run_driver->ESMF_VMGet ESMF_VMGetCurrent ESMF_VMGetCurrent proc~mapl_run_driver->ESMF_VMGetCurrent esmf_gridcompsetservices esmf_gridcompsetservices proc~mapl_run_driver->esmf_gridcompsetservices esmf_hconfigasstring esmf_hconfigasstring proc~mapl_run_driver->esmf_hconfigasstring interface~create_grid_comp create_grid_comp proc~mapl_run_driver->interface~create_grid_comp interface~user_setservices user_setservices proc~mapl_run_driver->interface~user_setservices mpi_allgather mpi_allgather proc~mapl_run_driver->mpi_allgather none~clock_advance~2 GriddedComponentDriver%clock_advance proc~mapl_run_driver->none~clock_advance~2 none~finalize~9 GriddedComponentDriver%finalize proc~mapl_run_driver->none~finalize~9 none~get_clock GriddedComponentDriver%get_clock proc~mapl_run_driver->none~get_clock none~read_restart~2 GriddedComponentDriver%read_restart proc~mapl_run_driver->none~read_restart~2 none~run~12 GriddedComponentDriver%run proc~mapl_run_driver->none~run~12 none~write_restart~2 GriddedComponentDriver%write_restart proc~mapl_run_driver->none~write_restart~2 proc~hconfig_to_esmf_timeinterval hconfig_to_esmf_timeinterval proc~mapl_run_driver->proc~hconfig_to_esmf_timeinterval proc~initialize_phases initialize_phases proc~mapl_run_driver->proc~initialize_phases proc~mapl_verify->proc~mapl_throw_exception

Called by

proc~~run_geos~~CalledByGraph proc~run_geos run_geos program~geos geos program~geos->proc~run_geos

Source Code

   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