my_run Subroutine

private subroutine my_run(gcomp, importState, exportState, parentclock, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_GridComp) :: gcomp
type(ESMF_State) :: importState
type(ESMF_State) :: exportState
type(ESMF_Clock) :: parentclock
integer, intent(out) :: rc

Calls

proc~~my_run~~CallsGraph proc~my_run my_run proc~esmf_cplcomprun ESMF_CplCompRun proc~my_run->proc~esmf_cplcomprun proc~esmf_gridcomprun ESMF_GridCompRun proc~my_run->proc~esmf_gridcomprun proc~esmf_logwrite ESMF_LogWrite proc~my_run->proc~esmf_logwrite proc~esmf_compexecute ESMF_CompExecute proc~esmf_cplcomprun->proc~esmf_compexecute proc~esmf_compisdualconnected ESMF_CompIsDualConnected proc~esmf_cplcomprun->proc~esmf_compisdualconnected proc~esmf_cplcompgetinit ESMF_CplCompGetInit proc~esmf_cplcomprun->proc~esmf_cplcompgetinit proc~esmf_imerr ESMF_IMErr proc~esmf_cplcomprun->proc~esmf_imerr proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_cplcomprun->proc~esmf_logfounderror proc~esmf_logseterror ESMF_LogSetError proc~esmf_cplcomprun->proc~esmf_logseterror proc~esmf_gridcomprun->proc~esmf_compexecute proc~esmf_gridcomprun->proc~esmf_compisdualconnected proc~esmf_gridcompgetinit ESMF_GridCompGetInit proc~esmf_gridcomprun->proc~esmf_gridcompgetinit proc~esmf_gridcomprun->proc~esmf_imerr proc~esmf_gridcomprun->proc~esmf_logfounderror proc~esmf_gridcomprun->proc~esmf_logseterror c_esmc_vmwtime c_esmc_vmwtime proc~esmf_logwrite->c_esmc_vmwtime proc~esmf_logclose ESMF_LogClose proc~esmf_logwrite->proc~esmf_logclose proc~esmf_logflush ESMF_LogFlush proc~esmf_logwrite->proc~esmf_logflush proc~esmf_logopenfile ESMF_LogOpenFile proc~esmf_logwrite->proc~esmf_logopenfile proc~esmf_utiliounitflush ESMF_UtilIOUnitFlush proc~esmf_logwrite->proc~esmf_utiliounitflush proc~esmf_utilstring2array ESMF_UtilString2Array proc~esmf_logwrite->proc~esmf_utilstring2array proc~esmf_compexecute->proc~esmf_imerr proc~esmf_compexecute->proc~esmf_logfounderror proc~esmf_compexecute->proc~esmf_logseterror c_esmc_compwait c_esmc_compwait proc~esmf_compexecute->c_esmc_compwait c_esmc_ftablecallentrypointvm c_esmc_ftablecallentrypointvm proc~esmf_compexecute->c_esmc_ftablecallentrypointvm c_esmc_ftablesetstateargs c_esmc_ftablesetstateargs proc~esmf_compexecute->c_esmc_ftablesetstateargs proc~esmf_basegetstatus ESMF_BaseGetStatus proc~esmf_compexecute->proc~esmf_basegetstatus proc~esmf_clocksetthis ESMF_ClockSetThis proc~esmf_compexecute->proc~esmf_clocksetthis proc~esmf_compclassgetinit ESMF_CompClassGetInit proc~esmf_compexecute->proc~esmf_compclassgetinit proc~esmf_vmbarrier ESMF_VMBarrier proc~esmf_compexecute->proc~esmf_vmbarrier proc~esmf_vmgetcurrent ESMF_VMGetCurrent proc~esmf_compexecute->proc~esmf_vmgetcurrent proc~esmf_vmwtime ESMF_VMWtime proc~esmf_compexecute->proc~esmf_vmwtime proc~esmf_compisdualconnected->proc~esmf_imerr proc~esmf_compisdualconnected->proc~esmf_logfounderror proc~esmf_compisdualconnected->proc~esmf_logseterror proc~esmf_compisdualconnected->proc~esmf_basegetstatus proc~esmf_compisdualconnected->proc~esmf_compclassgetinit proc~esmf_imerr->proc~esmf_logfounderror proc~esmf_initcheckdeep ESMF_InitCheckDeep proc~esmf_imerr->proc~esmf_initcheckdeep proc~esmf_logclose->proc~esmf_logflush proc~esmf_logflush->proc~esmf_utiliounitflush proc~esmf_utilarray2string ESMF_UtilArray2String proc~esmf_logflush->proc~esmf_utilarray2string proc~esmf_logfounderror->proc~esmf_logwrite esmf_breakpoint esmf_breakpoint proc~esmf_logfounderror->esmf_breakpoint proc~esmf_logrc2msg ESMF_LogRc2Msg proc~esmf_logfounderror->proc~esmf_logrc2msg proc~esmf_logopenfile->proc~esmf_utiliounitflush proc~esmf_utiliounitget ESMF_UtilIOUnitGet proc~esmf_logopenfile->proc~esmf_utiliounitget proc~esmf_logseterror->proc~esmf_logwrite proc~esmf_logseterror->esmf_breakpoint proc~esmf_logseterror->proc~esmf_logrc2msg

Source Code

    subroutine my_run(gcomp, importState, exportState, parentclock, rc)
      type(ESMF_GridComp) :: gcomp
      type(ESMF_State) :: importState
      type(ESMF_State) :: exportState
      type(ESMF_Clock) :: parentclock
      integer, intent(out) :: rc

     
      call ESMF_LogWrite("Parent Gridded Component Run routine called", ESMF_LOGMSG_INFO)

      ! Now run the subcomponents
      call ESMF_GridCompRun(comp1Grid, importState=G1imp, &
        exportState=G1exp, clock=parentclock, rc=rc)
      call ESMF_CplCompRun(compCoupler, importState=G1exp, &
        exportState=G2imp, clock=parentclock, rc=rc)
      call ESMF_GridCompRun(comp2Grid, importState=G2imp, &
        exportState=G2exp, clock=parentclock, rc=rc)


      call ESMF_LogWrite("Parent Component Run finished", ESMF_LOGMSG_INFO)
      rc=ESMF_SUCCESS

    end subroutine my_run