f_esmf_gridcomprun Subroutine

subroutine f_esmf_gridcomprun(comp, importState, exportState, clock, syncflag, phase, userRc, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_GridComp) :: comp
type(ESMF_State) :: importState
type(ESMF_State) :: exportState
type(ESMF_Clock) :: clock
type(ESMF_Sync_Flag) :: syncflag
integer :: phase
integer :: userRc
integer :: rc

Source Code

subroutine f_esmf_gridcomprun(comp, importState, exportState, clock, &
  syncflag, phase, userRc, rc)
  use ESMF_UtilTypesMod      ! ESMF utility types
  use ESMF_BaseMod           ! ESMF base class
  use ESMF_ClockMod
  use ESMF_ClockTypeMod
  use ESMF_StateMod
  use ESMF_CompMod
  use ESMF_GridCompMod
  use ESMF_InitMacrosMod
  
  implicit none

  type(ESMF_GridComp)   :: comp
  type(ESMF_State)      :: importState
  type(ESMF_State)      :: exportState
  type(ESMF_Clock)      :: clock
  type(ESMF_Sync_Flag)  :: syncflag
  integer               :: phase
  integer               :: userRc
  integer               :: rc

  type(ESMF_Clock)   :: local_clock
  type(ESMF_Pointer) :: this

  ! Initialize return code; assume routine not implemented
  rc = ESMF_RC_NOT_IMPL

  ! Construct a local copy of the incoming clock with initializers
  call ESMF_ClockGetThis(clock, this, rc=rc)
  call ESMF_ClockSetThis(local_clock, this, rc=rc)
  call ESMF_ClockSetInitCreated(local_clock)

  call ESMF_GridCompRun(comp, importState=importState, &
    exportState=exportState, clock=local_clock, &
    syncflag=syncflag, phase=phase, userRc=userRc, rc=rc)
end subroutine f_esmf_gridcomprun