From 3a6e68cb77f659c96b24ad990359120aa296a467 Mon Sep 17 00:00:00 2001 From: bzhao Date: Wed, 9 Jul 2025 15:00:47 -0400 Subject: [PATCH 1/5] disable RUNOFF in DataAtm; let DISCHARGE and CALVING propagate to be filled by Extdata when running in DataAtm --- GEOSdataatm_GridComp/GEOS_DataAtmGridComp.F90 | 12 ++---------- GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 | 12 +++++++++--- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/GEOSdataatm_GridComp/GEOS_DataAtmGridComp.F90 b/GEOSdataatm_GridComp/GEOS_DataAtmGridComp.F90 index 95964a7e4..fcaef2eac 100644 --- a/GEOSdataatm_GridComp/GEOS_DataAtmGridComp.F90 +++ b/GEOSdataatm_GridComp/GEOS_DataAtmGridComp.F90 @@ -154,13 +154,6 @@ subroutine SetServices ( GC, RC ) DIMS = MAPL_DimsHorzOnly, & VLOCATION = MAPL_VLocationNone, __RC__) - call MAPL_AddImportSpec(GC, & - SHORT_NAME = 'RUNOFF', & - LONG_NAME = 'overland_runoff_including_throughflow', & - UNITS = 'kg m-2 s-1', & - DIMS = MAPL_DimsHorzOnly, & - VLOCATION = MAPL_VLocationNone, __RC__) - call MAPL_AddImportSpec(GC, & SHORT_NAME = 'PCU', & LONG_NAME = 'convective_rainfall', & @@ -462,7 +455,6 @@ subroutine RUN ( GC, IMPORT, EXPORT, CLOCK, RC ) real, pointer, dimension(:,:) :: QA ! => null() real, pointer, dimension(:,:) :: UA ! => null() real, pointer, dimension(:,:) :: VA ! => null() - real, pointer, dimension(:,:) :: RUNOFF ! => null() real, pointer, dimension(:,:) :: PCU ! => null() real, pointer, dimension(:,:) :: PLS ! => null() real, pointer, dimension(:,:) :: SNO ! => null() @@ -606,8 +598,8 @@ subroutine RUN ( GC, IMPORT, EXPORT, CLOCK, RC ) ! River runoff ! call ReadForcingData(impName='DISCHARGE', frcName='RR', default=0., __RC__) call MAPL_GetPointer(SurfImport, DISCHARGE, 'DISCHARGE', __RC__) - call MAPL_GetPointer(import, RUNOFF, 'RUNOFF', __RC__) - DISCHARGE=RUNOFF +! runoff is provided directly by Ocean Gc on the tripolar grid + DISCHARGE=0.0 !ALT: we should read topo, but for now over ocean this is fine call SetVarToZero('PHIS', __RC__) diff --git a/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 b/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 index 38832aed0..f6ab954a4 100644 --- a/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 +++ b/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 @@ -848,7 +848,11 @@ subroutine SetServices ( GC, RC ) call MAPL_TerminateImport ( GC, ["DATA_KPAR "], [orad], RC=STATUS ) ! need to terminate others as well: cosz, discharge, frocean, pice, taux, tauy endif else - call MAPL_TerminateImport(GC, ['DATA_UW', 'DATA_VW'], [OCEAN, OCEAN], _RC) + if(DO_DATA_ATM4OCN) then + call MAPL_TerminateImport(GC, ['DATA_UW', 'DATA_VW', 'DISCHARGE', 'CALVING'], [OCEAN, OCEAN, OCEAN, OCEAN], _RC) + else + call MAPL_TerminateImport(GC, ['DATA_UW', 'DATA_VW'], [OCEAN, OCEAN], _RC) + endif endif ! Set the Profiling timers @@ -1824,8 +1828,10 @@ subroutine RUN ( GC, IMPORT, EXPORT, CLOCK, RC ) VERIFY_(STATUS) if(DO_DATASEAONLY==0) then - call MAPL_LocStreamTransform( ExchGrid, DISCHARGEO, DISCHARGE, RC=STATUS) - VERIFY_(STATUS) + if(.not. DO_DATA_ATM4OCN) then + call MAPL_LocStreamTransform( ExchGrid, DISCHARGEO, DISCHARGE, RC=STATUS) + VERIFY_(STATUS) + endif PENUVRM= PENUVRO PENUVFM= PENUVFO From 5a8f7c521c7d0d4563792bc9a2df40746f84560e Mon Sep 17 00:00:00 2001 From: bzhao Date: Thu, 10 Jul 2025 15:43:09 -0400 Subject: [PATCH 2/5] add remapped friver and licalvf collections and provide DISCHARGE and CALVING on tripolar grid --- .../JRA55-DO_DataAtm_Forcings_ExtData.yaml | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml index 5da6f8658..4ff171080 100755 --- a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml +++ b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml @@ -41,6 +41,24 @@ Collections: friver_1_5_0_1: template: ExtData/JRA55-DO/v1-5-0-1/friver/friver_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0-1_gr_%y40101-%y41231.nc valid_range: "2020-01-01T00:00:00/2024-02-02T00:00:00" + friver_remap_1_5_0: + template: ExtData/JRA55-DO/v1-5-0/friver_remap/%OCN_RES%/friver_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc + valid_range: "1958-01-01T00:00:00/2020-01-01T00:00:00" + friver_remap_1_5_0_1: + template: ExtData/JRA55-DO/v1-5-0-1/friver_remap/%OCN_RES%/friver_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0-1_gr_%y40101-%y41231.nc + valid_range: "2020-01-01T00:00:00/2024-02-02T00:00:00" + licalvf_1_5_0: + template: ExtData/JRA55-DO/v1-5-0/licalvf/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc + valid_range: "1958-01-01T00:00:00/2020-01-01T00:00:00" + licalvf_1_5_0_1: + template: ExtData/JRA55-DO/v1-5-0-1/licalvf/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0-1_gr_%y40101-%y41231.nc + valid_range: "2020-01-01T00:00:00/2024-02-02T00:00:00" + licalvf_remap_1_5_0: + template: ExtData/JRA55-DO/v1-5-0/licalvf_remap/%OCN_RES%/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc + valid_range: "1958-01-01T00:00:00/2020-01-01T00:00:00" + licalvf_remap_1_5_0_1: + template: ExtData/JRA55-DO/v1-5-0-1/licalvf_remap/%OCN_RES%/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc + valid_range: "2020-01-01T00:00:00/2024-02-02T00:00:00" prra_1_5_0: template: ExtData/JRA55-DO/v1-5-0/prra/prra_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y401010130-%y412312230.nc valid_range: "1958-01-01T00:00:00/2020-01-01T00:00:00" @@ -91,6 +109,12 @@ Exports: RUNOFF: - {starting: "1958-01-01T00:00:00", collection: friver_1_5_0, regrid: CONSERVE, sample: river_conserve_sample, variable: friver} - {starting: "2020-01-01T00:00:00", collection: friver_1_5_0_1, regrid: CONSERVE, sample: river_conserve_sample, variable: friver} + DISCHARGE: + - {starting: "1958-01-01T00:00:00", collection: friver_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} + - {starting: "2020-01-01T00:00:00", collection: friver_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} + CALVING: + - {starting: "1958-01-01T00:00:00", collection: licalvf_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} + - {starting: "2020-01-01T00:00:00", collection: licalvf_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} PCU: - {starting: "1958-01-01T00:00:00", collection: prra_1_5_0, regrid: CONSERVE, sample: flux_conserve_sample, variable: prra} - {starting: "2020-01-01T00:00:00", collection: prra_1_5_0_1, regrid: CONSERVE, sample: flux_conserve_sample, variable: prra} From d31d62cb86c3f2280c4e1b7e6310d7659e1ffa5c Mon Sep 17 00:00:00 2001 From: bzhao Date: Thu, 10 Jul 2025 22:26:16 -0400 Subject: [PATCH 3/5] fixed a typo --- GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml index 4ff171080..df16846e6 100755 --- a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml +++ b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml @@ -57,7 +57,7 @@ Collections: template: ExtData/JRA55-DO/v1-5-0/licalvf_remap/%OCN_RES%/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc valid_range: "1958-01-01T00:00:00/2020-01-01T00:00:00" licalvf_remap_1_5_0_1: - template: ExtData/JRA55-DO/v1-5-0-1/licalvf_remap/%OCN_RES%/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y40101-%y41231.nc + template: ExtData/JRA55-DO/v1-5-0-1/licalvf_remap/%OCN_RES%/licalvf_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0-1_gr_%y40101-%y41231.nc valid_range: "2020-01-01T00:00:00/2024-02-02T00:00:00" prra_1_5_0: template: ExtData/JRA55-DO/v1-5-0/prra/prra_input4MIPs_atmosphericState_OMIP_MRI-JRA55-do-1-5-0_gr_%y401010130-%y412312230.nc @@ -110,10 +110,10 @@ Exports: - {starting: "1958-01-01T00:00:00", collection: friver_1_5_0, regrid: CONSERVE, sample: river_conserve_sample, variable: friver} - {starting: "2020-01-01T00:00:00", collection: friver_1_5_0_1, regrid: CONSERVE, sample: river_conserve_sample, variable: friver} DISCHARGE: - - {starting: "1958-01-01T00:00:00", collection: friver_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} + - {starting: "1958-01-01T00:00:00", collection: friver_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} - {starting: "2020-01-01T00:00:00", collection: friver_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} CALVING: - - {starting: "1958-01-01T00:00:00", collection: licalvf_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} + - {starting: "1958-01-01T00:00:00", collection: licalvf_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} - {starting: "2020-01-01T00:00:00", collection: licalvf_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} PCU: - {starting: "1958-01-01T00:00:00", collection: prra_1_5_0, regrid: CONSERVE, sample: flux_conserve_sample, variable: prra} From a7f5f5340d516f191b36ec346c19a150a67a4608 Mon Sep 17 00:00:00 2001 From: bzhao Date: Mon, 28 Jul 2025 11:13:46 -0400 Subject: [PATCH 4/5] claving causes huge frazil generation at isolated locations near icesheet; disable for now --- GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml index df16846e6..091debba8 100755 --- a/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml +++ b/GEOSdataatm_GridComp/JRA55-DO_DataAtm_Forcings_ExtData.yaml @@ -112,9 +112,9 @@ Exports: DISCHARGE: - {starting: "1958-01-01T00:00:00", collection: friver_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} - {starting: "2020-01-01T00:00:00", collection: friver_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: friver} - CALVING: - - {starting: "1958-01-01T00:00:00", collection: licalvf_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} - - {starting: "2020-01-01T00:00:00", collection: licalvf_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} + CALVING: {collection: /dev/null} +# - {starting: "1958-01-01T00:00:00", collection: licalvf_remap_1_5_0, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} +# - {starting: "2020-01-01T00:00:00", collection: licalvf_remap_1_5_0_1, regrid: NEAREST_STOD, sample: river_conserve_sample, variable: licalvf} PCU: - {starting: "1958-01-01T00:00:00", collection: prra_1_5_0, regrid: CONSERVE, sample: flux_conserve_sample, variable: prra} - {starting: "2020-01-01T00:00:00", collection: prra_1_5_0_1, regrid: CONSERVE, sample: flux_conserve_sample, variable: prra} From 5611f5b283e8e6649d9abbead5e44c57434c4af6 Mon Sep 17 00:00:00 2001 From: Matthew Thompson Date: Fri, 21 Nov 2025 12:07:12 -0500 Subject: [PATCH 5/5] Fix for gfortran --- GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 b/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 index f6ab954a4..96206daf4 100644 --- a/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 +++ b/GEOSogcm_GridComp/GEOS_OgcmGridComp.F90 @@ -849,7 +849,7 @@ subroutine SetServices ( GC, RC ) endif else if(DO_DATA_ATM4OCN) then - call MAPL_TerminateImport(GC, ['DATA_UW', 'DATA_VW', 'DISCHARGE', 'CALVING'], [OCEAN, OCEAN, OCEAN, OCEAN], _RC) + call MAPL_TerminateImport(GC, ['DATA_UW ', 'DATA_VW ', 'DISCHARGE', 'CALVING '], [OCEAN, OCEAN, OCEAN, OCEAN], _RC) else call MAPL_TerminateImport(GC, ['DATA_UW', 'DATA_VW'], [OCEAN, OCEAN], _RC) endif