Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
208c594
Point CDEPS external at cdeps1.0.33.
samsrabin May 3, 2024
8d628f2
Update other externals after CESM tag cesm2_3_alpha17e.
samsrabin May 3, 2024
702477d
Add datm_rcp45_anom_forc testmod.
samsrabin May 9, 2024
f59d045
Point CDEPS external at my branch, with Anomaly.Forcing.cmip5.rcp45.
samsrabin May 9, 2024
662e536
datm_rcp45_anom_forc testmod now uses Anomaly.Forcing.cmip5.rcp45.
samsrabin Aug 8, 2024
8df08ff
Added a few scripts for this work
samsrabin Aug 8, 2024
1416363
Remove user_nl_datm_streams from datm_rcp45_anom_forc testmod.
samsrabin Aug 8, 2024
4b96267
Update CDEPS external to 462c7a9.
samsrabin Aug 8, 2024
825fbb6
Update CDEPS external to 759c591.
samsrabin Aug 8, 2024
496c154
datm_ssp126_anom_forc testmod now uses Anomaly.Forcing.cmip6.ssp126.
samsrabin Aug 8, 2024
0a8df10
Add 'ssp' test suite.
samsrabin Aug 8, 2024
634cfce
Update CDEPS external to 84669d7.
samsrabin Aug 9, 2024
42b7575
Add testmods for ssp245, 370, 585.
samsrabin Aug 9, 2024
567fcad
Add ssp suite tests for 245, 370, 585.
samsrabin Aug 9, 2024
597a4de
Merge remote-tracking branch 'escomp/b4b-dev' into ssp-anomaly-fixes
samsrabin Aug 9, 2024
c4ec313
Update CDEPS external to 547506603e.
samsrabin Aug 9, 2024
49382ee
Update CDEPS external to 3f36622.
samsrabin Sep 4, 2024
728257b
Update CDEPS external to 797b320.
samsrabin Sep 5, 2024
4da4587
Update CDEPS external to 274b06b.
samsrabin Sep 5, 2024
51a8e1b
Update "Running with anomaly forcing" doc for latest CDEPS.
samsrabin Sep 5, 2024
1644c61
Running-with-anomaly-forcing.rst: Formatting improvements.
samsrabin Sep 5, 2024
5aae2a6
Running-with-anomaly-forcing.rst: Resolve a TODO.
samsrabin Sep 5, 2024
a2fc1c1
Running-with-anomaly-forcing.rst: Update single-pt instructions.
samsrabin Sep 5, 2024
f514ed8
Update CDEPS external to 1e403a8.
samsrabin Sep 5, 2024
da2f4e8
Update CDEPS external to b1f17519.
samsrabin Sep 5, 2024
8cb5854
Remove datm_ssp*_anom_forc testmods.
samsrabin Sep 5, 2024
01967bf
Replace non-SSP test in ssp suite with nvhpc version.
samsrabin Sep 5, 2024
124027b
Update CDEPS external to 25c7b92.
samsrabin Sep 5, 2024
28ecb3f
Update CDEPS external to 7cb5040.
samsrabin Sep 6, 2024
865858f
Update CDEPS external to 93e59c0f19110d2ace7a94c6906b19ca3bfa98f0.
samsrabin Feb 19, 2025
741dc33
Remove an extraneous test from ssp suite.
samsrabin Feb 19, 2025
546dbca
Add noAnomalyForcing testmod and one test.
samsrabin Feb 19, 2025
19c35fb
Update CDEPS submodule to 196957f.
samsrabin Mar 14, 2025
f90c7bb
Merge tag 'ctsm5.3.031' into ssp-anomaly-fixes-202503
samsrabin Mar 14, 2025
ef512bd
Merge branch 'ssp-anomaly-fixes-202503' into ssp-anomaly-fixes
samsrabin Mar 14, 2025
5eb9cf4
Update CDEPS external to 9b35f06b.
samsrabin Mar 14, 2025
d969449
Update CDEPS to cdeps1.0.71.
samsrabin Apr 14, 2025
98e2485
Add an SSP245 test to aux_clm.
samsrabin Apr 14, 2025
f8f4466
Merge tag 'ctsm5.3.038' into ssp-anomaly-fixes
samsrabin Apr 14, 2025
bdd601a
Delete tmp_scripts/.
samsrabin Apr 14, 2025
599fdaf
datm_rcp45_anom_forc testmod: Delete user_nl_clm.
samsrabin Apr 14, 2025
4b16a84
Add RCP45 test to aux_clm and ssp suites.
samsrabin Apr 14, 2025
f50aecc
Add anomaly_forcing = 'none' for tower site defaults.
samsrabin Apr 21, 2025
b8d2a9b
Merge tag 'ctsm5.3.043' into ssp-anomaly-fixes
samsrabin May 14, 2025
28c7936
Anomaly forcing docs: Remove bit about NN.
samsrabin May 14, 2025
8f7d0c5
Merge pull request #3125 from ekluzek/update_submodules_to_cesm30_beta06
ekluzek May 30, 2025
39ccc2f
Merge pull request #3065 from fvitt/megan_coeffs_fix
ekluzek May 30, 2025
f1ee329
Merge tag 'ctsm5.3.052' into ssp-anomaly-fixes
samsrabin May 30, 2025
7e10e00
3 ctsm_sci tests no longer expected to fail.
samsrabin May 30, 2025
630f7f4
Add workflow to check XML files for well-formedness.
samsrabin May 30, 2025
93e847a
xml-check.yml now uses Python instead of missing xmllint.
samsrabin May 30, 2025
fcf5fd8
Fix cime_config/testdefs/ExpectedTestFails.xml.
samsrabin May 30, 2025
db6a25b
Satisfy Pylint.
samsrabin May 30, 2025
9da830d
Don't need to install lxml anymore.
samsrabin May 30, 2025
6bd8acd
Add info about xmllint.
samsrabin May 30, 2025
a3ce6a7
Change snow_thermal_cond_glc_method and _lake_method for clm6_0
slevis-lmwg May 30, 2025
21bb0dc
Fix usermods_dirs namelists for no anomaly forcing.
samsrabin May 30, 2025
0d7b0f2
Update ChangeLog/ChangeSum
samsrabin May 30, 2025
a75e488
Update to new temporary default paramfile for clm6_0
slevis-lmwg May 30, 2025
b1890ac
Update to new non-final ctsm5.4 f09 & ne30 fsurdat/landuse files
slevis-lmwg May 30, 2025
8fcae56
FUNITCTSM_P1x1.f10_f10_mg37.I2000Clm50Sp.izumi_intel expected fail in…
samsrabin May 31, 2025
e1fbca6
Return those three expected-fail ctsm_sci tests.
samsrabin May 31, 2025
4434801
Merge pull request #2686 from samsrabin/ssp-anomaly-fixes
samsrabin May 31, 2025
b04a289
doc/testing.sh: Add git-fleximod update.
samsrabin May 31, 2025
af46c56
docs-omnibus.yml: testing.sh itself doesn't need to be conda run.
samsrabin May 31, 2025
6f8ef10
fleximod_test.yaml: Include optional submodules.
samsrabin May 31, 2025
2967370
fleximod_test.yaml: Catch STAGED uncommitted changes.
samsrabin May 31, 2025
30677b8
Actually add FTorch submodule.
samsrabin May 31, 2025
647e319
testing.sh: conda run Makefile method.
samsrabin May 31, 2025
43267c9
fleximod_test.yaml: Show the diffs again.
samsrabin May 31, 2025
c3bc488
CDEPS: Allow anomaly forcings w/ any DATM.
samsrabin Jun 1, 2025
128539c
Three ctsm_sci tests now expected to pass.
samsrabin Jun 1, 2025
5bc74e8
Update comments about how do_grossunrep gets set in CLMBuildNamelist.pm
slevis-lmwg Jun 2, 2025
619bc5c
Update ChangeLog/ChangeSum
samsrabin Jun 2, 2025
3ccf1b8
Point CDEPS at cdeps1.0.75.
samsrabin Jun 2, 2025
e7fdb15
Merge pull request #3212 from samsrabin/ssp-anomalies-any-datm
samsrabin Jun 2, 2025
31598a0
Make use_c1* isotope settings true for Clm6Bgc cases
slevis-lmwg Jun 2, 2025
45f47d8
Update CMEPS from cmeps1.0.48 to cmeps1.0.51. BROKEN.
samsrabin Jun 2, 2025
3a8c432
Update to new ctsm5.4 f09 and ne30 finidat files for 1850 and 2000
slevis-lmwg Jun 2, 2025
b13597c
Changes needed for use_c1* variables to get their default values
slevis-lmwg Jun 3, 2025
f62261b
Revert "Update CMEPS from cmeps1.0.48 to cmeps1.0.51. BROKEN."
samsrabin Jun 5, 2025
ce59fea
Remove broken FTorch.
samsrabin Jun 5, 2025
5bce0ed
Remove unnecessary "if ( defined" statements as per code review
slevis-lmwg Jun 5, 2025
66cc5db
Merge tag 'ctsm5.3.054' into docs-deploy-fix
samsrabin Jun 5, 2025
d081a3a
Update ChangeLog/ChangeSum.
samsrabin Jun 5, 2025
53057f0
Merge pull request #3211 from samsrabin/docs-deploy-fix
samsrabin Jun 5, 2025
6fd3fc1
Merge tag 'ctsm5.3.055' into update_defaults_iss3137
slevis-lmwg Jun 5, 2025
84dcbe0
Increase wallclock on izumi tests running out of wallclock
slevis-lmwg Jun 6, 2025
f7dc9aa
Update LII2FINIDATAREAS tests from Clm5 to Clm6 and update exp. fails
slevis-lmwg Jun 12, 2025
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
2 changes: 1 addition & 1 deletion .github/workflows/docs-omnibus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,4 @@ jobs:
# TODO: Split testing.sh tests into their own steps in this job
- name: Text Sphinx builds with omnibus script
run: |
cd doc && conda run -n ctsm_pylib ./testing.sh
cd doc && ./testing.sh
4 changes: 2 additions & 2 deletions .github/workflows/fleximod_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
uses: actions/checkout@v4
- id: run-fleximod
run: |
$GITHUB_WORKSPACE/bin/git-fleximod update
$GITHUB_WORKSPACE/bin/git-fleximod update -o
echo
echo "Update complete, checking status"
echo
Expand All @@ -32,4 +32,4 @@ jobs:
echo
echo "Checking if git fleximod matches expected externals"
echo
git diff --exit-code
git add . && git diff --exit-code && git diff --cached --exit-code
67 changes: 67 additions & 0 deletions .github/workflows/validate_xml.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
"""
Check that all XML files in our repo (except for those in submodules) are well-formed. Error if not.
"""
import sys
import glob
import os
import subprocess
import xml.etree.ElementTree as ET


