Skip to content

Commit

Permalink
Merge tag 'alpha-ctsm5.2.mksrf.25_ctsm5.1.dev174' into addclm60
Browse files Browse the repository at this point in the history
Update to ctsm5.1.dev174

Update to newer tag. Which also includes an externals
update which broke the build/run of mksurfdata_esmf.
As a result I added some additional unit-testing in
order to detect this sort of thing sooner.

 Conflicts:
	bld/namelist_files/namelist_defaults_ctsm.xml
	bld/unit_testers/build-namelist_test.pl
  • Loading branch information
ekluzek committed Mar 29, 2024
2 parents 35b8de7 + 5b30fda commit 75382da
Show file tree
Hide file tree
Showing 104 changed files with 2,918 additions and 1,022 deletions.
3 changes: 3 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ e4d38681df23ccca0ae29581a45f8362574e0630
a9d96219902cf609636886c7073a84407f450d9a
d866510188d26d51bcd6d37239283db690af7e82
0dcd0a3c1abcaffe5529f8d79a6bc34734b195c7
e096358c832ab292ddfd22dd5878826c7c788968
# Ran SystemTests and python/ctsm through black python formatter
5364ad66eaceb55dde2d3d598fe4ce37ac83a93c
8056ae649c1b37f5e10aaaac79005d6e3a8b2380
Expand All @@ -30,6 +31,7 @@ d866510188d26d51bcd6d37239283db690af7e82
8a168bb0895f4f2421608dd2589398e13a6663e6
183fc26a6691bbdf87f515dc47924a64be3ced9b
6fccf682eaf718615407d9bacdd3903b8786a03d
2500534eb0a83cc3aff94b30fb62e915054030bf
a0d014fae9550dd9ffbc934abd29ef16176f8208
c7b7ca1d94ac19abb9ecea9fb5b712ddbdd6645d
b565b55ce7a9f8d812a573d716a5fd3d78cfea81
Expand All @@ -38,3 +40,4 @@ de9a30bfbbec36f9dcacc4380005ab596da47af4
cda0cf1412212e6f4363e6e8eb39f74c944b454d
aa04d1f7d86cc2503b98b7e2b2d84dbfff6c316b
6c6f57e948bfa31e60b383536cc21663fedb8b70
9660667b1267dcd4150889f5f39db540158be74a
18 changes: 9 additions & 9 deletions Externals.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,22 @@ required = True
local_path = components/cism
protocol = git
repo_url = https://github.com/ESCOMP/CISM-wrapper
tag = cismwrap_2_1_96
tag = cismwrap_2_1_97
externals = Externals_CISM.cfg
required = True

[rtm]
local_path = components/rtm
protocol = git
repo_url = https://github.com/ESCOMP/RTM
tag = rtm1_0_78
tag = rtm1_0_79
required = True

[mosart]
local_path = components/mosart
protocol = git
repo_url = https://github.com/ESCOMP/MOSART
tag = mosart1_0_48
tag = mosart1_0_49
required = True

[mizuRoute]
Expand All @@ -34,7 +34,7 @@ hash = 34723c2
required = True

[ccs_config]
tag = ccs_config_cesm0.0.84
tag = ccs_config_cesm0.0.92
protocol = git
repo_url = https://github.com/ESMCI/ccs_config_cesm.git
local_path = ccs_config
Expand All @@ -44,18 +44,18 @@ required = True
local_path = cime
protocol = git
repo_url = https://github.com/ESMCI/cime
tag = cime6.0.175
tag = cime6.0.217_httpsbranch03
required = True

[cmeps]
tag = cmeps0.14.43
tag = cmeps0.14.50
protocol = git
repo_url = https://github.com/ESCOMP/CMEPS.git
local_path = components/cmeps
required = True

