From 6c69e610c86ee6819bb145697be93506ebf4700d Mon Sep 17 00:00:00 2001 From: Denise Worthen Date: Sat, 4 Feb 2023 16:10:33 -0500 Subject: [PATCH] update how UFS names restarts * write all restarts as YYYYMMDD.HHMMSS.MOM.resX * includes stoch restarts * write final restart with timestamp * change nems=>ufs --- config_src/drivers/nuopc_cap/mom_cap.F90 | 16 +++++----------- config_src/drivers/nuopc_cap/mom_cap_methods.F90 | 2 +- .../nuopc_cap/mom_surface_forcing_nuopc.F90 | 1 - 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/config_src/drivers/nuopc_cap/mom_cap.F90 b/config_src/drivers/nuopc_cap/mom_cap.F90 index 2f0128b7cb..14bd438424 100644 --- a/config_src/drivers/nuopc_cap/mom_cap.F90 +++ b/config_src/drivers/nuopc_cap/mom_cap.F90 @@ -1699,16 +1699,10 @@ subroutine ModelAdvance(gcomp, rc) close(writeunit) endif else ! not cesm_coupled - ! write the final restart without a timestamp - if (ESMF_AlarmIsRinging(stop_alarm, rc=rc)) then - write(restartname,'(A)')"MOM.res" - write(stoch_restartname,'(A)')"ocn_stoch.res.nc" - else - write(restartname,'(A,I4.4,"-",I2.2,"-",I2.2,"-",I2.2,"-",I2.2,"-",I2.2)') & - "MOM.res.", year, month, day, hour, minute, seconds - write(stoch_restartname,'(A,I4.4,"-",I2.2,"-",I2.2,"-",I2.2,"-",I2.2,"-",I2.2,A)') & - "ocn_stoch.res.", year, month, day, hour, minute, seconds,".nc" - endif + write(restartname,'(i4.4,2(i2.2),A,3(i2.2),A)') year, month, day,".", hour, minute, seconds, & + ".MOM.res" + write(stoch_restartname,'(i4.4,2(i2.2),A,3(i2.2),A)') year, month, day,".", hour, minute, seconds, & + ".ocn_stoch.res.nc" call ESMF_LogWrite("MOM_cap: Writing restart : "//trim(restartname), ESMF_LOGMSG_INFO) ! write restart file(s) @@ -1868,7 +1862,7 @@ subroutine ModelSetRunClock(gcomp, rc) line=__LINE__, file=__FILE__, rcToReturn=rc) return endif - ! not used in nems + ! not used in ufs call NUOPC_CompAttributeGet(gcomp, name="restart_ymd", value=cvalue, & isPresent=isPresent, isSet=isSet, rc=rc) if (ChkErr(rc,__LINE__,u_FILE_u)) return diff --git a/config_src/drivers/nuopc_cap/mom_cap_methods.F90 b/config_src/drivers/nuopc_cap/mom_cap_methods.F90 index 66ffbcc979..db8bc33c90 100644 --- a/config_src/drivers/nuopc_cap/mom_cap_methods.F90 +++ b/config_src/drivers/nuopc_cap/mom_cap_methods.F90 @@ -1,4 +1,4 @@ -!> Contains import/export methods for both NEMS and CMEPS. +!> Contains import/export methods for CMEPS. module MOM_cap_methods use ESMF, only: ESMF_Clock, ESMF_ClockGet, ESMF_time, ESMF_TimeGet diff --git a/config_src/drivers/nuopc_cap/mom_surface_forcing_nuopc.F90 b/config_src/drivers/nuopc_cap/mom_surface_forcing_nuopc.F90 index 8691f564dd..b211d7fd34 100644 --- a/config_src/drivers/nuopc_cap/mom_surface_forcing_nuopc.F90 +++ b/config_src/drivers/nuopc_cap/mom_surface_forcing_nuopc.F90 @@ -769,7 +769,6 @@ subroutine convert_IOB_to_forces(IOB, forces, index_bounds, Time, G, US, CS) endif forces%accumulate_p_surf = .true. ! Multiple components may contribute to surface pressure. - ! TODO: this does not seem correct for NEMS #ifdef CESMCOUPLED wind_stagger = AGRID #else