Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
a717ad6
bugfix for handling unstructured input data with multiple levels
mvertens Dec 18, 2025
ab0c659
addition of new optional streams for ndep, aero, co2 and o3
mvertens Dec 19, 2025
ceea1a5
fixed compiler issues
mvertens Dec 19, 2025
7d93a2e
added new streams clim_1850_cmip7 and hist_cmip7
mvertens Dec 20, 2025
44b36c0
fixed cmip7 ndep configurations
mvertens Dec 20, 2025
80cb97b
fixed typo for ndep
mvertens Dec 20, 2025
6a9cf9d
removed DEBUG print statement
mvertens Dec 20, 2025
bb392dd
fixed additional problem in creating an iodesc for unstructured data …
mvertens Dec 20, 2025
7467e6c
determine if stream pointers are required and preset values if they are
mvertens Dec 21, 2025
2a649c1
Merge branch 'feature/fix_unstructured_multilev_input' into feature/n…
mvertens Dec 21, 2025
d6a74c2
add error code to shr_log_error where missing
mvertens Dec 21, 2025
80e1f8d
added rc return code to all shr_log_error calls
mvertens Dec 21, 2025
dce9ee7
fixed compiler bug
mvertens Dec 21, 2025
a2406b3
replaced the cmip7 ndep files with those that remove the prefix strin…
mvertens Dec 22, 2025
d476c03
fix compiler problem
mvertens Dec 22, 2025
ccca77f
cleaned up logunit and mainproc references
mvertens Dec 22, 2025
f7d77f9
refactored stdout formatting and calls
mvertens Dec 23, 2025
69ca579
refactored shr_strdata_get_stream_pointer_1d and shr_strdata_get_stre…
mvertens Dec 23, 2025
bc34f04
fixed compiler issue
mvertens Dec 24, 2025
c8e8436
Merge remote-tracking branch 'mvertens/feature/fix_unstructured_multi…
mvertens Dec 24, 2025
36bce68
preset state pointer fields to nans
mvertens Dec 24, 2025
bdd4317
fix for drof to account for present values of nans for stream and exp…
mvertens Dec 24, 2025
354b57c
refactor dlnd to fix aborts to due presence of NaN's with new default…
mvertens Dec 25, 2025
2399934
more updates to the share code
mvertens Dec 25, 2025
2c8d4a5
merge to head of mvertens/feature/fix_unstructured_multilev_input
mvertens Dec 25, 2025
0693214
addressed issues in PR review
mvertens Dec 29, 2025
e49446e
udpates to back out module variable settings of mainproc and logunit
mvertens Dec 30, 2025
f387187
reintroduced rc=rcode before calls to shr_log_error for pio errors
mvertens Dec 30, 2025
edd2176
more reformatting of output data
mvertens Dec 30, 2025
b6ffcbb
determine time dimname for multi-level dof3d calculation
mvertens Dec 30, 2025
0119f50
Merge branch 'feature/fix_unstructured_multilev_input' into feature/n…
mvertens Dec 31, 2025
3d97bac
updated buildnml
mvertens Dec 31, 2025
12b2a86
addressed more issues raised in PR
mvertens Dec 31, 2025
4e56bf5
removed istat check for allocate on maintask
mvertens Dec 31, 2025
ea91ddb
Merge pull request #26 from mvertens/feature/fix_unstructured_multile…
mvertens Dec 31, 2025
a719f81
fixed compilation problem for gnu
mvertens Dec 31, 2025
29becf2
updated to cdeps1.0.83_noresm_v3
mvertens Dec 31, 2025
092836f
Merge branch 'noresm' into feature/new_datm_optional_streams
mvertens Dec 31, 2025
b139209
updated comments
mvertens Dec 31, 2025
c43ac11
fixed gnu compiler error
mvertens Jan 3, 2026
4877267
Merge remote-tracking branch 'mvertens/feature/new_datm_optional_stre…
mvertens Jan 3, 2026
e63cccd
merged dlnd/dlnd_datamode_glc_forcing_mod.F90
mvertens Jan 3, 2026
cb5f4a7
updated dglc tests
mvertens Jan 3, 2026
361da00
updated dglc testlist
mvertens Jan 3, 2026
76fec80
addressed comments in PR review
mvertens Jan 4, 2026
8ef224a
new cmip7 default settings for datm ndep forcing
mvertens Jan 6, 2026
47566bb
added issues raised in review of ESCOMP/CDEPS PR#368
mvertens Jan 6, 2026
410ce30
addressed testing failures
mvertens Jan 6, 2026
71700a0
Merge remote-tracking branch 'mvertens/feature/new_datm_optional_stre…
mvertens Jan 6, 2026
8a1b5a4
changed default ndep forcing to cmip6 for CESM
mvertens Jan 6, 2026
9272ffe
added additional comment
mvertens Jan 6, 2026
c0fe5e9
reverted change to stream_cdeps.py
mvertens Jan 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions cime_config/stream_cdeps.py
Original file line number Diff line number Diff line change
Expand Up @@ -716,11 +716,11 @@ def _sub_paths(
date_string = (year_format + "-{:02d}-{:02d}").format(
adjusted_year, adjusted_month, adjusted_day
)
new_file = line.replace(match.group(0), date_string)
if os.path.exists(new_file):
new_lines.append(new_file)
new_line = line.replace(match.group(0), date_string)
if os.path.exists(new_line):
new_lines.append(new_line)
else:
print(f" WARNING:not adding missing file {new_file}")
print(f" WARNING:not adding missing file {new_line}")
elif match.group("month"):
for month in range(1, 13):
date_string = (year_format + "-{:02d}").format(year, month)
Expand Down
6 changes: 5 additions & 1 deletion datm/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@ set(SRCFILES atm_comp_nuopc.F90
datm_datamode_jra_mod.F90
datm_datamode_gefs_mod.F90
datm_datamode_era5_mod.F90
datm_datamode_simple_mod.F90)
datm_datamode_simple_mod.F90
datm_pres_aero_mod.F90
datm_pres_co2_mod.F90
datm_pres_ndep_mod.F90
datm_pres_o3_mod.F90)