[cdeps]
tag = cdeps1.0.24
tag = cdeps1.0.28
protocol = git
repo_url = https://github.com/ESCOMP/CDEPS.git
local_path = components/cdeps
Expand All @@ -70,7 +70,7 @@ local_path = components/cpl7
required = True

[share]
tag = share1.0.17
tag = share1.0.18
protocol = git
repo_url = https://github.com/ESCOMP/CESM_share
local_path = share
Expand Down Expand Up @@ -98,4 +98,4 @@ tag = v1.0.8
required = False

[externals_description]
schema_version = 1.0.0
schema_version = 1.0.0
2 changes: 1 addition & 1 deletion Externals_CLM.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
local_path = src/fates
protocol = git
repo_url = https://github.com/NGEET/fates
tag = sci.1.71.0_api.33.0.0
tag = sci.1.72.2_api.34.0.0
required = True

[externals_description]
Expand Down
14 changes: 8 additions & 6 deletions bld/CLMBuildNamelist.pm
Original file line number Diff line number Diff line change
Expand Up @@ -784,7 +784,8 @@ sub setup_cmdl_fates_mode {
my @list = ( "fates_spitfire_mode", "use_fates_planthydro", "use_fates_ed_st3", "use_fates_ed_prescribed_phys",
"use_fates_cohort_age_tracking","use_fates_inventory_init","use_fates_fixed_biogeog",
"use_fates_nocomp","use_fates_sp","fates_inventory_ctrl_filename","use_fates_logging",
"fates_parteh_mode","use_fates_tree_damage","fates_seeddisp_cadence","use_fates_luh","fluh_timeseries" );
"fates_parteh_mode","use_fates_tree_damage","fates_history_dimlevel","fates_seeddisp_cadence",
"use_fates_luh","fluh_timeseries" );
# dis-allow fates specific namelist items with non-fates runs
foreach my $var ( @list ) {
if ( defined($nl->get_value($var)) ) {
Expand Down Expand Up @@ -2040,7 +2041,7 @@ sub setup_logic_snicar_methods {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'do_sno_oc' );

# Error checking in loop
my %supportedSettings = ( 'snicar_solarspec' => "'mid_latitude_winter'", 'snicar_dust_optics' => "'sahara'", 'snicar_numrad_snw' => '5', 'snicar_snobc_intmix' => '.false.', 'snicar_snodst_intmix' => '.false.', 'snicar_use_aerosol' => '.true.', 'do_sno_oc' => '.false.' );
my %supportedSettings = ( 'snicar_solarspec' => "'mid_latitude_winter'", 'snicar_dust_optics' => "'sahara'", 'snicar_numrad_snw' => '5', 'snicar_snodst_intmix' => '.false.', 'snicar_use_aerosol' => '.true.', 'do_sno_oc' => '.false.' );
keys %supportedSettings;
while ( my ($key, $val) = each %supportedSettings ) {
my $var = $nl->get_value($key);
Expand All @@ -2058,13 +2059,13 @@ sub setup_logic_snicar_methods {
$log->warning("$key1=$val1a and $val1b are supported; $var1 is EXPERIMENTAL, UNSUPPORTED, and UNTESTED!");
}

# snicar_snobc_intmix and snicar_snodst_intmix cannot both be true
# snicar_snobc_intmix and snicar_snodst_intmix cannot both be true, however, they can both be false
my $key1 = 'snicar_snobc_intmix';
my $key2 = 'snicar_snodst_intmix';
my $var1 = $nl->get_value($key1);
my $var2 = $nl->get_value($key2);
my $val1 = $supportedSettings{$key1}; # supported value for this option
if (($var1 eq $var2) && ($var1 ne $val1)) {
my $val2 = $supportedSettings{$key2}; # supported value for this option
if (($var1 eq $var2) && ($var2 ne $val2)) {
$log->warning("$key1 = $var1 and $key2 = $var2 do not work together!");
}
}
Expand Down Expand Up @@ -4459,7 +4460,8 @@ sub setup_logic_fates {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'fates_paramfile', 'phys'=>$nl_flags->{'phys'});
my @list = ( "fates_spitfire_mode", "use_fates_planthydro", "use_fates_ed_st3", "use_fates_ed_prescribed_phys",
"use_fates_inventory_init","use_fates_fixed_biogeog","use_fates_nocomp","fates_seeddisp_cadence",
"use_fates_logging","fates_parteh_mode", "use_fates_cohort_age_tracking","use_fates_tree_damage","use_fates_luh" );
"use_fates_logging","fates_parteh_mode", "use_fates_cohort_age_tracking","use_fates_tree_damage",
"use_fates_luh","fates_history_dimlevel" );
foreach my $var ( @list ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, $var, 'use_fates'=>$nl_flags->{'use_fates'},
'use_fates_sp'=>$nl_flags->{'use_fates_sp'} );
Expand Down
15 changes: 9 additions & 6 deletions bld/namelist_files/namelist_defaults_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,9 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<reset_snow_glc_ela>1.e9</reset_snow_glc_ela>

<snow_cover_fraction_method>SwensonLawrence2012</snow_cover_fraction_method>

<snow_thermal_cond_method>Jordan1991</snow_thermal_cond_method>
<snow_thermal_cond_method phys="clm5_1">Sturm1997</snow_thermal_cond_method>

<!-- Default glacier behavior is:
Mountain glaciers: single_at_atm_topo
Expand Down Expand Up @@ -437,10 +439,10 @@ 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/ctsm51_params.c240207b.nc</paramfile>
<paramfile phys="clm5_1" >lnd/clm2/paramdata/ctsm51_params.c240207b.nc</paramfile>
<paramfile phys="clm5_0" >lnd/clm2/paramdata/clm50_params.c240207b.nc</paramfile>
<paramfile phys="clm4_5" >lnd/clm2/paramdata/clm45_params.c240207b.nc</paramfile>
<paramfile phys="clm6_0" >lnd/clm2/paramdata/ctsm51_params.c240208.nc</paramfile>
<paramfile phys="clm5_1" >lnd/clm2/paramdata/ctsm51_params.c240208.nc</paramfile>
<paramfile phys="clm5_0" >lnd/clm2/paramdata/clm50_params.c240208.nc</paramfile>
<paramfile phys="clm4_5" >lnd/clm2/paramdata/clm45_params.c240208.nc</paramfile>

<!-- ================================================================== -->
<!-- FATES default parameter file -->
Expand Down Expand Up @@ -1593,7 +1595,8 @@ lnd/clm2/surfdata_esmf/NEON/surfdata_1x1_NEON_TOOL_hist_78pfts_CMIP6_simyr2000_c
<snicar_solarspec >mid_latitude_winter</snicar_solarspec>
<snicar_dust_optics >sahara</snicar_dust_optics>
<snicar_snodst_intmix>.false.</snicar_snodst_intmix>
<snicar_snobc_intmix >.false.</snicar_snobc_intmix>
<snicar_snobc_intmix>.false.</snicar_snobc_intmix>
<snicar_snobc_intmix phys="clm5_1">.true.</snicar_snobc_intmix>
<snicar_use_aerosol >.true.</snicar_use_aerosol>
<do_sno_oc >.false.</do_sno_oc>

Expand Down Expand Up @@ -1969,7 +1972,7 @@ lnd/clm2/surfdata_esmf/NEON/surfdata_1x1_NEON_TOOL_hist_78pfts_CMIP6_simyr2000_c
<use_fates_luh use_fates=".true.">.false.</use_fates_luh>
<fates_parteh_mode use_fates=".true.">1</fates_parteh_mode>
<fates_seeddisp_cadence use_fates=".true.">0</fates_seeddisp_cadence>

<fates_history_dimlevel use_fates=".true.">2,2</fates_history_dimlevel>
<use_fates_nocomp use_fates=".true." use_fates_sp=".true.">.true.</use_fates_nocomp>
<use_fates_nocomp use_fates=".true." >.false.</use_fates_nocomp>
<use_fates_fixed_biogeog use_fates=".true." use_fates_sp=".true.">.true.</use_fates_fixed_biogeog>
Expand Down
13 changes: 13 additions & 0 deletions bld/namelist_files/namelist_definition_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -777,6 +777,19 @@ Full pathname to the inventory initialization control file.
(Only relevant if FATES is on).
</entry>

<entry id="fates_history_dimlevel" type="integer(2)" category="physics"
group="clm_inparm" valid_values="0,1,2" >
Setting for what types of FATES history to be allocate and
calculated at the dynamics timestep (1st integer) and the
model timestep (2nd integer). This must be consistent with
hist_fincl*, ie output variables must not be listed if the
output level is not enabled.
0 = no fates history variables are calculated or allocated
1 = only time x space (3d) fates history variables allowed
2 = multiplexed dimensioned fates history is also allowed
(Only relevant if FATES is on)
</entry>

<!-- This may eventually migrate to the dynamic_subgrid group-->
<entry id="use_fates_luh" type="logical" category="physics"
group="clm_inparm" valid_values="" >
Expand Down
19 changes: 4 additions & 15 deletions bld/unit_testers/build-namelist_test.pl
Original file line number Diff line number Diff line change
Expand Up @@ -163,10 +163,10 @@ sub cat_and_create_namelistinfile {
#
# Figure out number of tests that will run
#
my $ntests = 3205;
my $ntests = 2755;

if ( defined($opts{'compare'}) ) {
$ntests += 2258;
$ntests += 1842;
}
plan( tests=>$ntests );

Expand All @@ -190,8 +190,7 @@ sub cat_and_create_namelistinfile {
&make_config_cache($phys);

my $DOMFILE = "$inputdata_rootdir/atm/datm7/domain.lnd.fv0.9x1.25_gx1v6.090309.nc";
my $real_par_file = "user_nl_ctsm_real_parameters";
my $bldnml = "../build-namelist -verbose -csmdata $inputdata_rootdir -configuration clm -structure standard -glc_nec 10 -no-note -output_reals $real_par_file";
my $bldnml = "../build-namelist -verbose -csmdata $inputdata_rootdir -configuration clm -structure standard -glc_nec 10 -no-note";
if ( $opts{'test'} ) {
$bldnml .= " -test";
}
Expand All @@ -201,7 +200,7 @@ sub cat_and_create_namelistinfile {
system( "/bin/rm $tempfile" );
}

my @files = ( "lnd_in", $tempfile, $real_par_file );
my @files = ( "lnd_in", $tempfile );
my $cwd = `pwd`;
chomp( $cwd );
my $cfiles = NMLTest::CompFiles->new( $cwd, @files );
Expand Down Expand Up @@ -269,13 +268,11 @@ sub cat_and_create_namelistinfile {
$cfiles->copyfiles( "most_options", $mode );
# Compare to default
$cfiles->doNOTdodiffonfile( "lnd_in", "default", $mode );
$cfiles->doNOTdodiffonfile( "$real_par_file", "default", $mode );
$cfiles->doNOTdodiffonfile( "$tempfile", "default", $mode );
$cfiles->comparefiles( "default", $mode );
# Compare to baseline
if ( defined($opts{'compare'}) ) {
$cfiles->dodiffonfile( "lnd_in", "most_options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "most_options", $mode );
$cfiles->doNOTdodiffonfile( "$tempfile", "most_options", $mode );
$cfiles->comparefiles( "most_options", $mode, $opts{'compare'} );
}
Expand Down Expand Up @@ -358,7 +355,6 @@ sub cat_and_create_namelistinfile {
}
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$base_options $options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$base_options $options", $mode );
$cfiles->comparefiles( "$base_options $options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -408,7 +404,6 @@ sub cat_and_create_namelistinfile {
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "lnd_in", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -445,7 +440,6 @@ sub cat_and_create_namelistinfile {
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "lnd_in", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -484,7 +478,6 @@ sub cat_and_create_namelistinfile {
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "lnd_in", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -1461,7 +1454,6 @@ sub cat_and_create_namelistinfile {
$cfiles->shownmldiff( "default", "standard" );
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -1533,7 +1525,6 @@ sub cat_and_create_namelistinfile {
$cfiles->shownmldiff( "default", "standard" );
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand All @@ -1554,7 +1545,6 @@ sub cat_and_create_namelistinfile {
$cfiles->shownmldiff( "default", "standard" );
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
Expand Down Expand Up @@ -1763,7 +1753,6 @@ sub cleanup {
my $type = shift;

print "Cleanup files created\n";
system( "/bin/rm env_run.xml $real_par_file" );
if ( defined($type) ) {
if ( $type eq "config" ) {
system( "/bin/rm config_cache.xml" );
Expand Down
55 changes: 0 additions & 55 deletions cime_config/testdefs/ExpectedTestFails.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,6 @@
</test>

<!-- cesm3_dev test suite failures -->
<test name="ERP_D_Ld9.ne30pg3_t232.IHistClm51BgcCrop.derecho_intel.clm-clm51cam6LndTuningMode">
<phase name="RUN">
<status>FAIL</status>
<issue>#2268</issue>
</phase>
</test>

<!-- aux_clm test suite failures -->
<test name="SMS_D_Ld1_Mmpi-serial_Vmct.f45_f45_mg37.I2000Clm50SpRs.izumi_gnu.clm-ptsRLA">
Expand All @@ -73,41 +67,6 @@
</phase>
</test>

<test name="FUNITCTSM_P1x1.f10_f10_mg37.I2000Clm50Sp.derecho_intel">
<phase name="RUN">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#131</issue>
</phase>
</test>

<test name="ERS_D_Mmpi-serial_Ld5.5x5_amazon.I2000Clm50FatesRs.derecho_intel.clm-FatesCold">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="ERS_D_Mmpi-serial_Ld5.5x5_amazon.I2000Clm51FatesRs.derecho_intel.clm-FatesCold">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="SMS_D_Ld1_Mmpi-serial.f45_f45_mg37.I2000Clm50SpRs.derecho_intel.clm-ptsRLA">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="SMS_D_Lm1_Mmpi-serial.CLM_USRDAT.I1PtClm50SpRs.derecho_intel.clm-USUMB_nuopc">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="SMS_Ld10_D_Mmpi-serial.CLM_USRDAT.I1PtClm51Bgc.derecho_gnu.clm-default--clm-NEON-NIWO">
<phase name="SHAREDLIB_BUILD">
<status>FAIL</status>
Expand Down Expand Up @@ -207,20 +166,6 @@
</phase>
</test>

<test name="ERS_D_Mmpi-serial_Ld5.1x1_brazil.I2000Clm50FatesCruRsGs.derecho_intel.clm-FatesCold">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="SMS_Lm3_D_Mmpi-serial.1x1_brazil.I2000Clm50FatesCruRsGs.derecho_intel.clm-FatesColdHydro">
<phase name="MODEL_BUILD">
<status>FAIL</status>
<issue>ESMCI/ccs_config_cesm#130</issue>
</phase>
</test>

<test name="ERS_D_Ld30.f45_f45_mg37.I2000Clm50FatesCruRsGs.izumi_nag.clm-FatesColdPRT2">
<phase name="RUN">
<status>PEND</status>
Expand Down
Loading

1 comment on commit 75382da

@ekluzek
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the commit that brought in #2492. This added new settings for clm5_1 that weren't there when I did the original work in namelist_defaults_ctsm.xml. So my previous checking of everything clm5_1 there didn't notice this update.

Please sign in to comment.