def get_submodule_paths():
"""
Get list of submodules
"""
cmd = "git config --file .gitmodules --get-regexp path | awk '{ print $2 }'"
result = subprocess.run(cmd, capture_output=True, text=True, shell=True, check=True)
result_list = result.stdout.split("\n")[:-1]
result_list = [x for x in result_list if x]
return result_list


def is_in_submodule(file_path, submodule):
"""
Return True if file is in given submodule, False otherwise
"""
return os.path.commonpath([file_path, submodule]) == os.path.commonpath([submodule])


def is_in_any_submodule(file_path, submodule_paths):
"""
Return True if file is in any submodule, False otherwise
"""
file_path = os.path.abspath(file_path)
submodule_paths = map(os.path.abspath, submodule_paths)
return any(is_in_submodule(file_path, submodule) for submodule in submodule_paths)


def validate_xml(file_path):
"""
Return True if XML file is well-formed, False otherwise
"""
try:
ET.parse(file_path)
except ET.ParseError:
print(f"❌ {file_path} is NOT well-formed")
return False
print(f"✅ {file_path} is well-formed")
return True


def main():
# pylint: disable=missing-function-docstring
submodule_paths = get_submodule_paths()
all_valid = True
for xml_file in glob.glob("**/*.xml", recursive=True):
if is_in_any_submodule(xml_file, submodule_paths):
continue
if not validate_xml(xml_file):
all_valid = False