foreach(FILE ${SRCFILES})
Expand Down
188 changes: 107 additions & 81 deletions datm/atm_comp_nuopc.F90

Large diffs are not rendered by default.

24 changes: 14 additions & 10 deletions datm/cime_config/config_component.xml
Original file line number Diff line number Diff line change
Expand Up @@ -102,18 +102,22 @@

<entry id="DATM_PRESNDEP">
<type>char</type>
<valid_values>none,clim_1850,clim_2000,clim_2010,hist,SSP1-2.6,SSP2-4.5,SSP3-7.0,SSP5-3.4,SSP5-8.5,cplhist</valid_values>
<valid_values>none,
clim_1850_cmip7,clim_2000_cmip7,clim_2010_cmip7,hist_cmip7,
clim_1850_cmip6,clim_2000_cmip6,clim_2010_cmip6,hist_cmip6,
SSP1-2.6,SSP2-4.5,SSP3-7.0,SSP5-3.4,SSP5-8.5,cplhist
</valid_values>
<default_value>clim_2000</default_value>
<values match="last">
<value compset="^1850[CE]?_" >clim_1850</value>
<value compset="^2000_" >clim_2000</value>
<value compset="^2010_" >clim_2010</value>
<value compset="^SSP126_" >SSP1-2.6</value>
<value compset="^SSP245_" >SSP2-4.5</value>
<value compset="^SSP370_" >SSP3-7.0</value>
<value compset="^SSP585_" >SSP5-8.5</value>
<value compset="^HIST[CE]?_" >hist</value>
<value compset="^20TR_" >hist</value>
<value compset="^1850[CE]?_" >clim_1850_cmip6</value>
<value compset="^2000_" >clim_2000_cmip6</value>
<value compset="^2010_" >clim_2010_cmip6</value>
<value compset="^HIST[CE]?_" >hist_cmip6</value>
<value compset="^20TR_" >hist_cmip6</value>
<value compset="^SSP126_" >SSP1-2.6</value>
<value compset="^SSP245_" >SSP2-4.5</value>
<value compset="^SSP370_" >SSP3-7.0</value>
<value compset="^SSP585_" >SSP5-8.5</value>
<value compset="_DATM%CPLHIST">cplhist</value>
<value compset="_DATM.*_DICE.*_DOCN.*_DROF">none</value>
</values>
Expand Down
2 changes: 0 additions & 2 deletions datm/cime_config/namelist_definition_datm.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="namelist_definition.xsl"?>

<entry_id version="2.0">

