From 2804212aee24b08465514e348cfb162015a62dee Mon Sep 17 00:00:00 2001 From: Gerhard Theurich Date: Thu, 18 Jan 2024 14:23:08 -0800 Subject: [PATCH] Implement NUOPC Verbosity bits that allow activation of StateLog() on Import- and ExportState on enter/exit of I/R/F methods. --- .../doc/NUOPC_ConnectorComponent_metadata.tex | 8 +- .../doc/NUOPC_DriverComponent_metadata.tex | 6 +- .../doc/NUOPC_MediatorComponent_metadata.tex | 10 +- .../doc/NUOPC_ModelComponent_metadata.tex | 10 +- src/addon/NUOPC/src/NUOPC_Base.F90 | 34 ++++++- src/addon/NUOPC/src/NUOPC_Comp.F90 | 14 +-- src/addon/NUOPC/src/NUOPC_Connector.F90 | 56 +++++------ src/addon/NUOPC/src/NUOPC_Driver.F90 | 99 ++++++++++--------- src/addon/NUOPC/src/NUOPC_ModelBase.F90 | 44 ++++----- 9 files changed, 159 insertions(+), 122 deletions(-) diff --git a/src/addon/NUOPC/doc/NUOPC_ConnectorComponent_metadata.tex b/src/addon/NUOPC/doc/NUOPC_ConnectorComponent_metadata.tex index 7c771d4392..0257cb681c 100644 --- a/src/addon/NUOPC/doc/NUOPC_ConnectorComponent_metadata.tex +++ b/src/addon/NUOPC/doc/NUOPC_ConnectorComponent_metadata.tex @@ -13,6 +13,8 @@ {\bf bit 1}: Intro/Extro with memory info.\newline {\bf bit 2}: Intro/Extro with garbage collection info.\newline {\bf bit 3}: Intro/Extro with local VM info.\newline + {\bf bit 4}: Intro/Extro with ImportState info.\newline + {\bf bit 5}: Intro/Extro with ExportState info.\newline {\bf bit 8}: Log FieldTransferPolicy.\newline {\bf bit 9}: Log bond level info.\newline {\bf bit 10}: Log CplList construction.\newline @@ -23,9 +25,9 @@ {\bf bit 15}: Log info about RouteHandle release. & 0, 1, 2, ... \newline "off" = 0 (default), \newline - "low": Some verbosity. \newline - "high": More verbosity. \newline - "max": All lower 16 bits set.\\ \hline + "low": some verbosity, bits: 0, 13\newline + "high": more verbosity, bits: 0, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15\newline + "max": all lower 16 bits\\ \hline {\tt Profiling} & String value, converted into an integer, and interpreted as a bit field. The lower 16 bits (0-15) are reserved to control profiling of the generic component implementation. Higher bits are available for user level profiling control. \newline {\bf bit 0}: Top level profiling of {\em Initialize} phases.\newline {\bf bit 1}: Specialization point profiling of {\em Initialize} phases.\newline diff --git a/src/addon/NUOPC/doc/NUOPC_DriverComponent_metadata.tex b/src/addon/NUOPC/doc/NUOPC_DriverComponent_metadata.tex index 622fbade89..dd1d4f8209 100644 --- a/src/addon/NUOPC/doc/NUOPC_DriverComponent_metadata.tex +++ b/src/addon/NUOPC/doc/NUOPC_DriverComponent_metadata.tex @@ -17,7 +17,9 @@ {\bf bit 1}: Intro/Extro with memory info.\newline {\bf bit 2}: Intro/Extro with garbage collection info.\newline {\bf bit 3}: Intro/Extro with local VM info.\newline - {\bf bit 4}: Log hierarchy protocol details.\newline + {\bf bit 4}: Intro/Extro with ImportState info.\newline + {\bf bit 5}: Intro/Extro with ExportState info.\newline + {\bf bit 6}: Log hierarchy protocol details.\newline {\bf bit 8}: Log Initialize phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 9}: Log Run phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 10}: Log Finalize phase with $>>>$, $<<<$, and currTime.\newline @@ -28,7 +30,7 @@ & 0, 1, 2, ... \newline "off" = 0 (default), \newline "low": some verbosity, bits: 0, 8, 9, 10, 13\newline - "high": more verbosity, bits: 0, 4, 8, 9, 10, 11, 12, 13, 14\newline + "high": more verbosity, bits: 0, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14\newline "max": all lower 16 bits\\ \hline {\tt Profiling} & String value, converted into an integer, and interpreted as a bit field. The lower 16 bits (0-15) are reserved to control profiling of the generic component implementation. Higher bits are available for user level profiling control. \newline {\bf bit 0}: Top level profiling of {\em Initialize} phases.\newline diff --git a/src/addon/NUOPC/doc/NUOPC_MediatorComponent_metadata.tex b/src/addon/NUOPC/doc/NUOPC_MediatorComponent_metadata.tex index a1beebd414..b8fbc024b6 100644 --- a/src/addon/NUOPC/doc/NUOPC_MediatorComponent_metadata.tex +++ b/src/addon/NUOPC/doc/NUOPC_MediatorComponent_metadata.tex @@ -17,17 +17,17 @@ {\bf bit 1}: Intro/Extro with memory info.\newline {\bf bit 2}: Intro/Extro with garbage collection info.\newline {\bf bit 3}: Intro/Extro with local VM info.\newline + {\bf bit 4}: Intro/Extro with ImportState info.\newline + {\bf bit 5}: Intro/Extro with ExportState info.\newline {\bf bit 8}: Log Initialize phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 9}: Log Run phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 10}: Log Finalize phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 11}: Log info about data dependency during initialize resolution.\newline - {\bf bit 12}: Log run sequence execution.\newline - {\bf bit 13}: Log Component creation.\newline - {\bf bit 14}: Log State creation. + {\bf bit 12}: Log run sequence execution. & 0, 1, 2, ... \newline "off" = 0 (default), \newline - "low": some verbosity, \newline - "high": more verbosity, \newline + "low": some verbosity, bits: 0, 8, 9, 10, 13\newline + "high": more verbosity, bits: 0, 4, 5, 8, 9, 10, 11, 12, 13, 14\newline "max": all lower 16 bits\\ \hline {\tt Profiling} & String value, converted into an integer, and interpreted as a bit field. The lower 16 bits (0-15) are reserved to control profiling of the generic component implementation. Higher bits are available for user level profiling control. \newline {\bf bit 0}: Top level profiling of {\em Initialize} phases.\newline diff --git a/src/addon/NUOPC/doc/NUOPC_ModelComponent_metadata.tex b/src/addon/NUOPC/doc/NUOPC_ModelComponent_metadata.tex index f5a087065d..50fd3d9629 100644 --- a/src/addon/NUOPC/doc/NUOPC_ModelComponent_metadata.tex +++ b/src/addon/NUOPC/doc/NUOPC_ModelComponent_metadata.tex @@ -17,17 +17,17 @@ {\bf bit 1}: Intro/Extro with memory info.\newline {\bf bit 2}: Intro/Extro with garbage collection info.\newline {\bf bit 3}: Intro/Extro with local VM info.\newline + {\bf bit 4}: Intro/Extro with ImportState info.\newline + {\bf bit 5}: Intro/Extro with ExportState info.\newline {\bf bit 8}: Log Initialize phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 9}: Log Run phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 10}: Log Finalize phase with $>>>$, $<<<$, and currTime.\newline {\bf bit 11}: Log info about data dependency during initialize resolution.\newline - {\bf bit 12}: Log run sequence execution.\newline - {\bf bit 13}: Log Component creation.\newline - {\bf bit 14}: Log State creation. + {\bf bit 12}: Log run sequence execution. & 0, 1, 2, ... \newline "off" = 0 (default), \newline - "low": some verbosity, \newline - "high": more verbosity, \newline + "low": some verbosity, bits: 0, 8, 9, 10, 13\newline + "high": more verbosity, bits: 0, 4, 5, 8, 9, 10, 11, 12, 13, 14\newline "max": all lower 16 bits\\ \hline {\tt Profiling} & String value, converted into an integer, and interpreted as a bit field. The lower 16 bits (0-15) are reserved to control profiling of the generic component implementation. Higher bits are available for user level profiling control. \newline {\bf bit 0}: Top level profiling of {\em Initialize} phases.\newline diff --git a/src/addon/NUOPC/src/NUOPC_Base.F90 b/src/addon/NUOPC/src/NUOPC_Base.F90 index ee4f27e8db..4fc0d752db 100644 --- a/src/addon/NUOPC/src/NUOPC_Base.F90 +++ b/src/addon/NUOPC/src/NUOPC_Base.F90 @@ -3172,11 +3172,12 @@ function NUOPC_IsUpdatedState(state, fieldName, count, rc) !BOPI ! !IROUTINE: NUOPC_LogIntro - Log entering a method ! !INTERFACE: - subroutine NUOPC_LogIntro(name, rName, verbosity, rc) + subroutine NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc) ! !ARGUMENTS: character(len=*), intent(in) :: name character(len=*), intent(in) :: rName integer, intent(in) :: verbosity + type(ESMF_State), intent(in) :: importState, exportState integer, intent(out) :: rc ! !DESCRIPTION: ! Write information into Log on entering a method, according to the verbosity @@ -3190,6 +3191,10 @@ subroutine NUOPC_LogIntro(name, rName, verbosity, rc) ! Routine name. ! \item[verbosity] ! Bit field corresponding to verbosity aspects. +! \item[importState] +! The importState of the component using this method. +! \item[exportState] +! The exportState of the component using this method. ! \item[rc] ! Return code; equals {\tt ESMF\_SUCCESS} if there are no errors. ! \end{description} @@ -3251,6 +3256,16 @@ subroutine NUOPC_LogIntro(name, rName, verbosity, rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out endif + if (btest(verbosity,4)) then + call ESMF_StateLog(importState, trim(name)//": "//rName//" intro:", rc=rc) + if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & + line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out + endif + if (btest(verbosity,5)) then + call ESMF_StateLog(exportState, trim(name)//": "//rName//" intro:", rc=rc) + if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & + line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out + endif ! return successfully rc = ESMF_SUCCESS end subroutine @@ -3260,11 +3275,12 @@ subroutine NUOPC_LogIntro(name, rName, verbosity, rc) !BOPI ! !IROUTINE: NUOPC_LogExtro - Log exiting a method ! !INTERFACE: - subroutine NUOPC_LogExtro(name, rName, verbosity, rc) + subroutine NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc) ! !ARGUMENTS: character(len=*), intent(in) :: name character(len=*), intent(in) :: rName integer, intent(in) :: verbosity + type(ESMF_State), intent(in) :: importState, exportState integer, intent(out) :: rc ! !DESCRIPTION: ! Write information into Log on exiting a method, according to the verbosity @@ -3278,6 +3294,10 @@ subroutine NUOPC_LogExtro(name, rName, verbosity, rc) ! Routine name. ! \item[verbosity] ! Bit field corresponding to verbosity aspects. +! \item[importState] +! The importState of the component using this method. +! \item[exportState] +! The exportState of the component using this method. ! \item[rc] ! Return code; equals {\tt ESMF\_SUCCESS} if there are no errors. ! \end{description} @@ -3286,6 +3306,16 @@ subroutine NUOPC_LogExtro(name, rName, verbosity, rc) !----------------------------------------------------------------------------- ! local variables integer :: indentCount + if (btest(verbosity,4)) then + call ESMF_StateLog(importState, trim(name)//": "//rName//" intro:", rc=rc) + if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & + line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out + endif + if (btest(verbosity,5)) then + call ESMF_StateLog(exportState, trim(name)//": "//rName//" intro:", rc=rc) + if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & + line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out + endif if (btest(verbosity,2)) then call ESMF_VMLogGarbageInfo(trim(name)//": "//rName//" extro:", rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & diff --git a/src/addon/NUOPC/src/NUOPC_Comp.F90 b/src/addon/NUOPC/src/NUOPC_Comp.F90 index 38cd0568d6..1848cc6f26 100644 --- a/src/addon/NUOPC/src/NUOPC_Comp.F90 +++ b/src/addon/NUOPC/src/NUOPC_Comp.F90 @@ -2994,16 +2994,16 @@ subroutine NUOPC_GridCompGet(comp, name, verbosity, profiling, diagnostic, rc) ! set component kind specific verbosity levels if (trim(valueString)=="Driver") then max = 65535 ! all 16 lower bits set - high = 32529 ! bits 0, 4, 8, 9, 10, 11, 12, 13, 14 - low = 9985 ! bits 0, 8, 9, 10, 13 + high = 32625 ! bits 0, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14 + low = 9985 ! bits 0, 8, 9, 10, 13 else if (trim(valueString)=="Model") then max = 65535 ! all 16 lower bits set - high = 32513 ! bits 0, 8, 9, 10, 11, 12, 13, 14 - low = 9985 ! bits 0, 8, 9, 10, 13 + high = 32561 ! bits 0, 4, 5, 8, 9, 10, 11, 12, 13, 14 + low = 9985 ! bits 0, 8, 9, 10, 13 else if (trim(valueString)=="Mediator") then max = 65535 ! all 16 lower bits set - high = 32513 ! bits 0, 8, 9, 10, 11, 12, 13, 14 - low = 9985 ! bits 0, 8, 9, 10, 13 + high = 32561 ! bits 0, 4, 5, 8, 9, 10, 11, 12, 13, 14 + low = 9985 ! bits 0, 8, 9, 10, 13 endif ! query the component for Verbosity call NUOPC_CompAttributeGet(comp, name="Verbosity", value=valueString, & @@ -3098,7 +3098,7 @@ subroutine NUOPC_CplCompGet(comp, name, verbosity, profiling, diagnostic, rc) verbosity = 0 ! set specific verbosity levels max = 65535 ! all 16 lower bits set - high = 65281 ! bits 0, 8, 9, 10, 11, 12, 13, 14, 15 + high = 65329 ! bits 0, 4, 5, 8, 9, 10, 11, 12, 13, 14, 15 low = 8193 ! bits 0, 13 ! query the component for Verbosity call NUOPC_CompAttributeGet(comp, name="Verbosity", value=valueString, & diff --git a/src/addon/NUOPC/src/NUOPC_Connector.F90 b/src/addon/NUOPC/src/NUOPC_Connector.F90 index d9b681c7a9..dfba0d0571 100644 --- a/src/addon/NUOPC/src/NUOPC_Connector.F90 +++ b/src/addon/NUOPC/src/NUOPC_Connector.F90 @@ -315,7 +315,7 @@ subroutine InitializeP0(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -400,7 +400,7 @@ subroutine InitializeP0(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -472,7 +472,7 @@ subroutine InitializeIPDv05p1(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -779,7 +779,7 @@ subroutine InitializeIPDv05p1(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1093,7 +1093,7 @@ subroutine InitializeIPDv05p2a(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1318,7 +1318,7 @@ subroutine InitializeIPDv05p2a(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1396,7 +1396,7 @@ subroutine InitializeIPDv05p2b(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1692,7 +1692,7 @@ subroutine InitializeIPDv05p2b(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1753,7 +1753,7 @@ subroutine InitializeIPDv03p1(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1831,7 +1831,7 @@ subroutine InitializeIPDv03p1(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1919,7 +1919,7 @@ subroutine InitializeIPDv05p3(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2584,7 +2584,7 @@ subroutine InitializeIPDv05p3(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2699,7 +2699,7 @@ subroutine InitializeIPDv05p4(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3701,7 +3701,7 @@ subroutine InitializeIPDv05p4(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3809,7 +3809,7 @@ subroutine InitializeIPDv05p5(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4548,7 +4548,7 @@ subroutine InitializeIPDv05p5(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4896,7 +4896,7 @@ subroutine InitializeIPDv05p6a(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4985,7 +4985,7 @@ subroutine InitializeIPDv05p6a(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -5080,7 +5080,7 @@ subroutine InitializeIPDv05p6b(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -5537,7 +5537,7 @@ subroutine InitializeIPDv05p6b(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6092,7 +6092,7 @@ subroutine InitializeIPDv00p2a(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6105,7 +6105,7 @@ subroutine InitializeIPDv00p2a(connector, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6164,7 +6164,7 @@ subroutine InitializeIPDv00p2b(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6174,7 +6174,7 @@ subroutine InitializeIPDv00p2b(connector, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6243,7 +6243,7 @@ subroutine Run(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6464,7 +6464,7 @@ subroutine Run(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6545,7 +6545,7 @@ subroutine Finalize(connector, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -6780,7 +6780,7 @@ subroutine Finalize(connector, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out diff --git a/src/addon/NUOPC/src/NUOPC_Driver.F90 b/src/addon/NUOPC/src/NUOPC_Driver.F90 index dba43b3157..8bf906154d 100644 --- a/src/addon/NUOPC/src/NUOPC_Driver.F90 +++ b/src/addon/NUOPC/src/NUOPC_Driver.F90 @@ -380,7 +380,7 @@ recursive subroutine InitializeP0(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -399,7 +399,7 @@ recursive subroutine InitializeP0(driver, importState, exportState, clock, rc) ! -> No explicit filtering of phaseLabels needed here. ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -459,7 +459,7 @@ recursive subroutine InitializeGeneric(driver, importState, exportState, clock, endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -513,7 +513,7 @@ recursive subroutine InitializeGeneric(driver, importState, exportState, clock, endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -574,7 +574,7 @@ recursive subroutine InitializeExternalAdvertise(driver, importState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -601,7 +601,7 @@ recursive subroutine InitializeExternalAdvertise(driver, importState, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -688,7 +688,7 @@ recursive subroutine InitializeIPDv02p1(driver, importState, exportState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1578,7 +1578,7 @@ recursive subroutine InitializeIPDv02p1(driver, importState, exportState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1892,7 +1892,7 @@ recursive subroutine InitializeIPDv02p3(driver, importState, exportState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2261,7 +2261,7 @@ recursive subroutine InitializeIPDv02p3(driver, importState, exportState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2332,7 +2332,7 @@ recursive subroutine InitializeIPDv02p5(driver, importState, exportState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2579,7 +2579,7 @@ recursive subroutine InitializeIPDv02p5(driver, importState, exportState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2644,7 +2644,7 @@ recursive subroutine InitializeIPDv02p5Data(driver, importState, exportState,& endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2768,7 +2768,8 @@ recursive subroutine InitializeIPDv02p5Data(driver, importState, exportState,& line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out endif - call loopDataDependentInitialize(driver, is%wrap%dataDepAllComplete, rc=rc) + call loopDataDependentInitialize(driver, importState, exportState, & + dataDepAllComplete=is%wrap%dataDepAllComplete, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) & return ! bail out @@ -2799,7 +2800,7 @@ recursive subroutine InitializeIPDv02p5Data(driver, importState, exportState,& return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3106,9 +3107,11 @@ recursive subroutine loopConnectorCompsS(driver, phaseString, execFlag, rc) !----------------------------------------------------------------------------- - recursive subroutine loopDataDependentInitialize(driver, dataDepAllComplete, rc) + recursive subroutine loopDataDependentInitialize(driver, & + importState, exportState, dataDepAllComplete, rc) ! resolve data dependencies type(ESMF_GridComp) :: driver + type(ESMF_State) :: importState, exportState logical, optional, intent(out) :: dataDepAllComplete integer, intent(out) :: rc @@ -3163,7 +3166,7 @@ recursive subroutine loopDataDependentInitialize(driver, dataDepAllComplete, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3432,7 +3435,7 @@ recursive subroutine loopDataDependentInitialize(driver, dataDepAllComplete, rc) enddo ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3500,7 +3503,7 @@ recursive subroutine routine_Run(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -3649,7 +3652,7 @@ recursive subroutine routine_Run(driver, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4036,7 +4039,7 @@ recursive subroutine Finalize(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4326,7 +4329,7 @@ recursive subroutine Finalize(driver, importState, exportState, clock, rc) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4396,7 +4399,7 @@ recursive subroutine FinalizeReset(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -4504,7 +4507,7 @@ recursive subroutine FinalizeReset(driver, importState, exportState, clock, rc) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7508,7 +7511,7 @@ recursive subroutine IInitAdvertise(driver, importState, exportState, clock, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7555,7 +7558,7 @@ recursive subroutine IInitAdvertise(driver, importState, exportState, clock, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7617,7 +7620,7 @@ recursive subroutine IInitAdvertiseFinish(driver, importState, exportState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7675,7 +7678,7 @@ recursive subroutine IInitAdvertiseFinish(driver, importState, exportState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7785,7 +7788,7 @@ recursive subroutine IInitModifyCplLists(driver, importState, exportState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -7829,7 +7832,7 @@ recursive subroutine IInitModifyCplLists(driver, importState, exportState, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & return ! bail out if (areServicesSet) then - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_CplCompGet(connector, name=connectorName, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & @@ -7857,7 +7860,7 @@ recursive subroutine IInitModifyCplLists(driver, importState, exportState, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & return ! bail out if (areServicesSet) then - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_CplCompGet(connector, name=connectorName, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & @@ -7914,7 +7917,7 @@ recursive subroutine IInitModifyCplLists(driver, importState, exportState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8031,7 +8034,7 @@ recursive subroutine modifyCplList(connector, state, appendString, & producerConnected, consumerConnected, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then write(msgString,*) trim(cplName)//& " connected:", connected, & " producerConnected:", producerConnected, & @@ -8149,7 +8152,7 @@ recursive subroutine IInitCheck(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8175,7 +8178,7 @@ recursive subroutine IInitCheck(driver, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & return ! bail out if (areServicesSet) then - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_CplCompGet(connector, name=connectorName, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & @@ -8202,7 +8205,7 @@ recursive subroutine IInitCheck(driver, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & return ! bail out if (areServicesSet) then - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_CplCompGet(connector, name=connectorName, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & @@ -8266,7 +8269,7 @@ recursive subroutine IInitCheck(driver, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8374,7 +8377,7 @@ recursive subroutine cleanupCplList(connector, state, rc) producerConnected, consumerConnected, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then write(msgString,*) trim(cplName)// & " in CplSet: ", trim(cplSetList(j)), & " connected:", connected, & @@ -8391,7 +8394,7 @@ recursive subroutine cleanupCplList(connector, state, rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME, rcToReturn=rc)) & return ! bail out - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then write(msgString,*) "- removing field: ", trim(fieldName), & " in CplSet: ", trim(cplSetList(j)) call ESMF_LogWrite(msgString, ESMF_LOGMSG_INFO, rc=rc) @@ -8476,7 +8479,7 @@ recursive subroutine checkConnections(state, rc) consumerConnected, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then write(msgString,*) trim(itemNameList(j))//& " connected:", connected, & " producerConnected:", producerConnected, & @@ -8636,7 +8639,7 @@ recursive subroutine IInitRealize(driver, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8646,7 +8649,7 @@ recursive subroutine IInitRealize(driver, importState, exportState, clock, rc) if (stateIsCreated) then ! - complete all the fields in the importState - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_LogWrite("Calling into completeAllFields() for importState", & ESMF_LOGMSG_INFO, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & @@ -8664,7 +8667,7 @@ recursive subroutine IInitRealize(driver, importState, exportState, clock, rc) if (stateIsCreated) then ! - complete all the fields in the exportState - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_LogWrite("Calling into completeAllFields() for exportState", & ESMF_LOGMSG_INFO, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & @@ -8677,7 +8680,7 @@ recursive subroutine IInitRealize(driver, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8734,7 +8737,7 @@ recursive subroutine completeAllFields(state, rc) if (trim(value)=="shared") then ! shared -> must complete the field here - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_LogWrite("- "//trim(itemNameList(i))// & ": shared --> don't know what to do!!!!!.", ESMF_LOGMSG_INFO, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & @@ -8743,7 +8746,7 @@ recursive subroutine completeAllFields(state, rc) endif else ! not shared -> must complete the field here - if (btest(verbosity,4)) then + if (btest(verbosity,6)) then call ESMF_LogWrite("- "//trim(itemNameList(i))// & ": not shared --> complete here.", ESMF_LOGMSG_INFO, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & @@ -8819,7 +8822,7 @@ recursive subroutine InternalInitializeComplete(driver, importState, & endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -8897,7 +8900,7 @@ recursive subroutine InternalInitializeComplete(driver, importState, & endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out diff --git a/src/addon/NUOPC/src/NUOPC_ModelBase.F90 b/src/addon/NUOPC/src/NUOPC_ModelBase.F90 index 7abcbbfe97..64110a1fa4 100644 --- a/src/addon/NUOPC/src/NUOPC_ModelBase.F90 +++ b/src/addon/NUOPC/src/NUOPC_ModelBase.F90 @@ -388,7 +388,7 @@ subroutine InitializeP0(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -577,7 +577,7 @@ subroutine InitializeP0(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -640,7 +640,7 @@ subroutine InitializeIPDvXp01(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -720,7 +720,7 @@ subroutine InitializeIPDvXp01(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -783,7 +783,7 @@ subroutine InitializeIPDvXp02(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -863,7 +863,7 @@ subroutine InitializeIPDvXp02(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -926,7 +926,7 @@ subroutine InitializeIPDvXp04(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1006,7 +1006,7 @@ subroutine InitializeIPDvXp04(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1069,7 +1069,7 @@ subroutine InitializeIPDvXp05(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1149,7 +1149,7 @@ subroutine InitializeIPDvXp05(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1212,7 +1212,7 @@ subroutine InitializeIPDvXp06(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1292,7 +1292,7 @@ subroutine InitializeIPDvXp06(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1366,7 +1366,7 @@ subroutine InitializeIPDvXp07(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1494,7 +1494,7 @@ subroutine InitializeIPDvXp07(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1562,7 +1562,7 @@ subroutine InitializeIPDvXp08(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1758,7 +1758,7 @@ subroutine InitializeIPDvXp08(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1824,7 +1824,7 @@ subroutine InitializeIPDv01p5(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -1960,7 +1960,7 @@ subroutine InitializeIPDv01p5(gcomp, importState, exportState, clock, rc) line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2028,7 +2028,7 @@ subroutine routine_Run(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2349,7 +2349,7 @@ subroutine routine_Run(gcomp, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2529,7 +2529,7 @@ recursive subroutine Finalize(gcomp, importState, exportState, clock, rc) endif ! intro - call NUOPC_LogIntro(name, rName, verbosity, rc=rc) + call NUOPC_LogIntro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out @@ -2663,7 +2663,7 @@ recursive subroutine Finalize(gcomp, importState, exportState, clock, rc) endif ! extro - call NUOPC_LogExtro(name, rName, verbosity, rc=rc) + call NUOPC_LogExtro(name, rName, verbosity, importState, exportState, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=trim(name)//":"//FILENAME)) return ! bail out