if not all_valid:
print("\nUse xmllint to show problems in malformed files")

return all_valid


sys.exit(0 if main() else 1)
20 changes: 20 additions & 0 deletions .github/workflows/xml-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Check that XML files are well-formed
# Only check files in our repo that AREN'T in submodules
# Use a Python command to check each file because xmllint isn't available on GH runners

on: [push, pull_request] # Trigger on push or pull request

jobs:
check-xml:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.x'

- name: Check XML files
run: python .github/workflows/validate_xml.py
12 changes: 1 addition & 11 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/CMEPS.git
[submodule "cdeps"]
path = components/cdeps
url = https://github.com/ESCOMP/CDEPS.git
fxtag = cdeps1.0.73
fxtag = cdeps1.0.75
fxrequired = ToplevelRequired
# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed
fxDONOTUSEurl = https://github.com/ESCOMP/CDEPS.git
Expand Down Expand Up @@ -128,13 +128,3 @@ fxtag = v2.2.6
fxrequired = ToplevelOptional
# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed
fxDONOTUSEurl = https://github.com/ESMCI/doc-builder

# FTorch is an optional library useful for AI and Machine Learning
# In order to use it -- it must be checked out with git-fleximod
[submodule "FTorch"]
path = libraries/FTorch
url = https://github.com/ESCOMP/FTorch_interface
fxtag = v0.0.5
fxrequired = ToplevelOptional
# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed
fxDONOTUSEurl = https://github.com/ESCOMP/FTorch_interface
65 changes: 28 additions & 37 deletions bld/CLMBuildNamelist.pm
Original file line number Diff line number Diff line change
Expand Up @@ -1688,6 +1688,7 @@ sub process_namelist_inline_logic {
setup_logic_cnmatrix($opts, $nl_flags, $definition, $defaults, $nl, $envxml_ref);
setup_logic_spinup($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_supplemental_nitrogen($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_c_isotope($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_snowpack($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_fates($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_z0param($opts, $nl_flags, $definition, $defaults, $nl);
Expand Down Expand Up @@ -1737,7 +1738,6 @@ sub process_namelist_inline_logic {
# namelist group: ch4par_in #
###############################
setup_logic_methane($opts, $nl_flags, $definition, $defaults, $nl);
setup_logic_c_isotope($opts, $nl_flags, $definition, $defaults, $nl);

###############################
# namelist group: ndepdyn_nml #
Expand Down Expand Up @@ -3175,10 +3175,11 @@ sub setup_logic_do_grossunrep {

my $var = 'do_grossunrep';

# Start by assuming a default value of '.true.'. Then check a number of
# Start by assuming a default value of '.false.'. Then check a number of
# conditions under which do_grossunrep cannot be true. Under these
# conditions: (1) set default value to '.false.'; (2) make sure that the
# conditions: (1) set default value to '.false.' again; (2) make sure that the
# value is indeed false (e.g., that the user didn't try to set it to true).
# Ideally the default value would be set in namelist_defaults

my $default_val = ".false.";

Expand Down Expand Up @@ -3703,63 +3704,53 @@ sub setup_logic_c_isotope {
#
my ($opts, $nl_flags, $definition, $defaults, $nl) = @_;

add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'use_c13', 'bgc_mode'=>$nl_flags->{'bgc_mode'}, 'phys'=>$nl_flags->{'phys'});
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'use_c14', 'bgc_mode'=>$nl_flags->{'bgc_mode'}, 'phys'=>$nl_flags->{'phys'});
my $use_c13 = $nl->get_value('use_c13');
my $use_c14 = $nl->get_value('use_c14');
if ( $nl_flags->{'bgc_mode'} ne "sp" && $nl_flags->{'bgc_mode'} ne "fates" ) {
if ( $nl_flags->{'bgc_mode'} ne "bgc" ) {
if ( defined($use_c13) && &value_is_true($use_c13) ) {
if ( &value_is_true($use_c13) ) {
$log->warning("use_c13 is ONLY scientifically validated with the bgc=BGC configuration" );
}
if ( defined($use_c14) && &value_is_true($use_c14) ) {
if ( &value_is_true($use_c14) ) {
$log->warning("use_c14 is ONLY scientifically validated with the bgc=BGC configuration" );
}
}
if ( defined($use_c14) ) {
if ( &value_is_true($use_c14) ) {
my $use_c14_bombspike = $nl->get_value('use_c14_bombspike');
if ( defined($use_c14_bombspike) && &value_is_true($use_c14_bombspike) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'atm_c14_filename',
'use_c14'=>$use_c14, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_c14_bombspike'=>$nl->get_value('use_c14_bombspike'),
'ssp_rcp'=>$nl_flags->{'ssp_rcp'} );
}
} else {
if ( defined($nl->get_value('use_c14_bombspike')) ||
defined($nl->get_value('atm_c14_filename')) ) {
$log->fatal_error("use_c14 is FALSE and use_c14_bombspike or atm_c14_filename set");
}
if ( &value_is_true($use_c14) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'use_c14_bombspike', 'bgc_mode'=>$nl_flags->{'bgc_mode'}, 'phys'=>$nl_flags->{'phys'});
my $use_c14_bombspike = $nl->get_value('use_c14_bombspike');
if ( &value_is_true($use_c14_bombspike) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'atm_c14_filename',
'use_c14'=>$use_c14, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_c14_bombspike'=>$nl->get_value('use_c14_bombspike'),
'ssp_rcp'=>$nl_flags->{'ssp_rcp'} );
}
} else {
if ( defined($nl->get_value('use_c14_bombspike')) ||
defined($nl->get_value('atm_c14_filename')) ) {
$log->fatal_error("use_c14 NOT set to .true., but use_c14_bompspike/atm_c14_filename defined.");
$log->fatal_error("use_c14 is FALSE and use_c14_bombspike or atm_c14_filename set");
}
}
if ( defined($use_c13) ) {
if ( &value_is_true($use_c13) ) {
my $use_c13_timeseries = $nl->get_value('use_c13_timeseries');
if ( defined($use_c13_timeseries) && &value_is_true($use_c13_timeseries) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'atm_c13_filename',
'use_c13'=>$use_c13, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_c13_timeseries'=>$nl->get_value('use_c13_timeseries'),
'ssp_rcp'=>$nl_flags->{'ssp_rcp'} );
}
} else {
if ( defined($nl->get_value('use_c13_timeseries')) ||
defined($nl->get_value('atm_c13_filename')) ) {
$log->fatal_error("use_c13 is FALSE and use_c13_timeseries or atm_c13_filename set");
}
if ( &value_is_true($use_c13) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'use_c13_timeseries', 'bgc_mode'=>$nl_flags->{'bgc_mode'}, 'phys'=>$nl_flags->{'phys'});
my $use_c13_timeseries = $nl->get_value('use_c13_timeseries');
if ( &value_is_true($use_c13_timeseries) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'atm_c13_filename',
'use_c13'=>$use_c13, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_c13_timeseries'=>$nl->get_value('use_c13_timeseries'),
'ssp_rcp'=>$nl_flags->{'ssp_rcp'} );
}
} else {
if ( defined($nl->get_value('use_c13_timeseries')) ||
defined($nl->get_value('atm_c13_filename')) ) {
$log->fatal_error("use_c13 NOT set to .true., but use_c13_bompspike/atm_c13_filename defined.");
$log->fatal_error("use_c13 is FALSE and use_c13_timeseries or atm_c13_filename set");
}
}
} else {
if ( defined($use_c13) ||
defined($use_c14) ||
defined($nl->get_value('use_c14_bombspike')) ||
if ( &value_is_true($use_c13) ||
&value_is_true($use_c14) ||
&value_is_true($nl->get_value('use_c14_bombspike')) ||
defined($nl->get_value('atm_c14_filename')) ||
defined($nl->get_value('use_c13_timeseries')) ||
&value_is_true($nl->get_value('use_c13_timeseries')) ||
defined($nl->get_value('atm_c13_filename')) ) {
$log->fatal_error("bgc=sp and C isotope namelist variables were set, both can't be used at the same time");
}
Expand Down
35 changes: 22 additions & 13 deletions bld/namelist_files/namelist_defaults_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,17 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<stomatalcond_method >Medlyn2011</stomatalcond_method>
<stomatalcond_method phys="clm4_5" >Ball-Berry1987</stomatalcond_method>

<!-- Carbon isotope settings -->
<use_c13>.false.</use_c13>
<use_c14>.false.</use_c14>
<use_c13_timeseries>.false.</use_c13_timeseries>
<use_c14_bombspike>.false.</use_c14_bombspike>

<use_c13 phys="clm6_0" bgc_mode="bgc" >.true.</use_c13>
<use_c14 phys="clm6_0" bgc_mode="bgc" >.true.</use_c14>
<use_c13_timeseries phys="clm6_0" bgc_mode="bgc" >.true.</use_c13_timeseries>
<use_c14_bombspike phys="clm6_0" bgc_mode="bgc" >.true.</use_c14_bombspike>

<!-- Carbon isotope concentration files -->
<atm_c13_filename use_c13=".true." use_c13_timeseries=".true." ssp_rcp="hist" >lnd/clm2/isotopes/atm_delta_C13_CMIP6_1850-2015_yearly_v2.0_c190528.nc</atm_c13_filename>
<atm_c13_filename use_c13=".true." use_c13_timeseries=".true." ssp_rcp="SSP1-1.9" >lnd/clm2/isotopes/atm_delta_C13_CMIP6_SSP119_1850-2100_yearly_c181209.nc</atm_c13_filename>
Expand Down Expand Up @@ -484,13 +495,11 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<snow_thermal_cond_method>Jordan1991</snow_thermal_cond_method>
<snow_thermal_cond_method phys="clm6_0">Sturm1997</snow_thermal_cond_method>

<!-- TODO change clm6 to Jordan with answer changing tag for glacier mass ballance -->
<snow_thermal_cond_glc_method>Jordan1991</snow_thermal_cond_glc_method>
<snow_thermal_cond_glc_method phys="clm6_0">Sturm1997</snow_thermal_cond_glc_method>
<snow_thermal_cond_glc_method phys="clm6_0">Jordan1991</snow_thermal_cond_glc_method>

<!-- TODO change clm6 to Sturm with answer changing tag -->
<snow_thermal_cond_lake_method>Jordan1991</snow_thermal_cond_lake_method>
<snow_thermal_cond_lake_method phys="clm6_0">Jordan1991</snow_thermal_cond_lake_method>
<snow_thermal_cond_lake_method phys="clm6_0">Sturm1997</snow_thermal_cond_lake_method>

<!-- Default glacier behavior is:
Mountain glaciers: single_at_atm_topo
Expand Down Expand Up @@ -532,7 +541,7 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<!-- The default filenames are given relative to the root directory
for the CLM2 data in the CESM distribution -->
<!-- Plant function types (relative to {csmdata}) -->
<paramfile phys="clm6_0" >lnd/clm2/paramdata/ctsm60_params.c250311.nc</paramfile>
<paramfile phys="clm6_0" >lnd/clm2/paramdata/ctsm5.3.041.Nfix_params.v13.c250221_upplim250.nc</paramfile>
<paramfile phys="clm5_0" >lnd/clm2/paramdata/clm50_params.c250311.nc</paramfile>
<paramfile phys="clm4_5" >lnd/clm2/paramdata/clm45_params.c250311.nc</paramfile>

Expand Down Expand Up @@ -1283,14 +1292,14 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
ic_ymd="18500101" sim_year="1850" do_transient_pfts=".false." use_excess_ice=".true."
ic_tod="0" glc_nec="10" use_crop=".true." irrigate=".false."
phys="clm6_0"
>lnd/clm2/initdata_esmf/ctsm5.3/ctsm53019_f09_BNF_pSASU.clm2.r.0161-01-01-00000.nc
>lnd/clm2/initdata_esmf/ctsm5.4/ctsm53041_54surfdata_snowTherm_100_pSASU.clm2.r.0161-01-01-00000_64bitoffset.nc
</finidat>
<!-- Corresponding ne30 -->
<finidat hgrid="ne30np4.pg3" mask="tx2_3v2" use_cn=".true." use_cndv=".false." use_fates=".false."
sim_year="1850" do_transient_pfts=".false." use_excess_ice=".true."
use_crop=".true." irrigate=".false."
phys="clm6_0" use_init_interp=".true."
>lnd/clm2/initdata_esmf/ctsm5.3/ctsm53019_f09_BNF_pSASU.clm2.r.0161-01-01-00000.nc
>lnd/clm2/initdata_esmf/ctsm5.4/ctsm53041_54surfdata_ne30_102_pSASU.clm2.r.0081-01-01-00000_64bitoffset.nc
</finidat>
<!-- Corresponding f19 -->
<finidat hgrid="1.9x2.5" mask="gx1v7" use_cn=".true." use_cndv=".false." use_fates=".false."
Expand Down Expand Up @@ -1425,13 +1434,13 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
ic_ymd="20000101" sim_year="2000" use_excess_ice=".true."
ic_tod="0" glc_nec="10" use_crop=".true." irrigate=".true."
phys="clm6_0" use_init_interp=".true."
>lnd/clm2/initdata_esmf/ctsm5.3/ctsm53019_f09_BNF_hist.clm2.r.2000-01-01-00000.nc
>lnd/clm2/initdata_esmf/ctsm5.4/ctsm53041_54surfdata_ne30_102_HIST.clm2.r.2000-01-01-00000.nc
</finidat>
<finidat hgrid="ne30np4.pg3" maxpft="79" mask="tx2_3v2" use_cn=".true." use_cndv=".false." use_fates=".false."
ic_ymd="20000101" sim_year="2000" use_excess_ice=".true."
ic_tod="0" glc_nec="10" use_crop=".true." irrigate=".true."
phys="clm6_0" use_init_interp=".true."
>lnd/clm2/initdata_esmf/ctsm5.3/ctsm53019_f09_BNF_hist.clm2.r.2000-01-01-00000.nc
>lnd/clm2/initdata_esmf/ctsm5.4/ctsm53041_54surfdata_ne30_102_HIST.clm2.r.2000-01-01-00000.nc
</finidat>

<!-- clm5_0 and cam7.0 -->
Expand Down Expand Up @@ -1700,7 +1709,7 @@ lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_4x5_hist_1850_16pfts_c241007.nc</fsurd
<fsurdat hgrid="360x720cru" sim_year="1850">
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_360x720cru_hist_1850_78pfts_c240908.nc</fsurdat>
<fsurdat hgrid="0.9x1.25" sim_year="1850" >
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_0.9x1.25_hist_1850_78pfts_c240908.nc</fsurdat>
lnd/clm2/surfdata_esmf/ctsm5.4.0/surfdata_0.9x1.25_hist_1850_78pfts_c250428.nc</fsurdat>
<fsurdat hgrid="1.9x2.5" sim_year="1850" use_crop=".true.">
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_1.9x2.5_hist_1850_78pfts_c240908.nc</fsurdat>
<fsurdat hgrid="10x15" sim_year="1850" >
Expand All @@ -1718,7 +1727,7 @@ lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_ne30np4_hist_1850_78pfts_c240908.nc</f
<fsurdat hgrid="ne30np4.pg2" sim_year="1850">
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_ne30np4.pg2_hist_1850_78pfts_c240908.nc</fsurdat>
<fsurdat hgrid="ne30np4.pg3" sim_year="1850">
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_ne30np4.pg3_hist_1850_78pfts_c240908.nc</fsurdat>
lnd/clm2/surfdata_esmf/ctsm5.4.0/surfdata_ne30np4.pg3_hist_1850_78pfts_c250428.nc</fsurdat>
<fsurdat hgrid="ne3np4.pg3" sim_year="1850">
lnd/clm2/surfdata_esmf/ctsm5.3.0/surfdata_ne3np4.pg3_hist_1850_78pfts_c240908.nc</fsurdat>

Expand Down Expand Up @@ -1778,7 +1787,7 @@ lnd/clm2/surfdata_esmf/NEON/ctsm5.3.0/surfdata_1x1_NEON_TOOL_hist_2000_78pfts_c2

<!-- 78-pft landuse files -->
<flanduse_timeseries hgrid="0.9x1.25" sim_year_range="1850-2000"
>lnd/clm2/surfdata_esmf/ctsm5.3.0/landuse.timeseries_0.9x1.25_SSP2-4.5_1850-2100_78pfts_c240908.nc</flanduse_timeseries>
>lnd/clm2/surfdata_esmf/ctsm5.4.0/landuse.timeseries_0.9x1.25_hist_1850-2023_78pfts_c250428.nc</flanduse_timeseries>
<flanduse_timeseries hgrid="1.9x2.5" sim_year_range="1850-2000" use_crop=".true."
>lnd/clm2/surfdata_esmf/ctsm5.3.0/landuse.timeseries_1.9x2.5_SSP2-4.5_1850-2100_78pfts_c240908.nc</flanduse_timeseries>
<flanduse_timeseries hgrid="ne0np4.ARCTICGRIS.ne30x8" sim_year_range="1850-2000"
Expand Down Expand Up @@ -1808,7 +1817,7 @@ lnd/clm2/surfdata_esmf/NEON/ctsm5.3.0/surfdata_1x1_NEON_TOOL_hist_2000_78pfts_c2
<flanduse_timeseries hgrid="ne16np4.pg3" sim_year_range="1850-2000"
>lnd/clm2/surfdata_esmf/ctsm5.3.0/landuse.timeseries_ne16np4.pg3_SSP2-4.5_1850-2100_78pfts_c240908.nc</flanduse_timeseries>
<flanduse_timeseries hgrid="ne30np4.pg3" sim_year_range="1850-2000"
>lnd/clm2/surfdata_esmf/ctsm5.3.0/landuse.timeseries_ne30np4.pg3_SSP2-4.5_1850-2100_78pfts_c240908.nc</flanduse_timeseries>
>lnd/clm2/surfdata_esmf/ctsm5.4.0/landuse.timeseries_ne30np4.pg3_hist_1850-2023_78pfts_c250428.nc</flanduse_timeseries>

<flanduse_timeseries hgrid="C96" sim_year_range="1850-2000"
>lnd/clm2/surfdata_esmf/ctsm5.3.0/landuse.timeseries_C96_SSP2-4.5_1850-2100_78pfts_c240908.nc</flanduse_timeseries>
Expand Down
Loading
Loading