<!-- Note that streamslist here does not handle the optional streams - -->
Expand Down
169 changes: 159 additions & 10 deletions datm/cime_config/stream_definition_datm.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="namelist_definition.xsl"?>

<stream_data version="2.0" xmlns:xi="http://www.w3.org/2001/XInclude">

<!-- TODO: when should the mapalgo be nn? -->
Expand Down Expand Up @@ -190,10 +188,14 @@
optional stream nitrogen deposition
- DATM_NDEP is set by the 4 character time prefix in config_component.xml
========================
presndep.clim_1850
presndep.clim_2000
presndep.clim_2010
presndep.hist
presndep.clim_1850_cmip7
presndep.clim_2000_cmip7
presndep.clim_2010_cmip7
presndep.hist_cmip7
presndep.clim_1850_cmip6
presndep.clim_2000_cmip6
presndep.clim_2010_cmip6
presndep.hist_cmip6
presndep.SSP1-2.6
presndep.SSP2-4.5
presndep.SSP3-7.0
Expand Down Expand Up @@ -4861,14 +4863,155 @@
<!-- presndep forcing streams -->
<!-- ===================-->

<stream_entry name="presndep.clim_1850">
<stream_entry name="presndep.clim_1850_cmip7">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_ESMFmesh_cdf5_c20251211.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_CMIP_FZJ-CMIP-nitrogen-1-2_gn_185001-185012-clim_c20251222.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of kg/m2/sec - so need no unit conversion -->
<var>drynhx Faxa_ndep_nhx_dry</var>
<var>wetnhx Faxa_ndep_nhx_wet</var>
<var>drynoy Faxa_ndep_noy_dry</var>
<var>wetnoy Faxa_ndep_noy_wet</var>
</stream_datavars>
<stream_lev_dimname>null</stream_lev_dimname>
<stream_mapalgo>
<mapalgo>bilinear</mapalgo>
</stream_mapalgo>
<stream_vectors>null</stream_vectors>
<stream_year_align>1</stream_year_align>
<stream_year_first>1850</stream_year_first>
<stream_year_last>1850</stream_year_last>
<stream_offset>0</stream_offset>
<stream_tintalgo>
<tintalgo>linear</tintalgo>
</stream_tintalgo>
<stream_taxmode>
<taxmode>cycle</taxmode>
</stream_taxmode>
<stream_dtlimit>
<dtlimit>1.5</dtlimit>
</stream_dtlimit>
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.clim_2000_cmip7">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_ESMFmesh_cdf5_c20251211.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_CMIP_FZJ-CMIP-nitrogen-1-2_gn_185001-202212_c20251222.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of kg/m2/sec - so need no unit conversion -->
<var>drynhx Faxa_ndep_nhx_dry</var>
<var>wetnhx Faxa_ndep_nhx_wet</var>
<var>drynoy Faxa_ndep_noy_dry</var>
<var>wetnoy Faxa_ndep_noy_wet</var>
</stream_datavars>
<stream_lev_dimname>null</stream_lev_dimname>
<stream_mapalgo>
<mapalgo>bilinear</mapalgo>
</stream_mapalgo>
<stream_vectors>null</stream_vectors>
<stream_year_align>1</stream_year_align>
<stream_year_first>2000</stream_year_first>
<stream_year_last>2000</stream_year_last>
<stream_offset>0</stream_offset>
<stream_tintalgo>
<tintalgo>linear</tintalgo>
</stream_tintalgo>
<stream_taxmode>
<taxmode>cycle</taxmode>
</stream_taxmode>
<stream_dtlimit>
<dtlimit>1.5</dtlimit>
</stream_dtlimit>
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.clim_2010_cmip7">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_ESMFmesh_cdf5_c20251211.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_CMIP_FZJ-CMIP-nitrogen-1-2_gn_185001-202212_c20251222.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of kg/m2/sec - so need no unit conversion -->
<var>drynhx Faxa_ndep_nhx_dry</var>
<var>wetnhx Faxa_ndep_nhx_wet</var>
<var>drynoy Faxa_ndep_noy_dry</var>
<var>wetnoy Faxa_ndep_noy_wet</var>
</stream_datavars>
<stream_lev_dimname>null</stream_lev_dimname>
<stream_mapalgo>
<mapalgo>bilinear</mapalgo>
</stream_mapalgo>
<stream_vectors>null</stream_vectors>
<stream_year_align>1</stream_year_align>
<stream_year_first>2010</stream_year_first>
<stream_year_last>2010</stream_year_last>
<stream_offset>0</stream_offset>
<stream_tintalgo>
<tintalgo>linear</tintalgo>
</stream_tintalgo>
<stream_taxmode>
<taxmode>cycle</taxmode>
</stream_taxmode>
<stream_dtlimit>
<dtlimit>1.5</dtlimit>
</stream_dtlimit>
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.hist_cmip7">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_ESMFmesh_cdf5_c20251211.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/atm/ndep/cmip7/ndep_input4MIPs_surfaceFluxes_CMIP_FZJ-CMIP-nitrogen-1-2_gn_185001-202212_c20251222.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of kg/m2/sec - so need no unit conversion -->
<var>drynhx Faxa_ndep_nhx_dry</var>
<var>wetnhx Faxa_ndep_nhx_wet</var>
<var>drynoy Faxa_ndep_noy_dry</var>
<var>wetnoy Faxa_ndep_noy_wet</var>
</stream_datavars>
<stream_lev_dimname>null</stream_lev_dimname>
<stream_mapalgo>
<mapalgo>bilinear</mapalgo>
</stream_mapalgo>
<stream_vectors>null</stream_vectors>
<stream_year_align>1</stream_year_align>
<stream_year_first>1850</stream_year_first>
<stream_year_last>2022</stream_year_last>
<stream_offset>0</stream_offset>
<stream_tintalgo>
<tintalgo>linear</tintalgo>
</stream_tintalgo>
<stream_taxmode>
<taxmode>cycle</taxmode>
</stream_taxmode>
<stream_dtlimit>
<dtlimit>1.5</dtlimit>
</stream_dtlimit>
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.clim_1850_cmip6">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/share/meshes/fv0.9x1.25_141008_polemod_ESMFmesh.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_WACCM6_CMIP6piControl001_y21-50avg_1850monthly_0.95x1.25_c180802.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand All @@ -4893,14 +5036,15 @@
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.clim_2000">
<stream_entry name="presndep.clim_2000_cmip6">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/share/meshes/fv0.9x1.25_141008_polemod_ESMFmesh.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_hist_b.e21.BWHIST.f09_g17.CMIP6-historical-WACCM.ensmean_1849-2015_monthly_0.9x1.25_c180926.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand All @@ -4925,7 +5069,7 @@
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.clim_2010">
<stream_entry name="presndep.clim_2010_cmip6">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/share/meshes/fv0.9x1.25_141008_polemod_ESMFmesh.nc</meshfile>
</stream_meshfile>
Expand Down Expand Up @@ -4957,14 +5101,15 @@
<stream_readmode>single</stream_readmode>
</stream_entry>

<stream_entry name="presndep.hist">
<stream_entry name="presndep.hist_cmip6">
<stream_meshfile>
<meshfile>$DIN_LOC_ROOT/share/meshes/fv0.9x1.25_141008_polemod_ESMFmesh.nc</meshfile>
</stream_meshfile>
<stream_datafiles>
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_hist_b.e21.BWHIST.f09_g17.CMIP6-historical-WACCM.ensmean_1849-2015_monthly_0.9x1.25_c180926.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand Down Expand Up @@ -4997,6 +5142,7 @@
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_f09_g17.CMIP6-SSP1-2.6-WACCM_1849-2101_monthly_c191007.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand Down Expand Up @@ -5029,6 +5175,7 @@
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_f09_g17.CMIP6-SSP2-4.5-WACCM_1849-2101_monthly_c191007.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand Down Expand Up @@ -5061,6 +5208,7 @@
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_SSP370_b.e21.BWSSP370cmip6.f09_g17.CMIP6-SSP3-7.0-WACCM.002_1849-2101_monthly_0.9x1.25_c211216.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand Down Expand Up @@ -5094,6 +5242,7 @@
<file>$DIN_LOC_ROOT/lnd/clm2/ndepdata/fndep_clm_f09_g17.CMIP6-SSP5-8.5-WACCM_1849-2101_monthly_c191007.nc</file>
</stream_datafiles>
<stream_datavars>
<!-- the following stream fields are in units of g/m2/sec - need conversion to kg/m2/sec-->
<var>NDEP_NHx_month Faxa_ndep_nhx</var>
<var>NDEP_NOy_month Faxa_ndep_noy</var>
</stream_datavars>
Expand Down
Loading