clm5/doc/ChangeLog
2024-05-09 15:14:01 +08:00

17916 lines
636 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

===============================================================
Tag name: ctsm5.2.003
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu May 2 14:06:54 MDT 2024
One-line Summary: Merge b4b-dev
Purpose and description of changes
----------------------------------
Brings in 4 PRs from b4b-dev to master:
- Regional CTSM Simulations and Capability of Creating Mesh Files (ESCOMP/CTSM#1892; Negin Sobhani and Adrianna Foster)
- Add line about documentation in PR template (ESCOMP/CTSM#2488; Sam Rabin)
- CTSM5.2 2000 fsurdat T42 64x128 file (ESCOMP/CTSM#2495; Sam Levis)
- Move plumber2 scripts to python directory (ESCOMP/CTSM#2505; Teagan King)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm6_0
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
List of CTSM issues fixed (include CTSM Issue # and description):
- Resolves ESCOMP/CTSM#1513: Need a process to subset ESMF mesh files from global ones for regional grids
- Resolves ESCOMP/CTSM#1773: High resolution regional simulations
- Resolves ESCOMP/CTSM#2187: Move new PLUMBER2 scripts to python directory to enable python testing
- Resolves ESCOMP/CTSM#2486: Temporarily add back a T42 dataset for CAM
Notes of particular relevance for users
---------------------------------------
Changes to documentation:
- Adds documentation for making mesh files
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Adds testing for mesh-making Python scripts
- Adds testing for plumber2_surf_wrapper
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Other details
-------------
Pull Requests that document the changes (include PR ids):
- ESCOMP/CTSM#2513: Merge b4b-dev 2024-05-02
- Constituent PRs:
- ESCOMP/CTSM#1892: Regional CTSM Simulations and Capability of Creating Mesh Files (https://github.com/ESCOMP/CTSM/pull/1892)
- ESCOMP/CTSM#2488: Add line about documentation in PR template (https://github.com/ESCOMP/CTSM/pull/2488)
- ESCOMP/CTSM#2495: CTSM5.2 2000 fsurdat T42 64x128 file (https://github.com/ESCOMP/CTSM/pull/2495)
- ESCOMP/CTSM#2505: Move plumber2 scripts to python directory (https://github.com/ESCOMP/CTSM/pull/2505)
===============================================================
===============================================================
Tag name: ctsm5.2.002
Originator(s): glemieux (Gregory Lemieux, LBNL, glemieux@lbl.gov)
Date: Fri 26 Apr 2024 11:13:46 AM MDT
One-line Summary: FATES default allometry parameter file update
Purpose and description of changes
----------------------------------
This updates the default FATES parameter file which includes a number
of changes:
- Default global tree pft allometry update
- New allometric mode options
- New scaling coefficients for alternative leaf maintenance respiration
- New switch to control the use of host land model day length scaling factor
This also incorporates some testing additions and clean up, including:
- Removes cheyenne expected failure tests that have been converted to derecho
- Adds a 5x5_amazon test to aux_clm and the expected failures list
- Temporarilry converts a fates 5x5_amazon test to f10 test
- Adds namelist check and corresponding unit test to make sure fates hydro
and fates satellite phenology mode can not be used together
The FATES externals tag is also updated which includes a number of bug fixes
and the addition of new history output.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm6_0
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
NOTE: FATES hydro mode and FATES satellite phenology mode can not
be used in conjunction as of this API update
Changes made to namelist defaults (e.g., changed parameter values):
FATES parameter file default updated to fates_params_api.35.0.0_12pft_c240326.nc
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
A 5x5_amazon smoke test, not using MPI-serial has been added to the test list
and list of expected failures to track issue #2423.
Out-of-date cheyenne tests on the expected failure list have been removed.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: Yes, only for FATES configurations
Summarize any changes to answers, i.e.,
- what code configurations: FATES
- what platforms/compilers: ALL
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
The FATES externals update incorporates a number of bug fixes and the new allometry default
paramters result in a new scientific baseline.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
FATES: sci.1.72.2_api.34.0.0 -> sci.1.73.0_api.35.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#2436 -- FATES API35 parameter file update
NGEET#1093 -- Update default allometry parameters for tree PFTs
NGEET#1128 -- New allometric modes
NGEET#1149 -- Alternative vertical scaling of leaf maintenance respiration
NGEET#1161 -- Adding day length factor switch
===============================================================
===============================================================
Tag name: ctsm5.2.001
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Mon 22 Apr 2024 02:10:55 PM MDT
One-line Summary: Merge b4b-dev
Purpose and description of changes
----------------------------------
Some fixes for run_neon that came up in ctsm5.1.dev172.
Small bug fix for units of vector format hillslope hydrology.
Start adding PLUMBER2 users-mods (NOT functional)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm6_0
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
List of CTSM issues fixed (include CTSM Issue # and description) [one per line]:
#2470 -- NEON case won't build
#2471 -- run_neon calendar issues
#2474 -- externals prevent creation of directory
#2414 -- Correct subset_data error checking
#2437 -- externals update broke NEON features
#2435 -- Issues with run_neon with the --experiment flag starting in ctsm5.1.dev172
Partial for #2137 -- Create csv file and user-mod directories for PLUMBER2 sites
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
NOTE: The new PLUMBER2 user-mods can NOT be used right now!
More changes need to happen before PLUMBER2 sites can be run
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist item: lai_dtlimit (when use_lai_streams is on)
User-mod directories are coming in for: PLUMBER2
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Introduces some NCL scripts for PLUMBER2 that we need to convert to python
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
@ekluzek @olyson @slevis-lmwg @TeaganKing @wwieder
#2155 -- PLUMBER2 plumbing (csv file, wrapper script, usermods, and scripts).
#2477 -- One-line fix for izumi NEON-MOAB test error introduced in #2472
#2472 -- B4b neon tag: simple bfb
#2475 -- fix units for vector hh output
#2435 -- experiment bug fix
===============================================================
===============================================================
Tag name: ctsm5.2.0
Originator(s): many (see below)
Date: Sat 20 Apr 2024 12:33:33 AM MDT
One-line Summary: New surface datasets and new mksurfdata_esmf tool to create them
Purpose and description of changes
----------------------------------
Changes to CTSM:
================
All new surface datasets. Transient urban and lake by default turned on for transient cases.
Ocean is run as baresoil rather than wetland (for clm6_0). The urban streams file was also
updated. The new surface datasets have new updated input datasets (see below).
Update the README files.
New surface datasets:
=====================
The new surface datasets are incompatible with previous versions (for example the ctsm5.1 series)
ctsm5.2.0 and following versions also can NOT use the previous ctsm5.1 datasets.
See the section below about the new datasets used in their creation. Improvements in how landunits
on coastal areas was also done.
The following fields were added and removed to the list of fields on the datasets.
Fields added:
ORGC, BULK, CFRAG, PHAQ (soil data) (currently NOT used by CTSM)
mapunits (map units from the soil dataset)
LANDFRAC_MKSURFDATA (for reference NOT used by CTSM)
PCT_OCEAN (previously PCT_WETLAND was used)
Fields removed:
AREA, PFTDATA_MASK
New mksurfdata_esmf Tool:
=========================
Implement a parallel version of mksurfdata (mksurfdata_esmf) that uses ESMF regridding directly
in mksurfdata so that offline mapping files don't have to be created as a separate step. This
allows mksurfdata to create surface datasets at much higher resolutions
The build for the tool is based on the CESM/CIME build system and uses cmake. This allows the build
to be kept up with changes in CESM. Currently it's only setup and working on Derecho. But, this design
will enable it to be built and run on any CESM supported machine (or a machine that a user ports to).
Any input grid from ccs_config can be used, or the user can supply their own mesh file to define
the output grid. The user no longer has to add to the list of valid resolutions as in mksurfdata_map.
Creation of supported single point datasets. These datasets are created through the use of subset_data.
Test datasets for dynUrban, dynLake, and dynPFT is done with a simple NCO script.
All datasets can be easily made by running "make all" in the tools/mksurfdata_esmf directory.
For instructions see:
tools/mksurfdata_esmf/README.md
New input datasets to mksurfdata_esmf:
======================================
New soil dataset: ISRIC/WISE dataset Batjes (2016) https://doi.org/10.1016/j.geoderma.2016.01.034
New PFT, soil-color, LAI dataset: Created by Lawrence P.J. 2022
New Glacier datasets: Glacier outlines from RGI version 6 (Arendt et al., 2017).
vector data for GrIS and AIS retrieved from BedMachine version 4 and version 2 (Morlighem et al., 2017, 2020), respectively.
30-arcsec topography/land mask retrieved GMTED2010 (Danielson and Gesch, 2011).
New urban datasets: Gao and O'Neill (2021) and Gao and Pesaresi (2022), Oleson and Feddema (2020)
New lake datasets: HydroLake: Messager et. al. (2016)
Contributors
------------
@mvertens @ekluzek @slevis-lmwg @jedwards4b @billsacks @wwieder @lawrencepj1 @negin513 @dlawrenncar @olyson
@keerzhang1 @fang-bowen @Face2sea @adamrher @samsrabin
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm6_0 (new)
[x] clm5_1
[x] clm5_0
[x] ctsm5_0-nwp
[x] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #1903 Create new surface datasets, CTSM5.2 branch
Fixes #1716 Wetland area and areas of landunits in coastal grid cells
should be determined more rigorously
Fixes #1556 Remake PCT_PFT raw datasets to NOT force landunit area to 100%,
and some other fixes needed to PCT_PFT raw datasets
Fixes #1878 Convert wetlands to bare ground
Fixes #2131 Add a "successfully completed" message to mksurfdata_esmf when
the landuse.timeseries file is made
Fixes #2218 CTSM5.2 branch dies weirdly when clm5.0/ctsm5.1 datasets are
used -- die with an error
Fixes #1483 hcru surface datasets
Fixes #2228 sys test requirements for mksurfdata_esmf
Fixes #90 Remove need for fatmgrid
Fixes #80 Improve modularity of mksurfdata_map
Fixes #1878 Convert wetlands to bare-ground
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
These surface datasets can NOT be used in previous versions of the model
Older surface datasets can NOT be used with this model version
IMPORTANT NOTE FOR USERS FOR REGIONAL CASES:
Because of this issue:
https://github.com/ESCOMP/CTSM/issues/2430
We recommend that users use subset_data to subset your region from a global
grid. This could mean creating a global grid at the resolution you need (if
not standard) and then use subset_data on it to get the region of
interest.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New CLM_PHYSICS_VERSION option of clm6_0 added (use it rather than clm5_1)
New compsets for Clm60 added
New namelist item: convert_ocean_to_land (default true for clm5_1 and clm6_0 physics)
Changes made to namelist defaults (e.g., changed parameter values):
clm5_1 physics options copied to clm6_0
do_transient_lake and do_transient_urban set to TRUE for transient cases
Changes to the datasets (e.g., parameter, surface or initial files):
New ctsm6.0 parameter file copied from the ctsm5.1 verison
fsurdat and landuse.timeseries datasets all updated
urbantv streams datasets updated
Some initial condition datasets updated to go with the new datasets
Things being deprecated (which will be removed):
manage_externlas will be removed for git submodules
mkmapgrids and other NCL scripts
tools/test directory
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
The namelist_defaults_ctsm.xml file was simplified which should make it easier to work with
Changes to tests or testing:
New system test in prealpha and aux_clm to create a surface dataset and run with it
ctsm_sci testlist updated to run all CESM3 supported datasets
See this document for the list of supported grids:
https://docs.google.com/spreadsheets/d/1Osq56e423CF107zhoNQ0VS7-iH_JXLF9AtCvBdXyfJ4
Testing summary: regular ctsm_sci fates mosart rtm tools python
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS (1396 tests compare different because of the namelist changes)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
fates tests: (fates-sci.1.72.2_api.34.0.0-ctsm5.2.0)
derecho ----- OK
izumi ------- OK
any other testing (give details below):
mksurfdata_esmf
derecho ---- run "make all" to create all datasets (completes in 2-6 hours)
(crop-global-SSP2-4.5-ne30 was longest at 6 hr, most completed in 3.5 hours)
ctsm_sci (ctsm_sci-ctsm5.2.0)
derecho ---- PASS
rtm (rtm1_0_79_ctsm5.2.0)
derecho ---- PASS
mosart (mosart1_0_49_ctsm5.2.0)
derecho ---- OK
izumi ----- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here: ctsm5.1.dev176
Answer changes
--------------
Changes answers relative to baseline: Yes!
Summarize any changes to answers, i.e.,
- what code configurations: All
- what platforms/compilers: All
- nature of change: new climate
Discussion on the new datasets and new results are here:
https://github.com/ESCOMP/CTSM/discussions/1868
It includes case comparision
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#2464 -- Update ctsm5.2 branch to ctsm5.1.dev176 and some small updates
#2417 -- Addition of clm6_0 physics option
#2447 -- Update ctsm5.2 branch to ctsm5.1.dev175
#2427 -- Merge ctsm5.2 branch up to ctsm5.1.dev174
#2424 -- Clean up "make all" for 5.2 branch tag: bfb type: code cleanup
#2318 -- Workaround for transient Smallville tests #1673 + testing all new datasets
#1586 -- Enable the mksurfdata_map to generate landuse_timeseries for dynamic urban and lake
#2327 -- Working on Derecho
#2008 -- Get the Makefile working for CTSM5.2 surface dataset creation
#2164 -- Distinguish between ocean and wetland in fsurdat files
#2016 -- Preparing alpha-ctsm5.2.mksrf.16_ctsm5.1.dev123 tag
#1946 -- Newest raw datasets for pft, lai, soilcolor
#1873 -- Ctsm52 various updates
#1920 -- mksurfdata: Rework mapping of landunits to handle coastal areas more rigorously
#1890 -- Add option to convert wetlands to land; apply it by default for CLM51 physics
#1866 -- Remove pftmask from history and PFTDATA_MASK from fsurdat files
#1732 -- New soiltex for ctsm5.2.mksurfdata
#1853 -- Implement GaoOneill raw urban datasets and OlesonFeddema urban
properties into mksurfdata_esmf.
#1796 -- Add consistency checks for mesh_nx mesh_ny relative to mesh_file in
gen_mksurfdata_namelist.py
#1748 -- Enable mksurfdata esmf to build and run on casper and izumi
#1756 -- Add mksurfdata_esmf system test to test-suite tag: support tools only
#1721 -- cmake build working on cheyenne for mksurfdata_esmf
#1746 -- Change repo_url from git@... to https:... for ccs_config
#1728 -- Accelerate generation of transient data with mksurfdata_esmf
#1663 -- New parallel surface dataset generation with online regridding
===============================================================
===============================================================
Tag name: ctsm5.1.dev176
Originator(s): afoster (Adrianna Foster,UCAR/TSS,303-497-1728)
Date: Thu 04 Apr 2024 06:29:36 PM MDT
One-line Summary: Merge b4b-dev
Purpose and description of changes
----------------------------------
change needed for the addition of a dglc component in cdeps #2449
Move the dust emission source function soil erodibility for the Zender scheme from CAM to CTSM #1967
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
CTSM issues fixed (include CTSM Issue #):
Closes #2222 - Fixing Negative Ice Fluxes from Ocean to Glacier
Closes #2117 - Add LND_TUNING_MODE for CAM4, CAM5, CAM7
Addresses #2149 - Change handling of LND_TUNING_MODE so user is warned of which option is used, add more supported options
Addresses part of #1836 - Move the soil erodibility dataset dust emission source function from CAM to CTSM
Helps with ESCOMP/CAM#651 - Move the dust emission source function and global tuning factor from CAM to CTSM
Known bugs introduced in this tag (include issue #):
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): new namelist options for dust
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS
regular tests
derecho ----- OK
izumi ------- OK
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull):
https://github.com/ESCOMP/CTSM/pull/2455
===============================================================
===============================================================
Tag name: ctsm5.1.dev175
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Thu 21 Mar 2024 05:49:04 PM MDT
One-line Summary: merge-b4bdev-20240321
Purpose and description of changes
----------------------------------
Merge master 20240313 #2421 (Update of externals to what's expected in cesm2_3_beta17)
Fix for cray compiler format issue #2391
Remove LILAC references to mct #2374
Refactoring of neon_site into tower_site and neon_site #2363
Fix misplaced stopf in CNDriverMod.F90 #2358
Update some PE layouts on Derecho #2429
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Listed in Purpose and Description above
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
See #2421 for update of externals to what's expected in cesm2_3_beta17
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2431
===============================================================
===============================================================
Tag name: ctsm5.1.dev174
Originator(s): olyson (Keith Oleson,UCAR/TSS)
Date: Thu 14 Mar 2024 04:56:37 PM MDT
One-line Summary: Improve vegetation health at high latitudes
Purpose and description of changes
----------------------------------
The corresponding changes:
Remove snicar_snobc_intmix from EXPERIMENTAL endrun (allow it to be true)
Remove flg_snoage_scl in SNICAR such that xdrdt can have an effect (fixes #2298 )
New parameter file and namelist values for clm5_1:
- snow_thermal_cond_method = Sturm1997 (default for clm5_1)
- snicar_snobc_intmix = .true. (default for clm5_1)
- ctsm51_params.c240208.nc is the new CTSM parameter file (changes: froot_leaf(11:12)=1.2, FUN_fracfixers(11:12)=1, xdrdt=5, scvng_fct_mlt_sf=0.5, snw_rds_refrz=1500, fresh_snw_rds_max=400)
- New history fields for coupler history verification (default off)
- Add snow5d_thresh_for_onset to parameter file, set to 0.2 for clm51 and 0.1 (unchanged) for clm50 and clm45.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2298
Fixes LMWG_dev discussion #3
New bug discovered or introduced:
Relevant post appears in #2348 on 2024/3/14
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist defaults including new parameter files:
ctsm51_params.c240208.nc
clm50_params.c240208.nc
clm45_params.c240208.nc
ctsm51_ciso_cwd_hr_params.c240208.nc
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
any other testing (give details below):
Keith Oleson replicated simulation in LMWG_dev issue #51 as bfb when
snow5d_thresh_for_onset on ctsm51_ciso_cwd_hr_params.c240208.nc was set
to original value of 0.1.
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: clm51
- what platforms/compilers: all
- nature of change: new climate at high latitudes
See LMWG_dev discussion #3 and simulations discussed therein,
including (though possibly not limited to) LMWG_dev issues #51, 52, 54, 57.
slevis will add this tag with the label "SIGNIFICANT" to the
Answer-changing-tags wiki:
https://github.com/ESCOMP/CTSM/wiki/Answer-changing-tags
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2348
===============================================================
===============================================================
Tag name: ctsm5.1.dev173
Originator(s): rgknox (Ryan Knox,LAWRENCE BERKELEY NATIONAL LABORATORY)
Date: Wed 13 Mar 2024 04:46:37 PM MDT
One-line Summary: New FATES namelist variable, fates_history_dimlevel
Purpose and description of changes
----------------------------------
This set of changes introduces a new namelist setting that allows more control over fates history diagnostics. This setting, fates_history_dimlevel accepts two integers, comma-delimited, from 0-2. The first specifies the history output dimension level for high-frequency output (ie model timestep) and the second is for output at the dynamics timestep. A value of 0 indicates no history variables should be processed. A value of 1 indicates that only site-level mean values should be processed. A value of 2 indicates that all variables, including those that use an extra dimension should be processed. This is different from adding and excluding history variable names from the namelist, in that these settings not only omit variables from the output file, but they prevent their allocations and calculations all together. Processing history diagnostics in FATES takes a non-trivial amount of time.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
These changes have no non-trivial impacts on any scientific configurations, this is a refactor.
Bugs fixed
----------
No bugs fixed, feature addition only.
Notes of particular relevance for users
---------------------------------------
Users should be aware of the new namelist setting fates_history_dimlevel. Omitting this setting will default to a level of "2" which enables all output and should maintain existing model behavior.
Substantial timing or memory changes: The FATES model is somewhere on the order of 10% faster for level 0 and 1, versus 2, for large gridded runs with non satellite phenology, on derecho.
Notes of particular relevance for developers:
---------------------------------------------
None of note.
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - OK (64 fates tests differ)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
derecho ----- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here: (used ctsm5.1.dev172)
Answer changes
--------------
Answer changes for FATES tests were detected. All diffs were small enough to be consistent with order of operations changes, with the exception of some variables that were updated to have ignore values used for non-vegetated patches instead of zero.
===============================================================
===============================================================
Tag name: ctsm5.1.dev172
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Tue 12 Mar 2024 11:59:48 PM MDT
One-line Summary: Merge b4b-dev
Purpose and description of changes
----------------------------------
Update of externals to what's expected in cesm2_3_beta17. Some documentation updates including a rebuild
of the documentation and updating how images are handled with git lfs. Improvements to the documentation for
residue removal and tillage for prognostic crops.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2351 Update to cesm2_3_beta17 externals
Fixes #2380 ctsm_pylib on izumi can use python3.7.9
Fixes #2331 py_env_create fails on izumi
Fixes #1910 modify_singlept_neon on izumi
Fixes #1658 malformed file on izumi
Fixes #2412 Check current directory isn't being removed in run_neon
Notes of particular relevance for users
---------------------------------------
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
ccs_config config_machines.xml files were updated from v2 to v3
The timing and memory usage information was moved from drv.log to med.log for nuopc runs.
This allows the creating of the baselines cpl-mem.log and cpl-tput.log files.
SMP_PRESENT removed and BUILD_THREADED added.
Changes to tests or testing:
Bring back DEBUG testing with intel for mpi-serial cases.
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
clm_pymods test suite on derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: no bit-for-bit
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
manage externals
cismwrap_2_1_97
= rtm1_0_79
mosart1_0_49
ccs_config_cesm0.0.92
cime6.0.217_httpsbranch03
cmeps0.14.50
cdeps1.0.28
share1.0.18
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#2396 Explain residue removal
#2385 Update externals
#2394 Fix tillage instructions and images
#2389 Minor docs updates
===============================================================
===============================================================
Tag name: ctsm5.1.dev171
Originator(s): olyson (Keith Oleson,UCAR/TSS)
Date: Mon 04 Mar 2024 10:33:55 AM MST
One-line Summary: Set initial t_soisno=272 for soils and 274K for urban road
Purpose and description of changes
----------------------------------
Issue #2338 and PR #2355 explain:
Soil temperature initialization not implemented correctly in
ctsm5.1.dev058 and thus subsequent tags.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2338
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
SMS_Lm3_D_Mmpi-serial.1x1_brazil.I2000Clm50FatesCruRsGs.izumi_intel.clm-FatesColdHydro
added to expected failures, issue #2373, to be revisited when #2384 is
resolved.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: all
- what platforms/compilers: all
- nature of change: larger than roundoff but not climate-changing
The original diagnostics for this change are here:
https://webext.cgd.ucar.edu/I2000/ctsm51c6_PPEn08ctsm51d023_2deg_GSWP3V1_Sparse400_cs_ts_tsoisno272_2000AD/lnd/ctsm51c6_PPEn08ctsm51d023_2deg_GSWP3V1_Sparse400_cs_ts_tsoisno272_2000AD.381_400-ctsm51c6_PPEn08ctsm51d023_2deg_GSWP3V1_Sparse400_cs_ts_2000AD.381_400/setsIndex.html
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2355
===============================================================
===============================================================
Tag name: ctsm5.1.dev170
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Wed Feb 28 11:01:43 MST 2024
One-line Summary: Add hillslope hydrology
Purpose and description of changes
----------------------------------
Changes include multiple soil columns per vegetated landunit, additional meteorological downscaling, new subsurface lateral flow equations, and a hillslope routing parameterization.
Described in:
Swenson, S. C., Clark, M., Fan, Y., Lawrence, D. M., & Perket, J. (2019). Representing intra-hillslope lateral subsurface flow in the community land model. Journal of Advances in Modeling Earth Systems, 11, 40444065. https://doi.org/10.1029/2019MS001833
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
* oldhyd test changes answers due to removal of origflag parameter
* Adds several hillslope-specific tests
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- DIFF
izumi ------- DIFF
Answer changes
--------------
Summarize any changes to answers, i.e.,
- what code configurations: all
- what platforms/compilers: all
- nature of change: roundoff
If bitwise differences were observed, how did you show they were no worse
than roundoff? Roundoff differences means one or more lines of code change results
only by roundoff level (because order of operation changes for example). Roundoff
changes to state fields usually grow to greater than roundoff as the simulation progresses.
* FSDS answers change due to rounding differences, since the history field now uses a column-level variable instead of a gridcell-level one. Note that this is JUST the history field that's affected, which is why there are no diffs in any other variable. (Confirmed using branch at https://github.com/samsrabin/CTSM/tree/hillslope-revert-fsds-diffs.)
* The origflag parameter (used to reproduce CLM4 behavior) was removed, so anything using that will break. This includes the oldhyd test.
Other details
-------------
Pull Requests that document the changes (include PR ids):
* ESCOMP/CTSM#1715: Hillslope hydrology (https://github.com/ESCOMP/CTSM/pull/1715)
* ESCOMP/CTSM#2390: Hillslope merge (https://github.com/ESCOMP/CTSM/pull/2390)
===============================================================
===============================================================
Tag name: ctsm5.1.dev169
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu 22 Feb 2024 09:42:57 AM MST
One-line Summary: Merge b4b-dev
Purpose and description of changes
----------------------------------
Brings in 3 PRs from b4b-dev to master:
- Do not crash "make all" even if pylint isn't clean (ESCOMP/CTSM#2353; Sam Rabin)
- Resolve pylint issues (ESCOMP/CTSM#2354; Sam Rabin)
- Move FSURDATMODIFYCTSM test to Derecho (ESCOMP/CTSM#2364; Sam Rabin)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed:
- Fixes ESCOMP/CTSM#2255: make lint is not clean in ctsm5.1.dev152
- Fixes ESCOMP/CTSM#2316: "make all" doesn't run black if lint fails
- FIXES ESCOMP/CTSM#2362: FSURDATMODIFYCTSM test should be moved to Derecho or Izumi
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- FSURDATMODIFYCTSM test changed from derecho_intel (didn't work in debug mode) to derecho_gnu. I.e., from
FSURDATMODIFYCTSM_D_Mmpi-serial_Ld1.5x5_amazon.I2000Clm50SpRs.derecho_intel
to
FSURDATMODIFYCTSM_D_Mmpi-serial_Ld1.5x5_amazon.I2000Clm50SpRs.derecho_gnu
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
any other testing (give details below):
- "make all" in python/ is clean.
Other details
-------------
Pull Requests that document the changes (include PR ids):
- ESCOMP/CTSM#2353: Do not crash "make all" even if pylint isn't clean (https://github.com/ESCOMP/CTSM/pull/2353)
- ESCOMP/CTSM#2354: Resolve pylint issues (https://github.com/ESCOMP/CTSM/pull/2354)
- ESCOMP/CTSM#2364: Move FSURDATMODIFYCTSM test to Derecho (https://github.com/ESCOMP/CTSM/pull/2364)
===============================================================
===============================================================
Tag name: ctsm5.1.dev168
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Fri 16 Feb 2024 01:27:41 PM MST
One-line Summary: Remove a source of negative snocan in CanopyFluxesMod
Purpose and description of changes
----------------------------------
In ctsm5.2 testing, this test
LWISO_Ld10.f10_f10_mg37.I2000Clm50BgcCrop.derecho_gnu.clm-coldStart
complained of a tiny negative ice1_grc tracer not matching the bulk
value. My troubleshooting led me to more than tiny negative snocan
originating in a line of code that this PR now changes to prevent
negative values.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2366
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
It was suggested at the ctsm software meeting yesterday that, in addition to
including "max(0._r8," in this line of code, that I reorder the code
by bringing "liqcan(p) =" before "snocan(p) =". I have decided against this
because the existing order repeats in a following paragraph of code right
after this one. It's likely that the group's suggestion would have worked, but
I did not want to delay this PR for a longer evaluation because CTSM5.2 is
waiting for this merge, in order to proceed with next steps.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: all
- what platforms/compilers: all
- nature of change: roundoff
A short test, e.g.
SMS_Ln9.ne30pg2_ne30pg2_mg17.I1850Clm50Sp.derecho_intel.clm-clm50cam6LndTuningMode
has these maximum differences:
RMS H2OCAN 4.7359E-19 NORMALIZED 4.0163E-18
RMS SNOCAN 4.4873E-19 NORMALIZED 9.1036E-18
while the differences grow in longer tests.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2371
===============================================================
===============================================================
Tag name: ctsm5.1.dev167
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu 08 Feb 2024 01:56:05 PM MST
One-line Summary: Delete _FillValue and history from parameter files
Purpose and description of changes
----------------------------------
Updates parameter files to c240207b. These are the same as c240105 except:
- Attribute _FillValue has been removed from all variables
- Global attributes history, history_of_appended_files, and latest_git_log have been removed
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
- Fixes #2347
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Other details
-------------
Pull Requests that document the changes (include PR ids):
- #2350: Delete _FillValue and history from parameter files (https://github.com/ESCOMP/CTSM/pull/2350)
===============================================================
===============================================================
Tag name: ctsm5.1.dev166
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310), tking (Teagan King), samrabin (Sam Rabin)
Date: Wed 24 Jan 2024 05:39:41 PM MST
One-line Summary: BFB merge tag
Purpose and description of changes
----------------------------------
#2315 @TeaganKing Refactoring run_neon for PLUMBER2 part1
#2213 @samsrabin Automatically assign high priority items to project 25
#2330 @samsrabin Add Izumi version of the aux_clm unit testing
#2326 @samsrabin run_sys_tests: Check Python environment for FatesColdTwoStream tests
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2315
Fixes #2213
Fixes #2330
Fixes #2326
Known bugs introduced in this tag (include issue #):
- New feature coming in with #2213 where user will receive email from
github when pushing to their remote:
"Run failed: .github/workflows/assign-to-project.yml"
- New feature that also affects older tags: The izumi FatesColdTwoStream
test submitted from ./run_sys_tests will fail at CREATE_NEWCASE unless users
introduce "module load lang/python/3.7.0" in their .bash_profile.
Longterm solution discussed in #2335. The test also works when submitted
manually with ./create_test.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
#2315 New unit tests for arg_parse and NeonSite
#2330 New test in aux_clm that does unit testing on izumi because unit
testing does not work on derecho, yet
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - OK, pylint gives long list of warnings (expected)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2334
===============================================================
===============================================================
Tag name: ctsm5.1.dev165
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310), oleson (Keith Oleson), samrabin (Sam Rabin)
Date: Fri 19 Jan 2024 06:40:36 PM MST
One-line Summary: Turn Meier2022, tillage, and residue removal on for ctsm5.1, fix #2212
Purpose and description of changes
----------------------------------
Answer-changing merge-tag:
- Turn Meier2022 on for ctsm5.1. Had turned off temporarily while fixing a bug.
- Bring in Urban answer fix #2212.
- Turn tillage and residue removal on for ctsm5.1.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
Fixes #2212
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
- Making Meier2022 the default for ctsm5.1 again.
- Making tillage low by default for ctsm5.1.
- Making residue removal 0.5 by default for ctsm5.1.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
[ If a tag changes answers relative to baseline comparison the
following should be filled in (otherwise remove this section).
And always remove these three lines and parts that don't apply. ]
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change:i
clm45 and clm50: larger than roundoff
clm51: possibly climate changing
Effect of Meier2022 was documented here: https://github.com/NCAR/LMWG_dev/issues/38
Effect of tillage and residue removal may require an Answer Changing Tag simulation
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2323
===============================================================
===============================================================
Tag name: ctsm5.1.dev164
Originator(s): rgknox (Ryan Knox)
Date: Wed 17 Jan 2024 12:38:18 PM MST
One-line Summary: Compatibility and tests for FATES 2-Stream
Purpose and description of changes
----------------------------------
This set of changes enables compatibility and testing for FATES two-stream radiation scattering. Two stream radiation is selected by setting the FATES parameter file variable fates_rad_mod = 2. This is an alternative to Norman radiation. The FATES default radiation model will continue to be Norman for the time being, but is expected to transition to two-stream in the near future.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #): 2305
Known bugs introduced in this tag (include issue #): none, but testing was modified to catch a pre-existing bug via test: SMS_D_Ld3.f09_g17.I2000Clm51FatesSpCruRsGs.derecho_gnu.clm-FatesColdSatPhen_prescribed. This has been documented in CTSM issue #2321
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes:
[e.g., check PFS test in the test suite and look at timings, if you
expect possible significant timing changes]
If a fates user does opt to use two-stream radiation, they should expect changes in simulation time compared with norman radiation. This difference varies and is somewhere between equal or 20% slower at a maximum. Most tests seemed to be about 10-15% slower for regions with high vegetation demographic diversity.
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Changes to tests or testing:
New tests were added to the fates and aux_clm regression suites, with suffix clm-FatesColdTwoStream. One of them uses fixed giogeography and no cross-pft competition.
Testing summary:
----------------
regular tests, baseline: ctsm5.1.dev163
derecho ----- OK
izumi ------- OK
fates tests: baseline: fates-sci.1.70.0_api.32.0.0-ctsm5.1.dev163
derecho ----- OK
izumi ------- (being run after tag was made)
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
All answers are B4B with baselines mentioned above, except for one fates variable: FATES_RAD_ERROR. This variable was changed to report the maximum of VIS and NIR, instead of just VIS. A follow up set of changes will change the dimension of this variable. This change was expected.
Other details
-------------
This set of changes is synchronized with the new FATES tag: sci.1.71.0_api.33.0.0
PR: https://github.com/NGEET/fates/pull/1141
===============================================================
===============================================================
Tag name: ctsm5.1.dev163
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Wed Jan 10 13:03:34 MST 2024
One-line Summary: Add tillage and residue removal
Purpose and description of changes
----------------------------------
Adds capability for cropland soil tillage and post-harvest residue removal.
Tillage: This PR brings in the tillage code written by Sam Levis and Michael Graham and used in Graham et al. (2021, ERL, doi:10.1088/1748-9326/abe6c6). Low- and high-intensity tillage here work by increasing the decomposition rate of different soil carbon pools. These "decomposition multipliers" vary based on soil pool and how long it's been since the crop was planted; they are set with new paramfile variables till_decompk_multipliers and mimics_till_decompk_multipliers. Note that tillage is off by default.
Residue removal: Adds a parameter hat represents what fraction of post-harvest crop residues (stems and leaves) should be removed to the crop product pool rather than being transferred to litter.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
- Resolves #112 (https://github.com/ESCOMP/CTSM/issues/112)
- Contributes to #2310 (https://github.com/ESCOMP/CTSM/issues/2310) by adding NEON tests to expected failure list)
- run_sys_tests no longer fails on Izumi
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- Adds parameter tillage_mode with options off (default), low, and high.
- Adds parameter use_original_tillage_phases (false by default; see Add soil tillage for crops #2040).
- Adds parameter max_tillage_depth (cm).
- Adds parameter crop_residue_removal_frac (default 0)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Changes SMS_Ld5.f10_f10_mg37.I1850Clm45BgcCrop.derecho_gnu.clm-crop to use tillage and residue removal; now SMS_Ld5.f10_f10_mg37.I1850Clm45BgcCrop.derecho_gnu.clm-till--clm-remove_residues
- Changes PEM_Ld1.f10_f10_mg37.I2000Clm51BgcCrop.izumi_intel.clm-crop to use tilllage; now PEM_Ld1.f10_f10_mg37.I2000Clm51BgcCrop.izumi_intel.clm-till
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- PASS
Other details
-------------
Pull Requests that document the changes (include PR ids):
- #2311: Add tillage and residue removal (https://github.com/ESCOMP/CTSM/pull/2311)
which is a combination of:
- #2040: Add soil tillage for crops (https://github.com/ESCOMP/CTSM/pull/2040)
- #2297: Add crop residue removal (https://github.com/ESCOMP/CTSM/pull/2297)
===============================================================
===============================================================
Tag name: ctsm5.1.dev162
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Fri Jan 5 15:57:23 MST 2024
One-line Summary: Improvements to processing of crop calendar files
Purpose and description of changes
----------------------------------
In python/ctsm/crop_calendars/, process_ggcmi_shdates.py and regrid_ggcmi_shdates.py are used to convert the raw GGCMI crop calendar files into CTSM-compatible versions. This update fixes some bugs, removes dependencies on the nco utilities, enables the use of surface datasets as template files (in addition to the existing ability to use CTSM output files), and standardizes things for consistency with other CTSM Python tools.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
* Fixes #2167: run_ctsm_py_tests failures at os.getcwd() (https://github.com/ESCOMP/CTSM/issues/2167)
Notes of particular relevance for users
---------------------------------------
These scripts can now be called using the wrapper scripts in tools/crop_calendars/.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
* Adds test_sys_regrid_ggcmi_shdates and test_unit_utils_import_coord
* Fixes bugs that were causing failures using `python/run_ctsm_py_tests` even when `make all` was fine.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(derecho) - PASS
clm_pymods test suite on derecho - PASS
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2292: Improvements to processing of crop calendar files (v2) (https://github.com/ESCOMP/CTSM/pull/2292)
===============================================================
===============================================================
Tag name: ctsm5.1.dev161
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu Jan 4 09:00:28 MST 2024
One-line Summary: Refactor 20-year running means of crop GDD accumulation
Purpose and description of changes
----------------------------------
Three variables track the 20-year running mean of GDD accumulation (base temperatures 0, 8, and 10°C) during the "growing season" (April through September in the Northern Hemisphere, October through March in the Southern Hemisphere). This PR refactors those to use accumulMod, resolving overly-strong weighting of the first few years after a crop becomes active.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
* Fixes #75.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- DIFF
izumi ------- DIFF
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: All crop configurations
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff/same climate
GDD020, GDD820, and GDD1020 will differ, most strongly in the first few years after a crop becomes active. This will have downstream effects on lots of variables, since those are used in determining sowing date and maturity requirements.
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2060: Refactor 20-year running means of crop GDD accumulation (https://github.com/ESCOMP/CTSM/pull/2060)
===============================================================
===============================================================
Tag name: ctsm5.1.dev160
Originator(s): glemieux (Gregory Lemieux, LBNL, glemieux@lbl.gov)
Date: Sat 30 Dec 2023 11:23:47 PM MST
One-line Summary: FATES landuse version 1
Purpose and description of changes
----------------------------------
This tag enables FATES to utilize the state and transitions data
from the Land Use Harmonization (https://luh.umd.edu/) data sets.
This data has been preprocessed using tooling provided by FATES via
a separate pull request (FATES#1032). A new module has been added
to the dyn_subgrid directory that largely adapts the dynHarvest
module to import and read this minimially processed data, which is
data is passed to fates.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed
----------
CTSM issues fixed (include CTSM Issue #):
#1077 -- Read in full LUH2 dataset for use by FATES
#2283 -- fates wood product flux not being correctly reported during CBalanceCheck endrun diagnostic output
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
New namelist item: fluh_timeseries and use_fates_luh
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
FATES landuse testmod, FatesColdLUH2, added
IMPORTANT NOTE ON BASELINES:
FATES baseline tests have a change in namelists because the fluh_timeseries file is listed in the baselines
but was removed in a last minute change. Compare to baseline other than that change are exact though.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS (66 FATES tests differ because of new fates param file)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- PASS
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: yes, for FATES only
Summarize any changes to answers, i.e.,
- what code configurations: FATES
- what platforms/compilers: ALL
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
The fates tag update incorporates bug fixes and hydraulic mortality fixes, as well as the
restructured disturbance code necessary to accomodate the new landuse transitions capability.
As such, small differences were observed in testmods that engaged specific disturbance modes
or were long enough to trigger other default disturbances (e.g. fire)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.69.0_api.31.0.0 -> fates-sci.1.70.0_api.32.0.0
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2076
https://github.com/NGEET/fates/pull/1040
===============================================================
===============================================================
Tag name: ctsm5.1.dev159
Originator(s): multiple (slevis (Sam Levis), afoster (Adrianna Foster), erik (Erik Kluzek), wwieder (Will Wieder), glemieux (Greg Lemieux), oleson (Keith Oleson), sacks (Bill Sacks), samrabin (Sam Rabin), santos (Sean Patrick Santos))
Date: Tue 12 Dec 2023 11:10:26 AM MST
One-line Summary: Various BFB fixes and updates
Purpose and description of changes
----------------------------------
#2253 Fix subset_data error (slevis)
#2271 bfb bug-fix allowing us to make Meier2022 the default; making it
the default comes in a later tag (slevis)
#2267 Fix run_neon CIME path import (afoster, erik, wwieder)
#2075 Add xesmf to the standard python env (glemieux)
#2229 Fix misplaced if statement and end model run if no-isotope to isotope run with user_init_interp=.false. (oleson, sacks, wwieder)
#2239 Add comment in LakeHydrology (samrabin, santos)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2253
Fixes #2271
Fixes #2267
Fixes #2075
Fixes #2229
Fixes #2239
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
derecho ----- OK
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2253
https://github.com/ESCOMP/ctsm/pull/2271
https://github.com/ESCOMP/ctsm/pull/2267
https://github.com/ESCOMP/ctsm/pull/2075
https://github.com/ESCOMP/ctsm/pull/2229
https://github.com/ESCOMP/ctsm/pull/2239
===============================================================
===============================================================
Tag name: ctsm5.1.dev158
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu 07 Dec 2023 10:22:46 PM MST
One-line Summary: First tag with testing moved to Derecho and working PE-layouts for Derecho
Purpose and description of changes
----------------------------------
First tag for CTSM working and tested on Derecho. Update CDEPS so that we can run with the NAG compiler.
Working PE layouts. Changes from CESM3_dev over to main-dev. Testing added for Derecho.
Do some work to get tools testing working on Derecho, not completed.
Add Derecho to the README files under tools/modify_input_files and tools/site_and_regional
Remove some /glade/p references in the code. This is still an issue in the: doc, lilac, tools/mksurfdata_map,
tools/contrib, tools/mkmapdata directories, and the namelist_defaults_ctsm_tools file.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Resolves Derecho transition: Tests and test infrastructure #1995
Resolves Updating Externals for Derecho causes Izumi nag tests to fail #2280
Resolves Transient simulation with ne30np4.pg3 fails due to floating point error #2268
Resolves Need to move location of DA_multidrv finidat files from /glade/p to /glade/campaign #2282
Works on Add support to test/tools/test_driver.sh for Derecho for NEON tools #2276
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Added clm5_1_cam6 option to LND_TUNING_MODE
This is important in order to enable using latest clm5_1 physics with fully coupled cases
Changes made to namelist defaults (e.g., changed parameter values):
Make sure there are finidat files for clm5_1 with CAM6 for 1850 and 2000 (from clm5_0 version at f09
Make sure ne30np4.pg3 is setup
Some adjustments for ne30np4 and ne30np4.pg3 to make sure landuse.timeseries files are correct
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Add cesm3_dev test list from the CESM3_dev branch
Make sure ne30np4.pg3
Unit tests fail on Derecho because of ESMCI/ccs_config_cesm#131
Derecho tests with DEBUG=T, intel compiler, and mpi-serial fail because of ESMCI/ccs_config_cesm#130
Testing summary: regular + fates + ctsm_sci + cesm3_dev
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
derecho - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
derecho - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
derecho ----- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
derecho ----- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: No, bit-for-bit
Other details
-------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cdeps
cdeps -> cdeps1.0.24 (allows to run with NAG compiler)
Pull Requests that document the changes (include PR ids):
#2269 -- First tag with testing moved to Derecho and working PE layouts
(https://github.com/ESCOMP/ctsm/pull)
===============================================================
===============================================================
Tag name: ctsm5.1.dev157
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Tue Dec 5 09:48:26 MST 2023
One-line Summary: Update Externals to work on Derecho
Purpose and description of changes
----------------------------------
Updates Externals.cfg to work on Derecho.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
* Resolves #2217 ("Tags for building CTSM library on Derecho [WRF-CTSM]", https://github.com/ESCOMP/CTSM/issues/2217)
* Resolves #2090 ("Update to cesm2_3_beta16 externals.", https://github.com/ESCOMP/CTSM/issues/2090)
Known bugs introduced in this tag (include issue #):
* #2280: Updating Externals for Derecho causes Izumi nag tests to fail (https://github.com/ESCOMP/CTSM/issues/2280)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
* All Izumi nag tests fail early in the run phase. This should be fixed in the next tag, which will be a more comprehensive Derecho-focused update.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS (except nag)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
* cime: cime6.0.125 -> cime6.0.175
* cmeps: cmeps0.14.21 -> cmeps0.14.43
* cdeps: cdeps1.0.13 -> cdeps1.0.23
* cpl7: cpl77.0.5 -> cpl77.0.7
* parallelio: pio2_5_10 -> pio2_6_2
Pull Requests that document the changes (include PR ids):
* #2270: Update Externals.cfg to work on Derecho (https://github.com/ESCOMP/CTSM/pull/2270)
===============================================================
===============================================================
Tag name: ctsm5.1.dev156
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu Nov 30 15:27:18 MST 2023
One-line Summary: Do not use Meier roughness by default
Purpose and description of changes
----------------------------------
ctsm5.1.dev155 had turned on Meier2022 surface roughness calculation by default for 5.1 compsets. Several bugs have recently emerged that were not caught by pre-merge testing, so this tag reverts that change. Thus, the ZengWang2007 method is default for all compsets again.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values): 5.1 compsets now use ZengWang2007 method (instead of Meier2022) for roughness calculation.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- DIFF
izumi ------- DIFF
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: 5.1 compsets
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate): new climate
No climate-evaluating run performed, as this change is reverting part of a commit thats barely a week old.
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
* #2273: Do not use Meier roughness by default, even with 5.1. (https://github.com/ESCOMP/CTSM/pull/2273)
===============================================================
===============================================================
Tag name: ctsm5.1.dev155
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Mon Nov 27 21:16:51 MST 2023
One-line Summary: Use baset_latvary parameters
Purpose and description of changes
----------------------------------
Namelist parameters baset_latvary_slope and baset_latvary_intercept were never actually used, with values of 0.4 and 12 being hard-coded in the relevant subroutine instead. This PR fixes that, and also adds unit testing of a refactored function that uses them.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2240: Use baset_latvary parameters (https://github.com/ESCOMP/CTSM/pull/2240)
===============================================================
===============================================================
Tag name: ctsm5.1.dev154
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Wed Nov 22 09:53:01 MST 2023
One-line Summary: New params files: Changes for Meier roughness, MIMICS, and SNICAR, and changes to leafcn and k*_nonmyc
Purpose and description of changes
----------------------------------
This PR (#2258) addresses several issues:
1) Start using existing new params file for Meier roughness:
/glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/paramdata/ctsm51_params.RMz0.c231011.nc
and include bug-fix #2219.
2) Update forcing heights per #2071.
3) Update params file for MIMICS per #1845.
4) Make leafcn for pfts 15 and 16 the same per #2184.
5) Switch the values of params kc_nonmyc and kn_nonmyc per #2120.
6) Move SNICAR parameters to ctsm51, clm50, and clm45 params files per #2247.
See #2258 and the above issues for a list of contributors.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[x] clm5_0
[x] ctsm5_0-nwp
[x] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2219
Fixes #2071
Fixes #1845
Fixes #2184
Fixes #2120
Fixes #2247
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
SNICAR namelist variable fresh_snw_rds_max moved to the params file.
Changes made to namelist defaults (e.g., changed parameter values):
SNICAR namelist variable fresh_snw_rds_max moved to the params file.
Pointing to new params files for clm4_5, clm5_0, clm5_1.
Changes to the datasets (e.g., parameter, surface or initial files):
New clm5_1 params file with new parameters and with modified values of existing parameters.
New clm5_0 and clm4_5 params files with new parameters for SNICAR.
./rimport on the new params files fails with "No space left on device" but the 4 files are safe here:
/glade/u/home/slevis/paramfiles/*_params.c231117.nc
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Remove clm50 Meier test. Should be clm51 but the compset I1850Clm51BgcNoAnthro does not exist.
- Remove Meier testmod directory and remove such reference from corresponding tests.
- Change mimics tests from clm50 to clm51.
- For details, see the updated testlist_clm.xml file.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change:
Larger than roundoff/same climate?
I will post this tag on the Answer changing tags wiki page as "SIGNIFICANT"
and will run a simulation and diagnostics to compare against dev145.
I used the izumi test-suite to perform one bfb sanity test:
I backed up my branch to 6dc1966 (before the snicar mods), then I put back the changes of the
commit right after snicar (71e174f). Comparing to dev154 (this tag's new baseline),
the izumi test-suite passed bfb (12 gnu, 18 intel, and 32 nag tests).
Other mods are quite confined and clear, so I will not pursue other sanity tests.
Changes to answers commit-by-commit in this PR:
f9978db and b8c71fa: These two change answers for Meier2022 and, therefore, clm51 only
626f520: Takes out if (z0param_method == 'Meier2022'), so changes answers for all three CLMs
319d194: Changes answers for mimics and, therefore clm51 only (order of ops, so roundoff)
2ee6943: Changes clm51 params file, so affects clm51 only (expect more than roundoff)
f185a31: bfb
6dc1966: This git merge escomp/master probably does change answers from previous commit
29ca5ad and 71e174f: Puts snicar params on the params files for all three CLMs; sanity test gave bfb
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2258
===============================================================
===============================================================
Tag name: ctsm5.1.dev153
Originator(s): afoster (Adrianna Foster) and johnpaulalex (John Paul Alex)
Date: Fri Nov 17 11:53:14 MST 2023
One-line Summary: Call new FATES-side FatesReadParameters
Purpose and description of changes
----------------------------------
Have CTSM use the new code path in FATES that allows passing in a `fates_param_reader_type`, which does the actual work reading the parameter files, in lieu of calling CTSM methods.
Also updated NEON usermods to use version 2 data by default, rather than latest.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Some progress towards CTSM#2006 and FATES#1076
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
fates baseline: `fates-sci.1.68.2_api.31.0.0-ctsm5.1.dev153`
Answer changes
--------------
None
Other details
--------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
Pull Requests that document the changes (include PR ids):
https://github.com/NGEET/fates/pull/1096
https://github.com/ESCOMP/CTSM/pull/2198
===============================================================
===============================================================
Tag name: ctsm5.1.dev152
Originator(s): multiple (tking (Teagan King); slevis (Sam Levis); AdrienDams (Adrien Damseaux); afoster (Adrianna Foster); samrabin (Sam Rabin); ekluzek (Erik Kluzek); wwieder (Will Wieder); sacks (Bill Sacks); a few others listed below)
Date: Tue Nov 14 17:09:43 MST 2023
One-line Summary: Mv tools to /python and add tests; add snow_thermal_cond_method; a few fixes / refactors
Purpose and description of changes
----------------------------------
#2156 tking, slevis
Move the following scripts to /python/ctsm/site_and_regional
and make wrapper scripts for them in /tools/site_and_regional:
- run_neon.py
- neon_surf_wrapper.py
- modify_singlept_site_neon.py
Add unit testing for:
- iso_utils
- modify_singlept_site_neon
- neon_surf_wrapper
- run_neon
Add system testing for:
- modify_singlept_site_neon
- run_neon
#2148 Adrien Damseaux (AWI, Germany), Victoria Dutch, Leanne Wake
Add namelist option snow_thermal_cond_method to select between Jordan (1991) (default) and
Sturm et al. (1997). Sturm option described for single point runs by Dutch et al. (2022).
#2233 afoster, sacks
Fix a compiler error (for GNU 13.2) within cropcalStreamMod.
Simple fix was to change whole-array assignments/references for the starts and ends arrays to specifically
reference bounds (begp and endp).
#2235 srabin, wwieder
Refactor ssp_anomaly_forcing script to make it easier to read and more amenable to future development.
- Adds --output-dir option; default ./anomaly_forcing reproduces previous behavior
- Makes synonyms for options with hyphens replacing underscores
#2237 srabin
Add the following fields to restart files:
- repr_grainc_to_seed_perharv_patch
- swindow_starts_thisyr_patch
- swindow_ends_thisyr_patch
#2044 ekluzek
More confined regular expression for NEON and a few simple fixes.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Closes #2156 Fixes #1441
Closes #2148
Closes #2233 Fixes #2232
Closes #2235
Closes #2237 Fixes #2236
Closes #2044 Fixes #2039 Fixes #2103 Fixes #2028 Fixes #1506 Fixes #1499
Known Issues:
pylint errors from previous work remain in this tag.
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
#2156 New wrapper scripts don't have .py suffixes.
#2148 New namelist option snow_thermal_cond_method as described above.
#2133 None
#2135 New --output-dir option; default ./anomaly_forcing reproduces previous behavior.
Also makes synonyms for options with hyphens replacing underscores.
#2137 None
#2044 None
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
#2156 Numerous changes were made to include new tests.
README.md for testing was updated to clarify that arguments should be used.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) - cheyenne OK (pylint suggestions from previous work remain)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK, the following PASS/FAILs are expected:
PASS ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianRs.izumi_gnu.clm-cropMonthlyNoinitial COMPARE_base_rest (UNEXPECTED: expected FAIL)
FAIL ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianRs.izumi_gnu.clm-cropMonthlyNoinitial BASELINE ctsm5.1.dev151: DIFF
FAIL SMS_Ld10_D_Mmpi-serial.CLM_USRDAT.I1PtClm51Bgc.izumi_nag.clm-default--clm-NEON-NIWO BASELINE ctsm5.1.dev151: DIFF
FAIL SMS_Ld10_D_Mmpi-serial.CLM_USRDAT.I1PtClm51Bgc.izumi_nag.clm-NEON-MOAB--clm-PRISM BASELINE ctsm5.1.dev151: DIFF
Answer changes
--------------
Changes answers relative to baseline:
#2156 NO
#2148 NO
#2233 NO
#2235 NO, adds attributes to write_climo files' dimension variables
#2237 ONLY Smallville "no initial" restarts; specifically, this previously
failing (COMPARE_base_rest) aux_clm test
ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianRs.izumi_gnu.clm-cropMonthlyNoinitial
now differs from the baseline as follows:
SUMMARY of cprnc:
A total number of 76 fields were compared
and 3 had differences in fill patterns
A total number of 2 fields could not be analyzed
diff_test: the two files seem to be DIFFERENT
#2044 ONLY the NEON tests listed above due to the one-line change in
cime_config/usermods_dirs/NEON/defaults/shell_commands in #2044
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2156
https://github.com/ESCOMP/ctsm/pull/2148
https://github.com/ESCOMP/ctsm/pull/2233
https://github.com/ESCOMP/ctsm/pull/2235
https://github.com/ESCOMP/ctsm/pull/2237
https://github.com/ESCOMP/ctsm/pull/2044
===============================================================
===============================================================
Tag name: ctsm5.1.dev151
Originator(s): rgknox (Ryan Knox,LAWRENCE BERKELEY NATIONAL LABORATORY,510-495-2153)
Date: Sat Nov 11 16:53:01 MST 2023
One-line Summary: Fixes to FATES long run restarts
Purpose and description of changes
----------------------------------
This is a set of changes that enables exact restart tests to pass with FATES, for
longer periods, particularly those that have elapsed over a year.
We removed calls that were incrementing, uncecessary calls, and added key new
variables to the restart file (such as the leaf layer carbon balance vector).
Collaborators: @mvdebolskiy, @mvertens, @glemieux, @ekluzek, @ckoven, @rosiealice
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
No changes to scientifically-supported configurations.
Bugs fixed or introduced
------------------------
Fixes: FATES#1051 https://github.com/NGEET/fates/issues/1051
Notes of particular relevance for users
---------------------------------------
This set of changes is introduced, while there is a known test failure in:
ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianRs.izumi_gnu.clm-cropMonthlyNoinitial
This is documented in issue: 2236 and a fix is slated for integration. The nature of the changes
in this PR where obviously orthogonal to the issue.
Substantial timing or memory changes: None
Notes of particular relevance for developers:
---------------------------------------------
A new test was added to aux_clm and fates test suites. The walltime for this test
was 29 minutes. This is an important new test for FATES because it is the
first gridded test that spans significantly over a year (and passes). Various test
configurations were explored to find a gridded test that completed 25 months
with some attempt at expedience in walltime. A walltime
allowance of 60 minutes is set in the test. Here is the test:
ERS_P144x1_Lm25.f10_f10_mg37.I2000Clm51Fates clm-FatesColdNoComp
Testing summary:
----------------
regular tests:
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
No answer changes
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates API30
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2199
https://github.com/NGEET/fates/pull/1098
===============================================================
===============================================================
Tag name: ctsm5.1.dev150
Originator(s): rgknox (Ryan Knox,LAWRENCE BERKELEY NATIONAL LABORATORY,510-495-2153)
Date: Mon Nov 6 14:12:37 MST 2023
One-line Summary: FATES API fix to support future fates npp-fixation coupling, and urgent coupling fixes with E3SM.
Purpose and description of changes
----------------------------------
This set of changes accomodates an API change on the FATES side of the code. Those changes are needed
to accomodate a bug-fix in E3SM. These changes will also accomodate correct coupling with free-living nitrogen
fixation when it is enabled in clm-fates.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
none
Bugs fixed or introduced
------------------------
Supports fixes FATES issues:
https://github.com/NGEET/fates/issues/1113
https://github.com/NGEET/fates/issues/1106
CTSM issues fixed (include CTSM Issue #): none
Known bugs introduced in this tag (include issue #):
Notes of particular relevance for users
---------------------------------------
none
Notes of particular relevance for developers:
---------------------------------------------
This set of changes is introduced, while there is a known test failure in:
ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianRs.izumi_gnu.clm-cropMonthlyNoinitial
This is documented in issue: 2236 and a fix is slated for integration. The nature of the changes
in this PR where obviously orthogonal to the issue.
Changes to tests or testing: none
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- ok
Answer changes
--------------
no answer changes
Other details
-------------
none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2231
===============================================================
===============================================================
Tag name: ctsm5.1.dev149
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Fri Nov 3 19:52:44 MDT 2023
One-line Summary: Rearrange leaf/stem "harvest" and fix soil gas diffusivity
Purpose and description of changes
----------------------------------
1. Rearranges the calculation of how much leaf and livestem C and N goes to biofuels vs. litter, in anticipation of adding crop residue removal. Also makes the affected subroutine easier to read.
2. Resolves two bugs in the calculation of diffusion in SoilBiogeochemNitrifDenitrif(). Also does some rearranging and renaming to improve clarity.
3. Includes unrelated documentation updates from Documentation Week Oct. 2023.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
* Resolves #1990: Problems about the soil gas diffusivity in methane code and nitrification-denitrification mod (https://github.com/ESCOMP/CTSM/issues/1990)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- DIFF
izumi ------- DIFF
Answer changes
--------------
Changes answers relative to baseline:
Summarize any changes to answers, i.e.,
- what code configurations: virtually all
- what platforms/compilers: cheyenne and izumi; intel, gnu, and nag
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff/same climate
If bitwise differences were observed, how did you show they were no worse
than roundoff? Roundoff differences means one or more lines of code change results
only by roundoff level (because order of operation changes for example). Roundoff
changes to state fields usually grow to greater than roundoff as the simulation progresses.
* Roundoff-level differences were observed for the rearrangement of leaf/stem "harvest" code.
* Notable differences were observed for the soil gas diffusivity bugfix, but only for output variable diffus.
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2154: Rearrange calculation of leaf/livestem C and N to biofuels/litter (https://github.com/ESCOMP/CTSM/pull/2154)
* #2157: Soil gas diffusivity bugfix (https://github.com/ESCOMP/CTSM/pull/2157)
===============================================================
===============================================================
Tag name: ctsm5.1.dev148
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Fri Nov 3 07:56:43 MDT 2023
One-line Summary: Add GRAINN outputs
Purpose and description of changes
----------------------------------
In response to a user request for GRAINN_TO_FOOD outputs, this adds *_N_TO_FOOD(_ANN) and *_N_TO_SEED(_ANN) outputs for reproductive N pools. These are off by default, unlike their C counterparts. Note that the results are not scientifically supported, and tests have revealed unrealistic values. (Also adds GRAINC_TO_SEED_ANN output.)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK (with some fieldlist diffs)
izumi ------- PASS (with some fieldlist diffs)
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2074 (https://github.com/ESCOMP/CTSM/pull/2074)
===============================================================
===============================================================
Tag name: ctsm5.1.dev147
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Mon Oct 30 16:53:20 MDT 2023
One-line Summary: Add sowing window input files
Purpose and description of changes
----------------------------------
Previously, one could run crops with either (a) sowing windows defined by the hemisphere-specific start and end dates on the paramfile or (b) prescribed sowing dates specified by input file stream_fldFileName_sdate. This PR replaces the latter with two new input files, stream_fldFileName_swindow_start and stream_fldFileName_swindow_end.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
* Replaces input file stream_fldfilename_sdate (prescribed sowing date) with stream_fldFileName_swindow_start (start of sowing window) and stream_fldFileName_swindow_end (end of sowing window).
* Any gridcell with sowing window start == end will experience prescribed sowing, matching previous behavior with stream_fldfilename_sdate.
* Setting new parameter allow_invalid_swindow_inputs to .true. makes it so that gridcell-crops without values in provided sowing window files will fall back to paramfile sowing windows. Otherwise, such cells will cause an error.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK (some diffs in field lists)
izumi ------- OK (some diffs in field lists)
any other testing (give details below):
* RXCROPMATURITY test passes.
Other details
-------------
Pull Requests that document the changes (include PR ids):
* #2193 (https://github.com/ESCOMP/CTSM/pull/2193)
===============================================================
===============================================================
Tag name: ctsm5.1.dev146
Originator(s): glemieux (Gregory Lemieux, LBNL, glemieux@lbl.gov)
Date: Tue Oct 24 20:13:17 MDT 2023
One-line Summary: FATES cross-grid seed dispersal
Purpose and description of changes
----------------------------------
This PR enables FATES to disperse seeds across neighboring grid cells using MPI.
The API update includes calls to new fates dispersal procedures. There are
four parameters that are utilized to control the dispersal kernel, although
these were introduced in ctsm5.1.dev130 so no new default FATES parameter file
is necessary with this update. A new namelist parameter has been added to
enable the use of the seed dispersal mode.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Known bugs introduced in this tag (include issue #):
- ESCOMP/CTSM#1089 (Cross-grid seed dispersal mechanism is not b4b for PE layout changes)
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- New namelist option, fates_seeddisp_cadence, added. This option Setting the switch
value to zero turns off dispersal. Setting the switch to 1, 2, or 3 sets the dispersal
cadence to daily, monthly or yearly.
Substantial timing or memory changes:
- Users should be careful to limit the maximum dispersal distance parameter,
fates_seed_dispersal_max_dist, to a reasonable value based on the gridcell
resolution used. Using a very large value will increase the memory requirements
to store the gridcell neighborhood information.
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- This PR introduces MPI calls to subroutines that are called by clm_driver.
Comments have been provided in code to make future developers aware of these
calls so as to avoid moving them into OpenMP threaded regions.
Changes to tests or testing:
- Two new testmods have been added into the fates suite to test seed
dispersal. One of the tests is to track issue CTSM#1089 which was introduced
with this PR.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: Only fates testmods in aux_clm are
answer changing due to science updates associated with externals update.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- fates: sci.1.67.2_api.27.0.0 -> sci.1.68.0_api.28.0.0
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2077
https://github.com/NGEET/fates/pull/1005
===============================================================
===============================================================
Tag name: ctsm5.1.dev145
Originator(s): @cenlinhe (Cenlin He,UCAR/RAL), slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Thu Oct 19 14:34:25 MDT 2023
One-line Summary: SNICAR snow albedo scheme updates
Purpose and description of changes
----------------------------------
Notes copied here from the PR #1861:
A few substantial changes in the SNICAR module for the following updated snow
albedo calculation features:
- Updated ice optical properties from Flanner et al. (2021), with multiple types
for ice refractive indices.
- Updated aerosol optical properties from Flanner et al. (2021) with multiple
dust types & new BC and OC optics.
- Updated downward solar spectra from Flanner et al. (2021) for multiple
condition types.
- More accurate radiative transfer solver (adding-doubling) from Dang et al. (2019).
- Nonspherical snow grain scheme from He et al. (2017).
- BC-snow internal mixing scheme from He et al. (2017).
- Dust-snow internal mixing scheme from He et al. (2019).
- Hyperspectral (480-band, 10-nm spectral res) capability with all the above features.
- New namelist controls for aerosol in snow and additional snow albedo
diagnostic output variables.
Specific notes
- Code contributors: Cenlin He (NCAR/RAL) with advice from
Dave Lawrence (NCAR/CGD) and Mark Flanner (UMich).
- The manuscript to report this update is
Cenlin He, Mark Flanner, David M Lawrence, Yu Gu: New features and
enhancements in Community Land Model (CLM5) snow albedo modeling: description,
sensitivity, and evaluation. Authorea. June 08, 2023.
DOI:10.22541/essoar.168626390.01530324/v1
- These updates will change the snow and surface albedo results along with
other surface fluxes changes.
- There are a few new namelist options related to SNICAR scheme added to the
namelist control.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (all three unrelated to this PR):
Fixes #2173
Fixes #2107
Fixes #2129
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist variables:
snicar_numrad_snw = 5 or 480 wavelength bands, default 5
snicar_solarspec, default "mid_latitude_winter" among six available options
snicar_dust_optics, default "sahara" among three avail. options
snicar_snw_shape, default "hexagonal_plate" among fourn avail. options
snicar_use_aerosol, default .true.
snicar_snobc_intmix and snicar_snodst_intmix, default .false. means do not
activate bc-snow and dust-snow internal mixing
do_sno_oc, default .false., already appeared in previous code but in caps
use_snicar_frc, default .false., existed before
fsnowoptics now points to an updated 5-band file and gives the option for a
480-band file
Substantial timing or memory changes:
[e.g., check PFS test in the test suite and look at timings, if you
expect possible significant timing changes]
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline:
YES
Summarize any changes to answers, i.e.,
- what code configurations: All
- what platforms/compilers: All
- nature of change: larger than roundoff; new climate?
Namelist defaults are such that phys="clm5.0" and phys="clm4.5" give different
answers only due to the changed fsnowoptics file.
Namelist defaults are such that phys="clm5.1" changes answers as a result of
new parameterizations.
If this tag changes climate, I will document such information on
https://github.com/ESCOMP/CTSM/wiki/Answer-changing-tags
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1861
===============================================================
===============================================================
Tag name: ctsm5.1.dev144
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Thu Oct 19 13:30:02 MDT 2023
One-line Summary: Remove a deprecated shr_mpi_bcast call
Purpose and description of changes
----------------------------------
Removes a use of the deprecated shr_mpi_mod, replacing with ESMF_VMBroadcast. In addition, since the last tag, some minor documentation changes have been made.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here: Compared ctsm5.1.dev142 to a version of this branch (1f39800e1) with ctsm5.1.dev142 merged in.
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
Pull Requests that document the changes (include PR ids):
* #1991 (https://github.com/ESCOMP/CTSM/pull/1991)
===============================================================
===============================================================
Tag name: ctsm5.1.dev143
Originator(s): rgknox (Ryan Knox,LAWRENCE BERKELEY NATIONAL LABORATORY,510-495-)
Date: Fri Oct 13 08:53:38 MDT 2023
One-line Summary: Zeroing of wood product fluxes on fates columns
Purpose and description of changes
----------------------------------
This is a small change that initializes wood product fluxes on fates columns to zero. These
products are otherwise zero'd in a p2c() routine that is incompatible with fates. When
wood product fluxes become available via fates, these routines will be updated. These fluxes
were previously left as uninitialized, which was causing math issues on some compilers.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
There are no changes to scientifically-supported configurations.
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Fixes CTSM issue 2165
Notes of particular relevance for users
---------------------------------------
No caveats, no bugs, no issues of relevance.
No noticable timing changes.
Notes of particular relevance for developers:
---------------------------------------------
None
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Compared against baseline: ctsm5.1.dev142
Answer changes
--------------
Answer changes only on FATES tests, and only on the specific wood product fluxes modified. These values
are now zeros, instead of being uninitialized. Everything else is b4b.
Other details
-------------
No other details.
Pull Requests that document the changes (include PR ids):
#2168 -- GRU update for FATES
#2134 -- Update to documentation for Meier et al. (2022) roughness length parameterization
https://github.com/ESCOMP/CTSM/pull
===============================================================
===============================================================
Tag name: ctsm5.1.dev142
Originator(s): samrabin (Sam Rabin, UCAR/TSS, samrabin@ucar.edu)
Date: Tue Sep 19 11:30:22 MDT 2023
One-line Summary: Merge 5 bit-for-bit pull requests
Purpose and description of changes
----------------------------------
Merge 5 bit-for-bit pull requests; see "Other details."
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
* Add unit test for making fsurdat with all crops everywhere (#2079)
* Rework master_list_(no)?fates.rst? (#2083)
* conda run -n can fail if a conda environment is already active (#2109)
* conda fails to load for SystemTests (#2111)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
* FSURDATMODIFYCTSM system test should now work for everyone.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
clm_pymods test suite on cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Other details
-------------
Pull Requests that document the changes (include PR ids):
* Add system and unit tests for making fsurdat with all crops everywhere (#2081)
* Rework master_list* files etc. (#2087)
* Fixes to methane Tech Note (#2091)
* Add is_doy_in_interval() function (#2158)
* Avoid using subprocess.run() in FSURDATMODIFYCTSM (#2125)
===============================================================
===============================================================
Tag name: ctsm5.1.dev141
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Wed Sep 13 13:58:04 MDT 2023
One-line Summary: Change small snocan to zero
Purpose and description of changes
----------------------------------
Issues #2041 and #2048 discuss and resolve a test failure in the ctsm5.2
branch. The failure goes away when we reset small snocan to zero.
Bill Sacks recommended merging this change in ctsm5.1 and then updating
the ctsm5.2 branch to the latest ctsm5.1.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2041
Fixes #2048
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline:
Yes
Summarize any changes to answers, i.e.,
- what code configurations: All
- what platforms/compilers: All
- nature of change: roundoff
The answer changes are expected to be roundoff-level because the code change
just truncates roundoff-level greater-than-zero states to exactly zero for
snocan that most likely needed to be zero anyway.
The answer changes grow to greater than roundoff, but the
cprnc.out file from a 20-year izumi test-suite case does not contain
differences of concerning magnitude.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2053
===============================================================
===============================================================
Tag name: ctsm5.1.dev140
Originator(s): afoster (Adrianna Foster)
Date: Tue Sep 12 14:47:06 MDT 2023
One-line Summary: add lai_streams capability for FATES
Purpose and description of changes
----------------------------------
Removed checks in clm_driver and CLMBuildNamelist.pm so that now FATES can run when use_lai_streams=.true.
I also had to modify the init in cpl/share_esmf/laiStreamMod to allocate the g_to_ig array in the lai_init method (rather than in the lai_advance method. This was required because SatellitePhenology is called in clim_initializedMod in FATES cases (here). This happens before lai_advance is ever called so at that point the g_to_ig array was not yet allocated. Moving the allocation/initialization to the lai_init method fixes this.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #): #1722 - Should be able to use lai streams with FATES-SP mode
Notes of particular relevance for developers:
---------------------------------------------
build-namelist tests (if CLMBuildNamelist.pm has changed): added tests to make sure use_lai_streams failed correctly
Changes to tests or testing: Added a test for lai_streams with FATES
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: None
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
Pull Requests that document the changes (include PR ids): #2054
(https://github.com/ESCOMP/ctsm/pull)
===============================================================
===============================================================
Tag name: ctsm5.1.dev139
Originator(s): slevis (Samuel Levis)
Date: Fri Aug 25 16:47:45 MDT 2023
One-line Summary: Fix problems uncovered by nag -nan tests
Purpose and description of changes
----------------------------------
Fix problems uncovered by adding the -nan compilation flag for the Nag
compiler.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Makes progress on issue #1994 (same title)
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2051
===============================================================
===============================================================
Tag name: ctsm5.1.dev138
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Fri Aug 25 14:44:22 MDT 2023
One-line Summary: Refactor max_patch_per_col and maxsoil_patches loops
Purpose and description of changes
----------------------------------
Refactor such loops for clearer and more efficient code, as recommended in
issue #2025.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2025 "Refactor loops that use max_patch_per_col?"
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2056
===============================================================
===============================================================
Tag name: ctsm5.1.dev137
Originator(s): Ronny Meier, slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Tue Aug 22 14:34:53 MDT 2023
One-line Summary: Surface roughness modifications
Purpose and description of changes
----------------------------------
Surface roughness (z0) modifications that appear in this publication:
https://doi.org/10.5194/gmd-15-2365-2022
When changing the namelist input z0param_method from ZengWang2007 (default)
to Meier2022 the following modifications are activated:
- A new parameterization of the vegetation surface roughness based on
Raupach (1992) with optimized parameters to match the data collected in
Hu et al. (2020) for different types of vegetation. This requires several new
PFT-specific input parameters in the parameter file.
- A spatially explicit z0m input field for bare soil based on the data of
Prigent et al. (2005). This may be activated specifically by the user through
the namelist input use_z0mg_2d. This requires a new input variable in the
fsurdat file.
- The parameterization of z0m for snow based on accumulated snow melt as
proposed in Brock et al. (2006). This may be activated specifically by the
user through the namelist input use_z0m_snowmelt.
- The parameterization of Yang et al. (2008) for z0h and z0q over bare soil,
snow, and glaciers.
- The study in GMD also proposes new globally constant values for the
z0m of bare soil, snow, and ice. To "activate" those the parameter file needs
to be changed at the moment. The original and modified parameter files and
fsurdat files will be shared by ftp.
Open issues/questions (discussed with @ekluzek, @dlawrenncar, @olyson):
- How to incorporate the data of Prigent et al. (2005) in the surfdata
generation. I will write an email about this to Catherine Prigent.
- One statement marked in CanopyFluxesMod should probably be changed when
using Meier2022 (i.e., Yang et al. (2008) formulation should be used instead
of Zeng and Dickinson (1998)).
- At the moment one needs to change the parameter file to switch between the
original and proposed globally constant z0m values for bare soil, snow, and
ice. This is obviously not very user friendly and prone to mistakes.
- The introduction of Yang et al. (2008) frequently results in z0h and z0q
larger than z0m. This is only rarely observed in the field and in contradiction
to the theory that z0h and z0q should be smaller because heat and water vapor
need to be transported through molecular diffusion in the surface sublayer.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1316
Fixes #1596
Notes of particular relevance for users
---------------------------------------
Details already discussed in the description above.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
New tests are in place for this new code.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline:
No, unless user chooses to run in non-default Meier2022 mode.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2045
===============================================================
===============================================================
Tag name: ctsm5.1.dev136
Originator(s): jedwards (Jim Edwards), sacks (Bill Sacks)
Date: Tue Aug 22 13:10:28 MDT 2023
One-line Summary: Change order of history fields to improve performance on derecho
Purpose and description of changes
----------------------------------
Instead of just ordering history fields alphabetically, order them first
by the name of their level dimension (with fields without a level
dimension appearing first), then alphabetically within a given level
dimension. This changed ordering gives a significant performance
improvement especially noticeable on lustre file systems such as on
derecho.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- History fields will now appear in a different order from tools like
ncdump, etc.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
In addition to expected fails, the test
FSURDATMODIFYCTSM_D_Mmpi-serial_Ld1.5x5_amazon.I2000Clm50SpRs.cheyenne_intel
also failed as in https://github.com/ESCOMP/CTSM/issues/2111
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2114
===============================================================
===============================================================
Tag name: ctsm5.1.dev135
Originator(s): slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Mon Aug 21 15:06:35 MDT 2023
One-line Summary: Rename hist fields to track them down more easily
Purpose and description of changes
----------------------------------
Renaming history fields to make easier to find in lists, e.g. when
using ncview. For example, litter fields like MET_LIT and STR_LIT
will be LIT_MET and LIT_STR.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2095
Testing summary:
----------------
[Remove any lines that don't apply.]
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
Sam L. ran the LMWG diag. pkg and found only one plot affected by this
PR's changes. In particular, set 6 CWD_C, which was CWDC
Answer changes
--------------
Changes answers relative to baseline:
No. Field lists differ. In some tests, the namelists differ.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2106
===============================================================
===============================================================
Tag name: ctsm5.1.dev134
Originator(s): rgknox (Ryan Knox,LBNL EESA), erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Aug 16 17:20:27 MDT 2023
One-line Summary: Migration of FATES to share normal soil BGC call sequence and functionality
Purpose and description of changes
----------------------------------
This set of changes enables the normal soil biogeochemistry that is used for CN, to be used for FATES as well. FATES had been using a simplified subset of soil biogeochemistry in its own module. This change required coordination of litter flux and methane boundary conditions from FATES to CLM. CNVEG datastructures were given trivial allocation (of size one on index zero) to prevent inappropriate use of CNVEG datastructures while FATES is active. Note that now the carbon balance checking for the soil is now active when FATES is active. Various accomodations have also been put in place to enable nitrogen cycling between the two models.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Surprisingly, nvhpc tests are now working, but it may just be coincidental. All existing aux_clm tests are passing. Tests without FATES are b4b, with roundoff differences in just TOTCOLC and TOTCOLN.
CTSM issues fixed (include CTSM Issue #):
We think #1879 -- "AD spinup issues for FATES", is fixed but haven't proved it
#2112 -- black check on SystemTest file
Notes of particular relevance for users
---------------------------------------
A CLM-FATES simulation will turn on nitrogen supplementation, this enables sufficient immobilization and decomposition. Until FATES and CLM can handle fully coupled nitrogen exchange, which would include root uptake of the mineralized aqueous forms (NH4 and NO3), N limitations in the soil are meaningless when FATES is on.
Caveats for users (e.g., need to interpolate initial conditions):
FATES MUST have suplnitro='ALL' now (was NONE). When fates_parteh_mode>=1 other settings are allowed.
More checking for use_luna and suplnitro is added for FATES in the build-namelist
Changes made to namelist defaults (e.g., changed parameter values): FATES runs now supplement N
suplnitro set to ALL for FATES
use_luna set to .false. for FATES and clm4_5 physics
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
We should update defaults for suplnitro, when Nitrogen nutrients are allowed in FATES
The black checdk github action has to duplicate actions for each source file or directory
We should move to using the Makefile in the python directory when we figure it out
Testing summary:
----------------
aux_clm test run on cheyenne and izumi. See:
izumi: OK /scratch/cluster/rgknox/tests_0814-095624iz
cheyenne: OK /glade/scratch/rgknox/tests_0814-134713ch
Answer changes
--------------
Changes answers relative to baseline: Two diganostic fields (TOTCOLC and TOTCOLN)
Baseline changes will be reported for many tests, all tests were combed to identify RMS diffs, all non-FATES tests had at most, roundoff level (<e-12) diffs in TOTCOLC and TOTCOLN. FATES tests have diffs due to the subtle but unavoidable differences in how the models are coupled.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1959
===============================================================
===============================================================
Tag name: ctsm5.1.dev133
Originator(s): adrifoster (Adrianna Foster), glemieux (Gregory Lemieux, LBL/NGEET)
Date: Wed Aug 9 22:44:46 MDT 2023
One-line Summary: FATES API update to facilitate fates refactor
Purpose and description of changes
----------------------------------
This updates a number of FATES type names and module use statements
which correspond with a refactoring effort that moves FATES
patches and cohorts into their own respective modules.
With the FATES update is a minor science update, so there are
changes to answers for FATES.
This also incorporates a minor update to a more recent version
of the ccs config external.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues updated:
Updated #1733 -- nvhpc compiler tests failing on cheyenne
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Note that the fates patch and cohort types now use the `fates_` prefix instead
of the `ed_` prefix.
- The expected failures list of tests has been expanded to include the remaining
nvhpc compiler tests on cheyenne with this update
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Note that the previous ctsm5.1.dev132 tag was generated using FATES tagname
sci.1.66.1_api.25.5.0. This api update includes intermediate FATES science
tags that are non-b4b, so aux_clm FATES tests result in DIFFs as expected.
Answer changes
--------------
Changes answers relative to baseline: Yes, but only for aux_clm fates tests.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
sci.1.66.1_api.25.5.0 -> sci.1.67.1_api.26.0.0
ccs_config_cesm0.0.64 -> ccs_config_cesm0.0.65
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
https://github.com/ESCOMP/CTSM/pull/2000 -- refactor
https://github.com/ESCOMP/CTSM/pull/2089 -- Change template update
https://github.com/NGEET/fates/pull/1024 -- FATES refactor
===============================================================
===============================================================
Tag name: ctsm5.1.dev132
Originator(s): mvdebolskiy (NORCE, Bergen, Norway), slevis (Samuel Levis,UCAR/TSS,303-665-1310)
Date: Fri Aug 4 17:52:45 MDT 2023
One-line Summary: Add parameterization to allow excess ice in soil and subsidence
Purpose and description of changes
----------------------------------
As described in PR #1787:
Parameterization for excess ice described in Lee et al. (2014):
http://dx.doi.org/10.1088/1748-9326/9/12/124006
This code is a modified version of code provided by Lei Cai:
https://github.com/lca041/ctsm/tree/clm5.0.dev92_exice
Works only for the nuopc driver.
Files changed:
bld/CLMBuildNamelist.pm, bld/namelist_files/namelist_defaults_ctsm.xml, bld/namelist_files/namelist_definitionss_ctsm.xml -- added namelist options;
src/main/clm_varctl.F90, src/main/controlMod.F90 -- added option to switch excess ice physics and read namelist option;
src/biogeophys/WaterStateType.F90 -- added prognostic excess ice variable and a history field;
src/biogeophys/WaterStateBulkType.F90, src/main/clm_instMod.F90, -- added arguments to soubrutiens for proper initialization;
src/biogeophys/TemperatureType.F90 -- initial soil temperature set to 268.15 K at the cold start (possibly redundant because #1460 is closed)
src/biogeophys/WaterDiagnosticBulkType.F90 -- added two diagnostic excess ice variables and two history fields;
src/biogeophys/SoilTemperatureMod.F90 -- added main excess ice calculations;
src/biogeophys/TotalWaterAndHeatMod.F90 -- added excess ice to total water for balance checks;
src/biogeophys/SoilHydrologyMod.F90 -- added excess ice for ice fraction calculation;
New files:
src/cpl/share_esmf/ExcessIceStreamType.F90 -- routines to read dataset with initial excess ice concentration
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1229 -- excess ice
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Excess ice can EITHER be turned on by using the stream file, OR a restart file that has excess ice on it.
Since, excess ice is expected to melt as time goes on, the use of a restart file is preferred.
But, use of a restart file requires a simulation that was spun up to that point.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist options added:
- use_excess_ice (logical, in clm_inparm) default = .false.; turns on excess ice physics
- stream_meshfile_exice, stream_fldfilename_exice, stream_mapalgo_exice (char, in exice_streams)
meshfile, stream file, spatial interpolation algorithm for initial values of excess ice
defaults - lnd/clm2/paramdata/exice_init_0.125x0.125_ESMFmesh_c20220516.nc,
lnd/clm2/paramdata/exice_init_0.125x0.125_c20220516.nc
and bilinear
Dataset interpolated to 0.125x0.125 degrees grid from Brown et al. (1997) can be found here:
https://drive.google.com/file/d/1mA457Oa52zG_MtLGB7KHuUYQvsS2-P5o/view?usp=sharing
Dataset used only in cold start or hybrid runs (or starting with finidat) that do not have excess ice
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
New tests in place for this new code
Testing summary:
----------------
[Remove any lines that don't apply.]
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
heyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1787
===============================================================
===============================================================
Tag name: ctsm5.1.dev131
Originator(s): samrabin (Sam Rabin,UCAR/TSS)
Date: Thu Jul 27 14:24:07 MDT 2023
One-line Summary: Enable prescribed crop calendars.
Purpose and description of changes
----------------------------------
This branch enables CLM to read in externally-prescribed crop sowing dates and "cultivar" maturity requirements (growing
degree-days, GDDs). This has so far only been tested with static values, and the results indicate that yield performance is
worsened. However, this capability is required by the GGCMI phase 3 / ISIMIP3 Agriculture protocol.
Briefly, the way this works is that an offline run is first performed with prescribed sowing dates and 364-day seasons.
Instantaneous GDD accumulation is saved daily. A Python script then cross-references those daily outputs with a map of mean sowing
dates to determine the mean accumulated GDDs in the growing season, saving the result as a file for use as prescribed maturity
requirements.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Resolves #281 -- Clean up CropPhenology logic
Resolves #519 -- Read in crop planting and harvest dates
Fixes #2042 -- Issue running SystemTests due to "conda activate" error
Some on #1649 -- Additional "annual" (per growing season) crop outputs
Notes of particular relevance for users
---------------------------------------
Caveats for users:
Untested but theoretically possible:
* Time-varying inputs
* Running at any resolution other than one matching the crop calendar inputs
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Adds optional namelist variables:
* stream_fldfilename_sdate: Filename of input stream data for sowing dates
* stream_fldfilename_cultivar_gdds: Filename of input stream data for cultivar growing degree-day targets
* stream_meshfile_cropcal: Filename of input stream data for crop calendar inputs
* stream_year_first_cropcal: First year to loop over for crop calendar data
* stream_year_last_cropcal: Last year to loop over for crop calendar data
* model_year_align_cropcal: Simulation year that aligns with stream_year_first_cropcal value
* generate_crop_gdds: Set to .true. in order to override crop harvesting logic and to instead harvest the day before the next sowing date. Used to generate growing-degree day outputs that can be used with an external script to generate new GDD requirement ("cultivar") files.
* use_mxmat: Set to .false. in order to ignore crop PFT parameter for maximum growing season length (mxmat). Must be set to .false. when generate_crop_gdds is .true.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
* Adds RXCROPMATURITY SystemTest, with an example added to ctsm_sci test suite.
* Removes 12 MCT tests from testlist_clm.xml, as discussed in CTSM SE standup 2023-06-26.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
Answer changes
--------------
Changes answers relative to baseline: YES for Clm45BgcCrop compsets only
Summarize any changes to answers, i.e.,
- what code configurations: Clm45BgcCrop
- what platforms/compilers: Cheyenne intel and gnu, Izumi intel and nag
- nature of change (roundoff; larger than roundoff/same climate; new climate): roundoff
5 tests in aux_clm showed true DIFFs (i.e., not just field list differences / new output files):
- SMS_D_Ly6_Mmpi-serial.1x1_smallvilleIA.IHistClm45BgcCropQianRs.izumi_intel.clm-cropMonthOutput
- ERP_D_P36x2_Ld3.f10_f10_mg37.I2000Clm45BgcCrop.cheyenne_gnu.clm-no_subgrid_fluxes
- LGRAIN2_Ly2_P72x1.f10_f10_mg37.I1850Clm45BgcCrop.cheyenne_gnu.clm-ciso--clm-cropMonthOutput
- ERS_Ly5_P72x1.f10_f10_mg37.IHistClm45BgcCrop.cheyenne_intel.clm-cropMonthOutput
- SMS_D_Ld1_P48x1.f10_f10_mg37.I2000Clm45BgcCrop.izumi_nag.clm-oldhyd
The first four were likely due to an order-of-operations change in CNOffsetLitterfall(), as they resolve with the patch at
https://github.com/samsrabin/CTSM/commit/c30320cbd6583bccbcc290ffe536e8500e6ec358
The last is resolved with an additional patch that removes all my changes to CNOffsetLitterfall()---changes which *should* only
affect new diagnostic variables:
https://github.com/samsrabin/CTSM/commit/e025f555e74584c63d50f27c4df38326fa64bc4f
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cime
cime: cime6.0.108 -> cime6.0.125
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1863
===============================================================
===============================================================
Tag name: ctsm5.1.dev130
Originator(s): glemieux (Greg Lemieux,LBL/NGEET,510-486-5049)
Date: Sun Jul 9 23:24:29 MDT 2023
One-line Summary: FATES parameter file and test definition update
Purpose and description of changes
----------------------------------
This tag incorporates updates to the FATES parameter file and test
definitions to be consistent with updates to the drought deciduous
phenology model in FATES. This also updates the external FATES
pointer to the tag associated with the drought deciduous phenology
update.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2043 -- Five izumi NEON tests fail (for me) because the testnames include L10d instead of Ld10
Known bugs found since the previous tag (include issue #):
#2049 -- Use of 0.01_r8 as a magic number
#2042 -- Issue running SystemTests due to "conda activate" error
#2039 -- Conditional for NEON usermods is too broad
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
FATES parameter file default updated to fates_params_api.25.5.0_12pft_c230628.nc
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES for FATES tests only
Summarize any changes to answers, i.e.,
- what code configurations: FATES
- what platforms/compilers: ALL
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
See FATES #958 for discussion. The update increased the dimensions of
some FATES history output from site-level to pft-level. As such, these
have been removed from some test cases to keep the test light weight and
added to the AllVars test to maintain coverage.
Note that this FATES update also incorporates a number of additional science updates
since the previous tag.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
fates: sci.1.65.3_api.25.4.0 -> fates-sci.1.66.0_api.25.5.0
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2009
https://github.com/NGEET/fates/pull/958
===============================================================
===============================================================
Tag name: ctsm5.1.dev129
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu Jun 22 01:21:56 MDT 2023
One-line Summary: NEON fixes for TOOL and user-mods, add SP for NEON, some history file updates, black refactor for buildlib/buildnml
Purpose and description of changes
----------------------------------
Merge the NEON fixes for TOOL and allowing SP mode, as well as a few simple history PR's, and a black reformat.
Fixes NEON bug identified at the NCAR-NEON workshop. Corrects the dominant PFT at TOOL site & usermods_dirs
Some small changes for quality of life improvements for the run_neon script. Some documentation and code
cleanup type changes regarding history code (delete a unused subroutine). Do a black reformat of python files
buildlib/buildnml (and CTSM SystemTests) for consistency across CESM. Also add running them through black in the python
Specific notes:
- fixed a couple lines so that python will stop complaining about deprecated things
- added print statements about warning messages being not an issue, and that building/running may take a while
- added a "success" print statement - I'm not sure this will actually only print if "successful"
- Add more documentation to history tape code
- Add more breadcrumbs between related variables and methods
- Put related history namelist flags/methods together
- Update some out of date comments in history code
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #2013 -- Incorrect PFT at TOOL
Fixes #2014 -- NEON usermods not working as intended
Fixes #2029 -- fire_method is used before it's set and hence fire_res isn't set to none
Fixes #2030 -- Logic in build-namelist not functioning correctly for FATES with light_res
Updates conda environment so that #1974 works
Known bugs found since the previous tag (include issue #):
#2037 -- shell_commands for tests with two testmods listed don't concatenate both together
#2036 -- Remove setting of STOP options in user-mod directories
#2017 -- subset_data does not function for regional grids that span across Greenwich longitude zero
#2024 -- snow fraction is uninitialized when passed to fates during cold-starts
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Ability to run for SP sites was added for NEON, but run-neon.py doesn't have an option for it
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New --light_res option for 106x74 for NEON lightning data added (can be set in CLM_BLDNML_OPTS)
This is the default for NEON sites (with $CLM_USRDAT_NAME == NEON or NEON.PRISM)
It fails for non CLM_USRDAT resolutions and gives a warning for non-NEON CLM_USRDAT resolutions)
Changes made to namelist defaults (e.g., changed parameter values):
Add NEON 106x74 lightning dataset
Changes to the datasets (e.g., parameter, surface or initial files): New NEON surface datasets
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Add a NEON case that runs in SP mode
Change one of the FATES tests to turn fire on and require lightning data
Testing summary: regular NEON-tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (57 tests different from baseline)
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS (NEON test list passes)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
other testing:
izumi -- PASS (tests of changed NEON sites, see list in #2031)
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: bit-for-bit (except some NEON sites)
Summarize any changes to answers, i.e.,
- what code configurations: NEON TOOL site and other NEON sites with namelist changes
- what platforms/compilers: all
- nature of change: new climate
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#2031 -- Merge of below...
#2015 -- Address NEON bugs
#2021 -- Small changes to fix warnings, add print statements for clarity
#2023 -- Document side effects of htapes_fieldlist
#2022 -- Delete unued hist_add_subscript
#2020 -- Add more documentation to history tape code
#2007 -- black reformat python files for consistancy across cesm
===============================================================
===============================================================
Tag name: ctsm5.1.dev128
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Thu Jun 1 15:31:52 MDT 2023
One-line Summary: Update FATES tests to double precision
Purpose and description of changes
----------------------------------
This pull request updates the fates tests to set the output
precision to double precision. The usermod fates_sp is similarly
updated.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves https://github.com/ESCOMP/CTSM/issues/1986
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
FATES tests run against fates-sci.1.65.6_api.25.4.0-ctsm5.1.dev127 baseline
Answer changes
--------------
Changes answers relative to baseline: Yes, but only for fates tests and compsets
Summarize any changes to answers, i.e.,
- Differences are due to changing hist_ndens to 1 (double precision)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2010
===============================================================
===============================================================
Tag name: ctsm5.1.dev127
Originator(s): sacks (Bill Sacks)
Date: Fri May 19 04:48:30 MDT 2023
One-line Summary: Fix nuopc cplhist test
Purpose and description of changes
----------------------------------
Make some changes to the cplhist testmod that fix the cplhist test,
based on testing done by Keith Oleson:
- Point to new cplhist forcing data generated and used by Adam
Herrington and Keith Oleson
- Use DATM_PRESNDEP=none until
https://github.com/escomp/ctsm/issues/1844 is resolved
Also, remove mct cplhist test.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Takes steps towards addressing ESCOMP/CTSM#1844 (Create new auxiliary
history file for cplhist test with ndep data)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Changes cplhist test; new test is
SMS_D_Ld1.ne30pg3_t061.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist
- Removes mct cplhist test
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Note that there were no baselines for the new test
(SMS_D_Ld1.ne30pg3_t061.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist)
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cdeps: cdeps1.0.12 -> cdeps1.0.13
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1999
===============================================================
===============================================================
Tag name: ctsm5.1.dev126
Originator(s): jpalex (John Alex)
Date: Thu May 18 17:21:59 MDT 2023
One-line Summary: Clean up some loops in UrbanTimeVarType
Purpose and description of changes
----------------------------------
Refactor some inefficient and confusing looping structures in
UrbanTimeVarType.F90
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1514 (Inefficient and confusing looping structures in UrbanTimeVarType.F90)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2005
===============================================================
===============================================================
Tag name: ctsm5.1.dev125
Originator(s): jpalex (John Alex)
Date: Sun Jul 9 21:04:13 MDT 2023
One-line Summary: Added cache for clock step_size in clm_time_manager.F90
Purpose and description of changes
----------------------------------
Added cache for clock step_size in clm_time_manager.F90 to improve
performance.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#207 (Improve performance of get_step_size)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/2004
===============================================================
===============================================================
Tag name: ctsm5.1.dev124
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326) / mvertens / adamrher / MiCurry / jtrusdal / TeaganKing
Date: Tue May 9 16:52:05 MDT 2023
One-line Summary: Initialization memory update, new surface datasets for new grids, add option for running NEON with PRISM data
Purpose and description of changes
----------------------------------
Lower memory usage at initialization:
Some work by Mariana Vertenstein to lower the memory usage at initiatlization.
New Low Resolutions for SE grids:
ne3np4.pg3, ne5np4.pg3, ne16np4.pg3
New MPASA Resolutions:
mpasa480 --------- Course resolution
mpasa120 --------- Near 1-degree
mpasa60, mpasa30 - High resolution
mpasa15 ---------- Very high resolution
This merge adds the surface data and landuse.timeseries files for the CAM-MPAS dycore. At present, these grids are:
mpasa480 - 480 km quasi-uniform, global with 2,462 horizontal grid columns
mpasa120 - 120 km quasi-uniform, global with 40,962 horizontal grid columns
mpasa60 - 60 km quasi-uniform, global with 163,842 horizontal grid columns
mpasa30 - 30 km quasi-uniform, global with 655,362 horizontal grid columns
mpasa15 - 15 km quasi-uniform, global with 2,621,442 horizontal grid columns
Option to Run NEON with PRISM preciption data:
Some NEON sites have bad or incomplete precitation data. By setting CLM_USRDAT_NAME="NEON.PRISM"
the PRISM 4km CONUS ReAnayslis data is used in place of the NEON precipitation data. This
is helpful for several NEON sites:
MLBS, MOAB, ONAQ, SJER, NIWO, TEAK, WREF, YELL
Allow PRISM precipitation to be used as a new datm stream.
Updates to cime_config/config_component.xml include additional valid values for PRECIP data stream names. Changes in
cime_config/usermods_dirs/NEON/defaults/user_nl_datm_streams specify which input variables are gathered from which streams and
specifies file location for PRISM data.
Using PRISM precipitation instead of NEON precipitation does have a substantial impact on CTSM output (eg. latent heat flux
biases).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1969 -- Move dynGrossUnrepMod.F90 from biogeochem to dyn_subgrid subdirectory
Fixes #1904 -- Other precipitation streams for NEON
Fixes #1927 -- Course SE resolutions support
Fixes #1313 -- MPASA resolution support
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
New resolutions do NOT have specific initial conditions for them, they use the general ones
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
NEON cases will give a warning about spinup data for non default transient cases
if you set a NEON case with CLM_USRDAT_NAME=NEON.PRISM, PRISM data will be used for precip
Two new options to run_neon.py "--prism" and "--experiment"
Changes made to namelist defaults (e.g., changed parameter values):
"v3" data option for NEONVERSION
Changes to the datasets (e.g., parameter, surface or initial files):
New surface and landuse.timeseries datasets for:
ne3np4.pg3, ne5np4.pg3, ne16np4.pg3
mpasa480, mpasa120, mpasa60, mpasa30, mpasa15
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing: Add new tests for new resolutions
Testing summary: regular, tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (81 new tests)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
cheyenne - PASS (tests_pretag_nompi_neon)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cdeps
Update CDEPS to cdeps1.0.12
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1998 -- combination of below PR's...
#1954 -- PRISM
#1973 -- SE
#1501 -- MPASA
#1899 -- memory scaling
===============================================================
===============================================================
Tag name: ctsm5.1.dev123
Originator(s): sacks (Bill Sacks)
Date: Mon May 1 11:37:51 MDT 2023
One-line Summary: Updates needed for pFUnit 4 and other externals updates
Purpose and description of changes
----------------------------------
(1) Lots of small changes needed for the update to pFUnit4. Note that
this is a backwards-incompatible update, so we will require pFUnit 4
moving forward.
(2) Externals updates: some of these are needed for the update to pFUnit
4; others are included to update externals to those in a recent CESM
alpha tag.
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Running the Fortran unit tests now requires pFUnit 4
- I didn't run the mksurfdata_map unit tests... these will be removed
soon anyway with the replacement of mksurfdata_map with mksurfdata_esmf
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Note: most testing run on 46968da7b; reran just izumi-nag testing on
the latest version (the only difference was in the version of the
ccs_config external, and the only diff there was for nag).
any other testing (give details below):
- Fortran unit tests (under src) on izumi and my Mac
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- ccs_config: ccs_config_cesm0.0.58 -> ccs_config_cesm0.0.64
- cime: cime6.0.100 -> cime6.0.108
- cmeps: cmeps0.14.17 -> cmeps0.14.21
- cdeps: cdeps1.0.7 -> cdeps1.0.9
- cpl7: cpl7.0.14 -> cpl77.0.5
- share: share1.0.16 -> share1.0.17
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1989
===============================================================
===============================================================
Tag name: ctsm5.1.dev122
Originator(s): sacks (Bill Sacks)
Date: Sun Apr 23 19:36:37 MDT 2023
One-line Summary: Rework handling of evaporation constraint in SoilFluxes
Purpose and description of changes
----------------------------------
Occasionally, h2osoi_ice was going significantly negative in
UpdateState_TopLayerFluxes - see
https://github.com/ESCOMP/CTSM/issues/1979. As noted in that issue, this
seems to be due to h2osoi_ice having a very different magnitude from
h2osoi_liq, leading to greater-than-roundoff-level differences from zero
final state in a relative sense (i.e., relative to the magnitude of
h2osoi_ice) - I think because of the appearance of the sum (h2osoi_ice +
h2osoi_liq) in the equations that limit fluxes.
To try to deal with this, I have reworked the handling of the
evaporation constraint to directly limit both the liqevap and solidevap,
so that both of them should result in the equivalent liq or ice states
going to 0 within roundoff.
To do that, I needed to move the partitioning of the total flux into
liquid and solid to earlier in the subroutine and then recalculate those
partitioning fluxes in conditions where we're applying an evaporation
constraint.
Note that I applied a max of 0 to the new fluxes because many initial
conditions files have roundoff-level negative H2OSOI_LIQ, so without
this limit, we were getting roundoff-level negative fluxes.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1979 (Need some changes to avoid negative h2osoi_ice in UpdateState_TopLayerFluxes)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Tests passed, some baseline differences as expected.
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: potentially all
- what platforms/compilers: potentially all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
roundoff
Differences were only observed in a few tests:
- ERP_P36x2_Ld30.f45_f45_mg37.I2000Clm51FatesSpCruRsGs.cheyenne_intel.clm-FatesColdSatPhen
- ERI_D_Ld9_P48x1.T31_g37.I2000Clm50Sp.izumi_nag.clm-reduceOutput
- SMS_D_Ln9_P36x3.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline
- SMS_D_Ln9_P36x3_Vmct.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline
If bitwise differences were observed, how did you show they were no worse
than roundoff?
Only two tests had greater-than-roundoff-level differences in the
cprnc output:
SMS_D_Ln9_P36x3.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline
and the mct equivalent,
SMS_D_Ln9_P36x3_Vmct.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline.
To verify that differences were fundamentally no greater than
roundoff-level, I introduced temporary code; this minimal diff
ended up being enough to give just roundoff-level differences from baseline:
diff --git a/src/biogeophys/SoilFluxesMod.F90 b/src/biogeophys/SoilFluxesMod.F90
index c316d30fe..6a958c0ee 100644
--- a/src/biogeophys/SoilFluxesMod.F90
+++ b/src/biogeophys/SoilFluxesMod.F90
@@ -45,7 +45,7 @@ subroutine SoilFluxes (bounds, num_urbanl, filter_urbanl, &
! Update surface fluxes based on the new ground temperature
!
! !USES:
- use clm_time_manager , only : get_step_size_real
+ use clm_time_manager , only : get_step_size_real, get_nstep
use clm_varcon , only : hvap, cpair, grav, vkc, tfrz, sb
use landunit_varcon , only : istsoil, istcrop
use column_varcon , only : icol_roof, icol_sunwall, icol_shadewall, icol_road_perv
@@ -79,7 +79,9 @@ subroutine SoilFluxes (bounds, num_urbanl, filter_urbanl, &
real(r8) :: t_grnd0(bounds%begc:bounds%endc) ! t_grnd of previous time step
real(r8) :: lw_grnd
real(r8) :: evaporation_limit ! top layer moisture available for evaporation
- real(r8) :: evaporation_demand ! evaporative demand
+ real(r8) :: evaporation_demand ! evaporative demand
+ real(r8) :: qflx_liqevap_orig
+ real(r8) :: qflx_solidevap_orig
!-----------------------------------------------------------------------
associate( &
@@ -291,6 +293,7 @@ subroutine SoilFluxes (bounds, num_urbanl, filter_urbanl, &
qflx_evap_soi(p) = qflx_evap_soi(p) - frac_sno_eff(c)*(evaporation_demand - evaporation_limit)
qflx_liqevap_from_top_layer(p) = max(h2osoi_liq(c,j)/(frac_sno_eff(c)*dtime), 0._r8)
qflx_solidevap_from_top_layer(p) = max(h2osoi_ice(c,j)/(frac_sno_eff(c)*dtime), 0._r8)
+
! conserve total energy flux
eflx_sh_grnd(p) = eflx_sh_grnd(p) + frac_sno_eff(c)*(evaporation_demand - evaporation_limit)*htvp(c)
endif
@@ -307,6 +310,24 @@ subroutine SoilFluxes (bounds, num_urbanl, filter_urbanl, &
qflx_ev_snow(p) = qflx_evap_soi(p)
qflx_liqevap_from_top_layer(p) = max(h2osoi_liq(c,j)/dtime, 0._r8)
qflx_solidevap_from_top_layer(p) = max(h2osoi_ice(c,j)/dtime, 0._r8)
+
+ if (h2osoi_liq(c,j) + h2osoi_ice(c,j) > 0._r8) then
+ qflx_liqevap_orig = max(qflx_evap_soi(p)*(h2osoi_liq(c,j)/ &
+ (h2osoi_liq(c,j)+h2osoi_ice(c,j))), 0._r8)
+ else
+ qflx_liqevap_orig = 0._r8
+ end if
+ qflx_solidevap_orig = qflx_evap_soi(p) - qflx_liqevap_orig
+ if (qflx_solidevap_from_top_layer(p) == 0._r8 .and. &
+ qflx_solidevap_orig < 0._r8 .and. &
+ qflx_solidevap_orig > -1.e-16_r8) then
+ write(iulog,'(a, i0, 1x, i0, 1x, 5e24.17)') &
+ 'WJS adj urb: solid orig le 0, new 0: nstep, p, orig, new, qflx_evap_soi, h2osoi_liq, h2osoi_ice = ', &
+ get_nstep(), p, qflx_solidevap_orig, qflx_solidevap_from_top_layer(p), &
+ qflx_evap_soi(p), h2osoi_liq(c,j), h2osoi_ice(c,j)
+ qflx_solidevap_from_top_layer(p) = qflx_solidevap_orig
+ end if
+
! conserve total energy flux
eflx_sh_grnd(p) = eflx_sh_grnd(p) +(evaporation_demand -evaporation_limit)*htvp(c)
endif
(Note that the diffs in
ERP_P36x2_Ld30.f45_f45_mg37.I2000Clm51FatesSpCruRsGs.cheyenne_intel.clm-FatesColdSatPhen
were ambiguous as to whether they were roundoff-level due to the
single-precision output in that test; I reran with double precision
for the baseline and the branch and was able to verify that the
diffs were only double-precision roundoff-level.)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1987
===============================================================
===============================================================
Tag name: ctsm5.1.dev121
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Wed Apr 5 13:34:09 MDT 2023
One-line Summary: Changes soil moisture initialization logic for FATES
Purpose and description of changes
----------------------------------
This PR changes the logic for soil moisture initialization to initialize
with wetter soils (75% of saturated water content, as opposed to 15% of
absolute water content) for all FATES configurations. The rationale for
this is that in FATES-nocomp simulations, Jessica Needham was finding very
high initial mortality rates in some seasonal tropical forest regions which
she traced it back to the initial soil moisture killing off plants before the
ecosystem could get established.
This also updates the fates externals pointer to the latest tag which includes
a number of science updates since the last tag update and updates the the
default parameter file.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Externals issues fixed (include issue #):
Partially addresses FATES#994 -- Bare ground establishment problem and increased soil moisture
Known bugs found since the previous tag (include issue #):
#1979 -- Need to loosen tolerance on near-zero truncation of h2osoi_ice in UpdateState_TopLayerFluxes
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
fates_paramfile updated to fates_params_api.25.4.0_12pft_c230327.nc
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
This changes the starting level for a COLD start of soil moisture for ALL FATES cases to a much
higher value than for non-FATES. In the long run we'd like to have these the same and/or
have the value changable on the namelist.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
FATES tests run against fates-sci.1.65.3_api.25.4.0-ctsm5.1.dev120 baseline
Answer changes
--------------
Changes answers relative to baseline:
Changes answers in fates suite for all non-hydro fates tests since the soil
moisture initialization matches that of fates hydro now. Changes answer
for all fates testmods in the aux_clm suite as the science tag has iterated
forward by 4 minor version updates. All diffs accounted for with prior fates
suite tests.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- FATES: sci.1.61.0_api.25.0.0 -> sci.1.65.3_api.25.4.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
https://github.com/ESCOMP/CTSM/pull/1962 -- Cold start moisture for FATES increased
https://github.com/ESCOMP/CTSM/pull/1978 -- revert some commits now that FUNITCTSM works again
===============================================================
===============================================================
Tag name: ctsm5.1.dev120
Originator(s): sacks (Bill Sacks)
Date: Sat Mar 25 17:49:27 MDT 2023
One-line Summary: Update externals and minor fixes
Purpose and description of changes
----------------------------------
Main change is to update externals to cesm2_3_alpha12c-ish.
Doing this exposed a few issues that are also fixed here.
Also, reduce GU_LULCC tests down to a single test.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1968 (Reduce the GULU tests down to one)
- Resolves ESCOMP/CTSM#1971 (fsurdatmodifyctsm test should abort if it has trouble running the python script)
Known bugs introduced in this tag (include issue #):
- ESCOMP/CTSM#1972 (FUNITCTSM test fails when run through run_sys_tests in upcoming ctsm5.1.dev120)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Fortran unit tests now need to be run manually, since FUNITCTSM is
failing when run through run_sys_tests
- Reduced GU_LULCC tests down to a single test
Testing summary:
----------------
regular tests:
- aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing
- Fortran unit tests on cheyenne (until https://github.com/ESCOMP/CTSM/issues/1972 is resolved): from src, run:
../cime/scripts/fortran_unit_testing/run_tests.py --build-dir `mktemp -d --tmpdir=. unit_tests.XXXXXXXX`
aux_clm on cheyenne ------------ OK
aux_clm on izumi --------------- OK
Fortran unit tests on cheyenne - PASS
For the two new tests (with BFAILs), ran them from dev119 with
comparison against this branch:
- ERP_D_Ld10_P36x2.f10_f10_mg37.IHistClm51BgcCrop.cheyenne_intel.clm-ciso_decStart
- SMS_Ld3_PS.f09_g17.IHistClm50BgcCrop.cheyenne_intel.clm-f09_dec1990Start_GU_LULCC
(with start date in the test mod changed to match the new version)
Answer changes
--------------
Changes answers relative to baseline: YES, but just for certain compilers
Summarize any changes to answers, i.e.,
- what code configurations: all on certain compilers
- what platforms/compilers:
- nvhpc on cheyenne in non-debug cases (can be explained from
differences in compilation flags for non-debug cases, and also
some module differences)
- intel on izumi in debug cases (there were updates in ESMF
modules, though that's the same for other izumi compilers; I'm not
seeing other relevant diffs in ccs_config, so I'm not sure why we're
getting diffs here. I tried investigating, but ran into trouble trying
to get things to compile with the old ccs_config, so gave up on
tracking down the source of this difference)
- nature of change (roundoff; larger than roundoff/same climate; new climate):
not investigated
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- ccs_config: ccs_config_cesm0.0.38 -> ccs_config_cesm0.0.58
- cime: cime6.0.45 -> cime6.0.100
- cmeps: cmeps0.13.71 -> cmeps0.14.17
- cdeps: cdeps0.12.65 -> cdeps1.0.7
- share: share1.0.13 -> share1.0.16
- pio: pio2_5_7 -> pio2_5_10
===============================================================
===============================================================
Tag name: ctsm5.1.dev119
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310), ekluzek Erik Kluzek), lawrencepj1 (Peter Lawrence)
Date: Thu Mar 16 14:13:37 MDT 2023
One-line Summary: Allow gross unrepresented land use transitions (PR #309)
Purpose and description of changes
----------------------------------
Get gross unrepresented land use transitions working in CLM5.1. This is additional optional
data added to the landuse.timeseries files for transient simulations. The current landuse.timseries
files have this data, but it's set to zero. This data will be part of the CTSM5.2 surface dataset
(that is upcoming) and be on by default for clm5_3 physics.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics
onfigurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer
hanges.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Known bugs introduced in this tag (include issue #): #1968
#1968 -- Reduce the GULU tests down to one
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
New namelist variable: do_grossunrep
Changes to the datasets (e.g., parameter, surface or initial files):
Surface datasets may now contain non-zero gross unrepresented land use
transitions.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Erik introduced new tests that can be identified by the GU_LULCC in
their names. I ran these with the test-suites and generated baselines
for them.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO (unless see next)
Code configurations: do_grossunrep = .true. and surface dataset
includes non-zero gross unrepresented land use
transitions. I (slevis) have not investigated the
nature of the changes.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/309 -- Added new files to allow Gross Unrepresented Land Use transition
https://github.com/ESCOMP/ctsm/pull/1965 -- update README
(NOT a PR) Update manage externals
===============================================================
===============================================================
Tag name: ctsm5.1.dev118
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Sun Feb 5 18:31:29 MST 2023
One-line Summary: Use conda environment rather than ncar_pylib with the fsurdat_modifier system test
Purpose and description of changes
----------------------------------
Reason: ncar_pylib is going away soon.
The fsurdat_modifier system test that we're discussing in this tag and
corresponding pull request (PR #1798)
FSURDATMODIFYCTSM_D_Mmpi-serial_Ld1.5x5_amazon.I2000Clm50SpRs.cheyenne_intel
stopped working when I updated the PR to dev117.
The test worked in the PR when I was still in dev115.
The test worked in vanilla dev117.
I fixed the failure by removing a restriction added in dev116 and the
corresponding override --allow_ideal_and_include_non_veg.
I am removing another restriction added in dev116 and the corresponding
override --allow_dom_pft_and_idealized. This one didn't cause a test to fail
but unnecessarily restricted usage of the fsurdat_modifier tool.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1786 -- ncar_pylib
Fixes #1925 -- replace ncar_pylib
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
clm_pymods test suite on cheyenne - PASS
(softlinks created for baselines to previous tag since this is bit-for-bit)
any other testing (give details below):
make all (in /python directory) - PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1798 -- Have fsurdat_modifier system test use conda environment rather than ncar_pylib
===============================================================
===============================================================
Tag name: ctsm5.1.dev117
Originator(s): afoster (Adrianna Foster)
Date: Thu Feb 2 10:34:23 MST 2023
One-line Summary: Updates to facilitate running FATES at NEON sites
Purpose and description of changes
----------------------------------
Small updates to facilitate creation, modification, and
use of FATES-usable (i.e. 16-PFT) NEON surface data files and
user-mods for FATES NEON cases.
Updated neon_surf_wrapper.py and modify_singlept_site_neon.py to include a
--16pft argument that will create and/or modify the 16-PFT versions of the
surface datasets, as well as a --mixed flag to the neon_surf_wrapper.py
which tells subset_data to not overwrite the surfae dataset to be just 100%
one PFT.
Also corrects lat-lon being used for ONAQ NEON site and updates the surface
datasets for all NEON sites.
Also adds a check to ensure that fire emission (-fire_emis) is not on if FATES
is being run.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Partially addresses ESCOMP/CTSM#1609(Get FATES working for NEON)
Known bugs introduced in this tag (include issue #):
#1949 - Duplication problems in user_mods
Known bugs found since the previous tag (include issue #):
#1948 - FATES and 78PFT surface datasets
FATES#983 - PRT2 test failing on izumi
Notes of particular relevance for users
---------------------------------------
Changes to the datasets (e.g., parameter, surface or initial files):
updated surface datasets for all NEON sites for big-leaf (78-PFT) and FATES (16-PFT)
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Files changed in cime_config/usermods_dirs/NEON for big-leaf CLM must also
be changed in similar files in cime_config/usermods_dirs/NEON/FATES, as these are
currently duplicated. This duplication should be fixed at a later date.
Changes to tests or testing:
Added a test in bld/unit_testers/build-namelist_test.pl to check that FATES and
fire emission cannot be on at the same time.
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline:
Only for NEON sites.
Summarize any changes to answers, i.e.,
- what code configurations: All configurations at NEON sites
- what platforms/compilers: All platforms when running NEON sites
- nature of change: updated surface datasets
Other details
-------------
#1933 - Update neon_sites_dompft.csv
#1932 - NEON FATES capabilities
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
===============================================================
===============================================================
Tag name: ctsm5.1.dev116
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu Jan 26 02:17:27 MST 2023
One-line Summary: Small answer changes with bug fixes, zetamaxstable=2 for BHS, new single point fsurdat files
Purpose and description of changes
----------------------------------
Change zetamaxstable to 2 when biomass-heat-storage is on. This changes simulation answers once they
run long enough to exceed that threshold.
Also fix an issue with maintence respiration (MR) for BGC simulations. This changes answers for most BGC cases once
they run long enough. Live course MR wasn't included.
Make the default for MOSART to send negative flow to river outlets. Also fix an issue with this mode.
Bring in new surface datasets for the single point sites. We now make these sites using subset_data rather
than mksurfdata.
Some new capability to the subset_data and modify_fsurdat tools.
subset_data add options:
--out-surface -- To name the surface dataset on the command line rather than based on the current date
--cfg-file ----- Enter the default configure file to use rather than assume a fixed one
modify_fsurdat add options:
--fsurdat_in -- to input on command line rather than config file
--fsurdat_out -- to input on command line rather than config file
--allow_ideal_and_include_non_veg -- to allow idealized and include_non_veg at the same time
--allow_dom_pft_and_idealized -- to allow dom_pft and idealized at the same time
--overwrite -- allow output file to be overwritten
config file options:
process_subgrid_section -- Read in an optional section to set the PCT_* fractions
process_var_list_section - Read in an optional section to set any variable on the file
Add --silent option to python tools.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[x] clm5_0
[ ] ctsm5_0-nwp
[x] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1676 -- live coarse maintenance respiration is not included in the root respiration
Fixes #1674 -- Change mksurfdata_map/mksurfdata_esmf Makefile to build single-point datasets using subset_data
Fixes #1809 -- Add ability to name a different default config file for subset_data
Fixes #1941 -- Add --silent option to ctsm_logging python infrastructure
Fixes #1942 -- Move py_env_create outside of tools test driver, as fails on compute nodes on cheyenne
Fixes #1924 -- Some updates to fsurdat_modifier script
Fixes #1690 -- Set and use zetamaxstable for BHS cases
Fixes #1689 -- Set zetamaxstable to 2 consistently for BHS
Externals issues fixed (include issue #):
MOSART #58 Make negative and direct_to_outlet the default option
MOSART #56 Some issues with direct_to_outlet
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): tools
Just to the subset_data and fsurdat_modifier tools as outlined above
Changes made to namelist defaults (e.g., changed parameter values):
zetamaxstable now 2.0 is use_biomass_heat_storage is on
Changes to the datasets (e.g., parameter, surface or initial files): Single point fsurdat
1x1_brazil, 1x1_numaIA, 1x1_smallvilleIA, 1x1_vancouverCAN, 1x1_mexicocityMEX, 1x1_urbanc_alpha
surface datasets and 1x1_brazil landuse.timeseries
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
tools test now just activates the ctsm_py conda environment rather than creating it
There are seperate configure files for each urban surface dataset for modify_fsurdat
There is a 1850 configure file for subset_data
Changes to tests or testing:
fsurdatmodifyctsm.py script adjusted to compensate for changes
python directory changes include unit and system tests to support updates
Single point mksurdata_map tests were removed
Testing summary: regular tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline:
Summarize any changes to answers, i.e.,
- what code configurations: clm5_1, supported single point resolutions
- what platforms/compilers: All
- nature of change: adjusted climate
clm5_1 changes because zetmaxstable set to 2.0. If a simulation runs long enough
this max will be hit and it will change answers once it does. But if stability
doesn't hit the max answers can be identical.
clm5_0 and clm4_5 also change if biomass heat storage is turned on
single point resolutions (i.e. 1x1_smallvilleIA, 1x1_brazil, 1x1_mexicocityMEX) have differences
maintenence respiration
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
Keith Oleson ran experiments with changing zetamaxstable some slides showing this are here:
https://docs.google.com/presentation/d/1u6ycr7F97QYYRcRfEdD9yIxH75diUx2r
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): mosart
mosart updated to mosart1_0_48
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1812 -- Get single point surface datasets from subset_data rather than mksurfdata
#1802 -- Make zetamaxstable consistently 2.0 when BHS on
#1915 -- Fix issue #1864 in release documentation
Update manage_externals (direct push to main-dev)
===============================================================
===============================================================
Tag name: ctsm5.1.dev115
Originator(s): rgknox (Ryan Knox)
Date: Fri Dec 2 15:45:32 MST 2022
One-line Summary: API compatability with FATES V2 nutrient dynamics
Purpose and description of changes
----------------------------------
This set of changes allows CTSM to continue API compatability with changes to the FATES API. FATES has updated its nutrient dynamics routine, and required a modification to the test environment, some minor updates to variable dimensions in the history, and a call to a new FATES history routine. Implicitly, the updating of the FATES tag introduces new content in the FATES model since the last API update (mostly bug fixes).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
The changes here will only affect FATES simulations. Any FATES simulation will be affected. Carbon-only FATES simulations will not have qualitatively different results since the last API update (but will have bit-for-bit differences). Nutrient enabled FATES simulations (not fully coupled to CLM, only via prognosed plant N,P boundaries), and FATES-Hydro simulations (bug fix) will be different.
Bugs fixed or introduced
------------------------
See the descriptions in FATES tags between sci.1.57.4_api.24.0.0 to sci.1.60.0_api.25.0.0 for details on FATES changes in this tag.
CTSM issues fixed (include CTSM Issue #): None
Externals issues fixed (include issue #): None
Known bugs introduced in this tag (include issue #): None
Known bugs found since the previous tag (include issue #): None
Notes of particular relevance for users
---------------------------------------
This set of changes comes with an updated FATES parameter file. This includes format changes only. No changes to variable values were introduced. Format changes are relegated to new parameters and/or name changes only. These changes are encapsulated in: fates/parameter_files/archive/apichange_24.2to25.xml
Notes of particular relevance for developers:
---------------------------------------------
Nothing of note regarding changes for developers.
Changes to tests or testing: New history variables were added to the FATES PRT2 user_nl_clm.
Testing summary:
----------------
regular
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- nominal: /glade/scratch/rgknox/tests_1201-121507ch
izumi ------- nominal: /scratch/cluster/rgknox/tests_1201-122133iz
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- nominal against ctsm5.1_dev112 /glade/scratch/rgknox/tests_1130-082657ch
izumi ------- NA
Answer changes
--------------
Changes answers relative to baseline: FATES answers changed relative to base. Explanation already provided (nutrient and hydro changes are qualitative).
Other details
-------------
FATES external was updated.
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1874
https://github.com/NGEET/fates/pull/880
===============================================================
===============================================================
Tag name: ctsm5.1.dev114
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)/@wwieder/@olyson/@ka7eh
Date: Sat Nov 19 18:11:15 MST 2022
One-line Summary: Some NEON updates fixing AG sites, update MOSART, small fixes
Purpose and description of changes
----------------------------------
Minor changes to python scripts and usermod_dirs for NEON cases. Also update the lightning mesh file so that it goes with the
smaller lightning file. Have NEON use new use-cases for 2018 and 2018-PD conditions for CLM. Have NEON
Agricultural sites run with prognostic crop. Simple fix for warning about NaN's in import/export data from/to coupler.
Get NEON tests working on izumi, add --inputdata-dir to subset_data and modify_singlept_site_neon.py so they aren't tied
to only running on cheyenne.
Also update MOSART with fixed for direct_to_outlet option.
Add error checking in ParitionWoodFluxes. Fix value of albgrd_col in SurfaceAlbefdoType.F90.
Previously, the wrong value (albgri_col) was being set in InitHistory.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1871 -- Error in NEON surface datasets for AG sites
Fixes #1876 -- NEON data in container
Fixes #1889 -- NEON AG sites are running without prognostic crop
Fixes #1363 -- 2018_control and 2018-PD_transient use-cases for NEON
Fixes #1896 -- Improve misleading error message in check_for_nans
Fixes #1263 -- Fix partitionWood fluxes
Fixes #1788 -- Fix albgrd_col
Fixes #1901 -- Fix NEONSITE YELL
Some on #1910 -- add pandas version check to modify_singlept_site_neon.py so will abort cleanly if version not updated
Known bugs found since the previous tag (include issue #):
#1910 -- modify_singlept_site_neon.py has trouble on izumi
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
NEON users: use neon_gcs_upload now. Filenames for NEON surface
datasets are changed. Start and end of simulations is different
for some sites, and managed by the user-mod-directories. The NEON
user-mod assumes transient cases will run with a transient compset
and the settings are slightly different for transient vs control
including pointing to 2018_control or 2018-PD_transient use-cases.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Add notes to python tools to run using conda environment setup in py_env_create
Changes made to namelist defaults (e.g., changed parameter values):
New use cases: 2018_control and 2018-PD_transient
Changes to the datasets (e.g., parameter, surface or initial files):
New updated NEON surface datasets
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Remove toolchain python scripts as this work was moved over to the ctsm5.2 development
Changes to tests or testing:
Add a run_black target to the python directory Makefile to run black and not just do a black check
Add python modules needed for neon scripts to conda py_create_env conda environment
Testing summary: regular, tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - OK (141 NEON tests are different than baseline)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
cheyenne (NEON) - PASS
izumi (NEON) -- OK (modify_singlept_site_neon.py test fails due to #1910)
izumi -- OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
Acheyenne -- PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
run_neon.py ran for all NEON sites ad, post-ad, and transient
Answer changes
--------------
Changes answers relative to baseline: No (other than NEON sites, and if direct_to_outlet turned on in MOSART)
Summarize any changes to answers, i.e.,
- what code configurations: NEON or if bypass_routing_option==direct_to_outlet in MOSART
- what platforms/compilers: all
- nature of change:
NEON AG sites are significantly different
NEON sites reran and reevaluated
MOSART direct_to_outlet option evaluated by @swensosc and @olyson
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): mosart
mosart updated from mosart1_0_45 to to mosart1_0_47 (asynchronous changes, and direct_to_outlet fixes)
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1872 -- NEON updates
#1814 -- Add error checking in partitionWoodFluxes
#1810 -- Fix albdgrd_col value
===============================================================
===============================================================
Tag name: ctsm5.1.dev113
Originator(s): sacks (Bill Sacks), ekluzek (Erik Kluzek), jedwards (Jim Edwards)
Date: Fri Oct 28 11:00:26 MDT 2022
One-line Summary: Fix some compsets; add only clauses for ESMF use statements
Purpose and description of changes
----------------------------------
(1) Fix I1850Clm51BgcCrop compset (was using CLM50 instead of CLM51)
- Resolves https://github.com/ESCOMP/CTSM/issues/1882
(2) Change LND_TUNING_MODE for DATM%CPLHIST compsets to use CAM tunings
since these cases typically use atmosphere forcings from CAM.
- Resolves https://github.com/ESCOMP/CTSM/issues/1885
(3) Add "only" clauses to ESMF use statements
- Resolves https://github.com/ESCOMP/CTSM/issues/1846
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves https://github.com/ESCOMP/CTSM/issues/1882 (I1850Clm51BgcCrop actually uses CLM50)
- Resolves https://github.com/ESCOMP/CTSM/issues/1885 (CPLHIST compsets should use same land tunings as for CAM compsets)
- Resolves https://github.com/ESCOMP/CTSM/issues/1846 (Add "only" clause to a problematic use statement in lnd_comp_nuopc for cce compiler)
Known bugs introduced in this tag (include issue #):
- https://github.com/ESCOMP/CTSM/issues/1887 (Gnu MCT builds will fail starting in ctsm5.1.dev113)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, but just for limited cases
Summarize any changes to answers, i.e.,
- what code configurations:
- Cases with I1850Clm51BgcCrop compset
- Cases with DATM%CPLHIST
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff; may be new climate
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1870
===============================================================
===============================================================
Tag name: ctsm5.1.dev112
Originator(s): adrifoster (Adrianna Foster), glemieux (Gregory Lemieux, LBL/NGEET)
Date: Sat Oct 15 16:26:28 MDT 2022
One-line Summary: Rework fates test definitions and add new fates tests
Purpose and description of changes
----------------------------------
This tag includes a number of updates to the fates test definitions and test list to gain more coverage:
(1) Reorder and update the fates test definitions so that fates satellite phenology mode
can be configured for cases using a compset.
(2) Add a long-term exact restart test to catch issues that may arise due to updates to
fates procedure calls during end of year simulation dates.
(3) Add a no-competition + fixed biogeography, non-satellite phenology test definition to provide
additional mode combination configuration.
(4) Update the fates externals tag to incorporate a fix a vegetation temperature exact restart
issue discovered while implementing (1) above.
(5) Truncate all testmods starting with "Fates" to mitigate running over the limits on the length
of testnames, typically when specifying custom `test_id` using `run_sys_test`.
(6) Updates the expected failures list.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1839 - Add more FATES tests that are longer than one year
Fixes #1817 - Make sure at least one test running FatesSp just uses the compset and not a test-mod directory
Fixes #1551 - Add FATES NoComp + FixedBiogeog regression test to the fates category of tests
Externals issues fixed (include issue #):
FATES#908 - Bareground area_pft not being carried over during restarts
FATES#911 - 24-hr running mean vegetation temperature is not b4b on threaded exact restart SatPhen test
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
FATES#897 is still unresolved, but is now covered by this updated test list.
FATES#701 was reopened
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
FATES tests run against both fates-sci.1.58.1_api.24.1.0-ctsm5.1.dev111 to check the
fates update against the previous baseline is in line with expected DIFFs and
fates-sci.1.59.7_api.24.1.0-ctsm5.1.dev111.
Answer changes
--------------
Changes answers relative to baseline:
Yes, for fates run modes only due non-b4b updates in multiple fates tags. These
include both software bug fixes and answer changing science updates.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1827
https://github.com/ESCOMP/CTSM/pull/1849
===============================================================
===============================================================
Tag name: ctsm5.1.dev111
Originator(s): jedwards (Jim Edwards), wwieder (Will Wieder), sacks (Bill Sacks)
Date: Wed Oct 5 13:05:52 MDT 2022
One-line Summary: Fixes for NEON cases
Purpose and description of changes
----------------------------------
Two sets of fixes for NEON cases:
(1) Fixes for leap year handling when there are discrepancies between
the model and the DATM forcing data in terms of whether the current year
is a leap year. This involved updates to the share and cdeps externals
from Jim Edwards.
(2) Other fixes for NEON cases from Will Wieder, as documented in
https://github.com/ESCOMP/CTSM/issues/1860
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1858 (calendar error in ESMF)
- Resolves ESCOMP/CTSM#1860 (run_neon not working as expected)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, but just for NEON cases
Summarize any changes to answers, i.e.,
- what code configurations: NEON cases
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
larger than roundoff
In testing, answer changes only show up in SMS_D_Mmpi-serial.CLM_USRDAT.I1PtClm51Bgc.izumi_nag.clm-default--clm-NEON-NIWO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cdeps: cdeps0.12.63 -> cdeps0.12.65
- share: share1.0.12 -> share1.0.13
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1862
===============================================================
===============================================================
Tag name: ctsm5.1.dev110
Originator(s): slevis (Samuel Levis, 303-665-1310)
Date: Mon Sep 26 17:31:22 MDT 2022
One-line Summary: Introduction of modify_meshes tool for use in I-cases and F-cases
Purpose and description of changes
----------------------------------
Merging the modify_meshes tool to main. This tool is a follow-up to the
modify_fsurdat tool for I- and F-cases where users are adding land to
areas that by default were expected as ocean. In such cases, fsurdat
modifications will take effect only if users also modify the mask_mesh
file which ultimately determines the landmask used by the CTSM.
Details in the tool's README.
Adding test_sys_mesh_modifier.py to python system tests.
Combining /modify_fsurdat and /modify_mesh_mask directories into one
directory: /modify_input_files
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1644 -- Prospective new tool for user to easily modify ocn/lnd mask in their CESM cases
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Adding test_sys_mesh_modifier.py to python system tests. This requires
"module load nco" before running "make stest" or "make all" in the /python
directory.
Testing summary:
----------------
[Remove any lines that don't apply.]
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
izumi - mostly PASS if approp. environment is loaded, but one test fails
because it requires "module load nco"
clm_pymods on cheyenne - PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1677 -- Modify mesh mask with new mesh_mask_modifier tool
===============================================================
===============================================================
Tag name: ctsm5.1.dev109
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Mon Sep 26 10:46:33 MDT 2022
One-line Summary: If not MIMICS, do not output certain MIMICS history fields
Purpose and description of changes
----------------------------------
Surrounded the "MIC" variables with mimics if-statements to prevent
from sending to history when not mimics. The MICC_HR fields are already
inactive, so nothing will appear different in history for these. The
TOTMIC* fields are active, so they will stop appearing in history when
not mimics.
In SoilBiogeochemCarbonFluxType.F90 T_SCALAR is Century-specific, so
I put a corresponding if-statement around that one.
We could stop sending to history a few more fields when mimics is off,
but they would require if-statements while looping through
ndecomp_cascade_transitions or ndecomp_pools. All such fields are
already "inactive" in SoilBiogeochemCarbonFluxType.F90.
The test-suite with all those fields changed to "active" PASSed.
So not adding if statements for those.
Other checks:
- I looked at MICC_HR in a CENTURY simulation and in a MIMICS
simulation and it looked the same: Zeros over land and 1e36 over ocean.
- The rest of the "inactive" variables are valid variables for both
CENTURY and MIMICS.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #): #1737
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
any other testing (give details below): See description text at top.
Answer changes
--------------
Changes answers relative to baseline: NO (but field lists differ)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1745
===============================================================
===============================================================
Tag name: ctsm5.1.dev108
Originator(s): adrifoster (Adrianna Foster)
Date: Thu Sep 8 08:22:38 MDT 2022
One-line Summary: Connect ozone from atmosphere
Purpose and description of changes
----------------------------------
Allow atmospheric input of ozone partial pressure (monthly, mol/mol) to CTSM and
use this ozone in the OzoneMod module.
Specific notes: Add ozone to atm2lndType and also add as an output history variable (ATM_O3).
Read in O3 in lnd_import_export. Connect to the OzoneMod module:
in CalcOzoneUptakeOnePoint we now use this input ozone, rather than a static parameter.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? No
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Partially addresses ESCOMP/CTSM#270 (Receive ozone from atmosphere)
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): Note that
currently ozone is used as an interpolated monthly variable, and is not yet
downscaled to the sub-daily scale. This will be done in a susequent PR.
Changes to the datasets (e.g., parameter, surface or initial files): New ozone
input files used in DATM mode to drive OzoneMod
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
All pass with only FIELDLIST diffs except for O3 tests, which have BASELINE DIFFs and NLCOMP fails.
This makes sense because we are using different ozone values to drive the OzoneMod:
ERP_D_Ld5_P48x1.f10_f10_mg37.I2000Clm50Sp.izumi_nag.clm-o3lombardozzi2015
ERP_P72x2_Ly3.f10_f10_mg37.I2000Clm50BgcCrop.cheyenne_intel.clm-irrig_o3falk_reduceOutput
cheyenne ---- OK
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: Yes
Summarize any changes to answers, i.e.,
- what code configurations: when o3_veg_stress_method = 'stress_falk' or 'stress_lombardozzi2015' in user_nl_clm
- what platforms/compilers: all
- nature of change: larger than roundoff
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1837
===============================================================
===============================================================
Tag name: ctsm5.1.dev107
Originator(s): adrifoster (Adrianna Foster)
Date: Wed Sep 7 14:40:33 MDT 2022
One-line Summary: Update Externals
Purpose and description of changes
----------------------------------
Brings CTSM up to date with the latest versions of CDEPS, CMEPS, and CPL7 to
facilitate needed changes in those components.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1822 (seq_drydep_mod should be replaced by shr_drydep_mod)
Known bugs introduced in this tag (include issue #):
- ESCOMP/CTSM#1844 (Create new auxiliary history file for cplhist test with ndep data)
Notes of particular relevance for users
---------------------------------------
Caveats for users: You can no longer run cplhist-forced cases with old cplhist files.
You will need to either use an older version of CTSM or use an updated version of the cplhist files.
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Two expected fails on cheyenne, one new expected fail due to issue just introduced (#1844)
FAIL SMS_D_Ld1_PS.f09_g17.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist RUN time=62 (EXPECTED FAILURE)
FAIL SMS_D.f10_f10_mg37.I2000Clm51BgcCrop.cheyenne_nvhpc.clm-crop RUN time=12 (EXPECTED FAILURE)
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: almost all configurations due to major change on CDEPS side to coszen angle time
interpolation (https://github.com/ESCOMP/CDEPS/pull/149). DIFFS for single-point cases from
update to how ZBOT is set (https://github.com/ESCOMP/CDEPS/pull/169), and NLDAS cases from
a fix for zero pressure in nldas2 configurations (https://github.com/ESCOMP/CDEPS/pull/159).
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
Other details
-------------
List any externals directories updated:
-cdeps: cdeps0.12.41 -> cdeps0.12.63
-cmeps: cmeps0.13.68 -> cmeps0.13.71
-cpl7: cpl7.0.13 -> cpl7.0.14
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1843
===============================================================
===============================================================
Tag name: ctsm5.1.dev106
Originator(s): mvertens (Mariana Vertenstein), sacks (Bill Sacks)
Date: Thu Aug 4 15:11:31 MDT 2022
One-line Summary: Reuse some files generated in initialization when rerunning
Purpose and description of changes
----------------------------------
A new directory is now in your run directory init_generated_files. These
two run time generated files - finidat_interp_dest.nc and the land
fraction file ctsm_landfrac.nc (which is new in this PR) - are put in
that directory when they are created. Then, if they already exist, they
are reused rather than being regenerated. (Technically, it looks for a
status file that flags successful creation of this file.) This applies
when you rerun a startup (non-restart) run a second or subsequent time,
as is common when doing development and testing.
For tests, theinit_generated_files directory is removed before running,
so that rerunning a test will do the same thing the second time.
There are occasional, rare cases when a user would need to manually
remove the init_generated_files directory e.g., when changing things
about N dominant landunits or PFTs.
Also, output was cleaned up in a few cases so that it did not span
multiple lines.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- If you do a run, then change a runtime parameter that makes the
previous finidat_interp_dest.nc file incompatible with the new
configuration (e.g., changing N dominant landunits or PFTs) then
rerun, you will need to remove the contents of the
run/init_generated_files subdirectory before rerunning. (You do *not*
need to remove this directory when changing finidat in user_nl_clm: in
this specific case, CTSM detects the change and regenerates
finidat_interp_dest even if one already exists.)
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- Removed finidat_interp_dest from the namelist; it is now hard-coded to
finidat_interp_dest.nc. (This seemed not to be used much, if ever, and
supporting this would have complicated the logic in this PR.)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Added a new test using a new test type (defined in CIME):
REUSEINITFILES. This runs two cases and compares them: the first runs
a case as normal; the second copies in the init_generated_files
directory from case one and then does a run that uses these saved
init_generated_files. This ensures that using the init_generated_files
does not change answers.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Two tests failed initially due to what appeared to be system issues:
- ERP_P36x2_D_Ld5.f10_f10_mg37.I1850Clm45BgcCru.cheyenne_intel.clm-default
(runtime error initially, passed upon rerun)
- SMS_Ly5_Mmpi-serial.1x1_brazil.IHistClm50BgcQianRs.izumi_intel.clm-newton_krylov_spinup
(build failure initially; passed after removing the build
directory, rebuilding and rerunning)
Answer changes
--------------
Changes answers relative to baseline: NO
Most FATES tests had baseline comparison failures, just for the
field fates_levcdam, but this turned out to be due to an error in
the stored baselines for ctsm5.1.dev104 that has now been corrected.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cime: cime6.0.40 -> cime6.0.45
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1793
===============================================================
===============================================================
Tag name: ctsm5.1.dev105
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Tue Jul 26 23:57:31 MDT 2022
One-line Summary: make interfaces more similar between fsurdat_modifier and subset_data tools
Purpose and description of changes
----------------------------------
The tools modify_fsurdat and subset_data have similar options
modify_fsurdat: zero_nonveg
subset_data: include-nonveg
modify_fsurdat: dom_plant
subset_data: dom-pft
Make more similar and use README file for documenting modify_fsurdat.
There's potential for additional changes to be addressed later.
Change name of manage_python_env to py_env_create as agreed in CTSM software meeting
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #): #1662
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
clm_pymods test suite on cheyenne - PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1714
https://github.com/ESCOMP/ctsm/pull/1799
===============================================================
===============================================================
Tag name: ctsm5.1.dev104
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Mon Jul 18 15:45:00 MDT 2022
One-line Summary: Update to fates history names and machine configuration
Purpose and description of changes
----------------------------------
This PR includes a number of minor fixes and updates associated with FATES.
A duplicate filter for all soils that was introduced during the the initial
implementation of FATES-SP mode is removed. A small set of FATES history
variable names have been updated necessitating an update to the testmod
user namelists. The ccs_config and cime externals have been updated to
include the FATES development workstation, lobata. The cime tag update
is necessary to include a fix enabling support for module initilization
on certain linux distributions (https://github.com/ESMCI/cime/issues/4260).
Finally, a minor fix was included to the initialization of the fates_levcdam
dimension that was introduced with the last fates api update.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
CTSM issues fixed (include CTSM Issue #):
Fixes #1794 -- Get lobata in ccs_config and working with NUOPC
Fixes #1488 -- Remove all_soil_patches filter and use and filter_inactive_and_active(nc)%soilp in it's place
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
FATES tests run against fates-sci.1.58.0_api.24.0.0-ctsm5.1.dev103 baseline
Answer changes
--------------
Changes answers relative to baseline:
Changes answers due to a correction only for a subset of fates testmods for the fates_levcdam dimension.
NLCOMP and FIELDLIST differences only due to expected ccs_config and fates updates.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- CIME: cime6.0.27 -> cime6.0.40
- ccs_config: ccs_config_cesm0.0.36 -> ccs_config_cesm0.0.38
- FATES: sci.1.58.0_api.24.0.0 -> sci.1.58.1_api.24.1.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
https://github.com/ESCOMP/CTSM/pull/1515
https://github.com/NGEET/fates/pull/854
===============================================================
===============================================================
Tag name: ctsm5.1.dev103
Originator(s): sacks (Bill Sacks)
Date: Tue Jul 12 22:27:30 MDT 2022
One-line Summary: Fix accumulation variables when changing model time step
Purpose and description of changes
----------------------------------
Accumulation variables (e.g., 1-day or 10-day averages) were writing and
reading their accumulation period (expressed in time steps) to the
restart file. This caused incorrect behavior when changing the model
time step relative to what was used to create the initial conditions
file (typically a 30-minute time step). So, for example, if you are
using a 15-minute time step with an initial conditions file that
originated from a run with a 30-minute time step (at some point in its
history), then an average that was supposed to be 10-day instead becomes
5-day; an average that was supposed to be 1-day becomes 12-hour, etc.
(The issue is that the number of time steps in the averaging period was
staying fixed rather than the actual amount of time staying fixed.)
For our out-of-the-box initial conditions files, this only impacts runs
that use something other than a 30-minute time step. Typically this
situation arises in configurations with an active atmospheric model that
is running at higher resolution than approximately 1 degree. It appears
that the biggest impacts are on VOC emissions and in BGC runs; we expect
the impact to be small (but still non-zero) in prescribed phenology (SP)
runs that don't use VOC emissions.
This tag fixes this issue by no longer writing or reading accumulation
variables' PERIOD to / from the restart file: this isn't actually needed
on the restart file.
See some discussion in https://github.com/ESCOMP/CTSM/issues/1789 for
more details, and see
https://github.com/ESCOMP/CTSM/pull/1802#issuecomment-1182743649 for
some discussion of outstanding weirdness that can result for
accumulation variables when changing the model time step. The summary of
that comment is: There could be some weirdness at the start of a run,
but at least for a startup or hybrid run, that weirdness should work
itself out within about the first averaging period. A branch or restart
run could have some longer-term potential weirdness, so for now I think
we should recommend that people NOT change the time step on a branch or
restart run. With (significant?) additional work, we could probably
avoid this additional weirdness, but my feeling is that it isn't worth
the effort right now. In any case, I feel like my proposed fix will
bring things much closer to being correct than they currently are when
changing the time step.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1789 (A bug in calculating accumulated fields
(24/240 hours averaged) when using a smaller timestep)
Known bugs found since the previous tag (include issue #):
- ESCOMP/CTSM#1804 (NSTEPS 0 everywhere for accumulation fields on some
initial conditions files)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Also ran these tests with comparisons against baselines:
SMS_D_Ld3.f10_f10_mg37.I1850Clm50BgcCrop.cheyenne_intel.clm-shortts
SMS_D_Ld3.f10_f10_mg37.I1850Clm50Sp.cheyenne_intel.clm-shortts
SMS_Lm1.f10_f10_mg37.I1850Clm50Sp.cheyenne_intel.clm-shortts
where 'clm-shortts' was a temporary testmod inheriting from default
and adding "./xmlchange ATM_NCPL=96".
Answer changes
--------------
Changes answers relative to baseline: YES, but just for configurations
with a time step that is not the standard 30-minute time step.
Summarize any changes to answers, i.e.,
- what code configurations: Simulations with a time step that is not 30-minutes
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Not investigated carefully. There can be substantial differences
for VOC emissions, and differences may also be significant in BGC
cases. Differences in SP cases appear to be more limited, since it
looks like the only differences in SP cases (other than VOC
emissions) come from differences in the T10 field (10-day average
temperature), which is used in some photosynthesis calculations.
For I compset configurations in the test suite, the only
configurations with time steps differing from 30 minutes are:
- mexicocity tests (but for the SP cases in the test suite, the
answer changes are diagnostic-only in a couple of fields, and
the short tests in the test suite don't produce any CLM
history files, so answer changes don't show up)
- vancouver tests that are long enough to produce history files
so that the diagnostic-only differences show up
- USUMB tests
- waccmx_offline (but, as with the mexicocity tests, these tests
are too short to produce history output)
The only specific tests in the test suite with answer changes are:
SMS_Ld12_Mmpi-serial.1x1_vancouverCAN.I1PtClm50SpRs.cheyenne_gnu.clm-output_sp_highfreq
SMS_D_Lm1_Mmpi-serial.CLM_USRDAT.I1PtClm50SpRs.cheyenne_intel.clm-USUMB_nuopc
SMS_D_Vmct_Lm1_Mmpi-serial.CLM_USRDAT.I1PtClm50SpRs.cheyenne_intel.clm-USUMB_mct
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1802
===============================================================
===============================================================
Tag name: ctsm5.1.dev102
Originator(s): sacks (Bill Sacks)
Date: Mon Jul 11 12:14:48 MDT 2022
One-line Summary: Fix LILAC interface to PIO
Purpose and description of changes
----------------------------------
Fixes the LILAC interface to PIO.
This involved splitting shr_pio_mod into two pieces:
(1) Reading configuration files and initializing PIO appropriately
(2) Storing information about PIO (io system descriptors, io types, io
formats) and providing an interface to query this information
Piece (2) lives in the share code and is used regardless of the driver.
Piece (1) is driver-specific, so for now we have three versions of that
piece: one in CMEPS (created by extracting the initialization pieces
from cmeps/cesm/nuopc_cap_share/shr_pio_mod.F90), one in the cpl7 repo
(created by extracting the initialization pieces from
share/src/shr_pio_mod.F90), and one in CTSM's LILAC directory (which is
essentially identical to the one in the cpl7 repo). Piece (2) the
actual share code piece is used by components (their use statements
stay exactly as they are now) as well as by piece (1) (which is
responsible for setting the module-level variables in piece (2)). See
https://github.com/ESCOMP/CTSM/issues/1759#issuecomment-1171779485 for
more context.
Much of the work here was in externals:
https://github.com/ESCOMP/CESM_share/pull/34,
https://github.com/ESCOMP/CMEPS/pull/306 and
https://github.com/ESCOMP/CESM_CPL7andDataComps/pull/16. So this PR
updates those externals to versions with those changes. In addition,
changes were needed within LILAC - to implement the LILAC version of
piece (1) described above.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1759 (LILAC test failing in ctsm5.1.dev095 with
cime/share/pio update)
Externals issues fixed (include issue #):
- https://github.com/ESCOMP/CESM_share/issues/33 (ctsm lilac should use
old shr_pio_mod.F90)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
In addition, to verify that the LILAC changes don't change answers, I ran
LILACSMOKE_D_Ld2.f10_f10_mg37.I2000Ctsm50NwpSpAsRs.cheyenne_intel.clm-lilac
with my changes rebased onto dev097 (in order to avoid recent answer
changing tags), with comparisons against dev094 (which was the last
time that test passed). It was bit-for-bit.
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- CMEPS: cmeps0.13.63 -> cmeps0.13.68
- CPL7: cpl7.0.12 -> cpl7.0.13
- share: share1.0.11 -> share1.0.12
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1800
https://github.com/ESCOMP/CESM_share/pull/34
https://github.com/ESCOMP/CMEPS/pull/306
https://github.com/ESCOMP/CESM_CPL7andDataComps/pull/16
===============================================================
===============================================================
Tag name: ctsm5.1.dev101
Originator(s): samrabin (Sam Rabin)
Date: Mon Jul 11 11:48:48 MDT 2022
One-line Summary: Fix winter wheat sowing window bugs
Purpose and description of changes
----------------------------------
Fixes problems with winter wheat sowing criteria: The "normal" sowing
condition for winter wheat only accounted for whether today is on/after
the first day of the planting window; it did not also require that today
is on/before the last day of the window. Additionally, the "last chance"
condition allowed planting anytime on/after the last day of the window.
See https://github.com/ESCOMP/CTSM/issues/1691 for details.
Winter wheat is not present in our standard surface datasets, so this
has no impact on typical simulations.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1691 (Problems with winter wheat sowing criteria)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, but just for winter wheat
Summarize any changes to answers, i.e.,
- what code configurations: Only configurations that include winter wheat
(this is non-standard, but winter wheat is included in smallville
tests, so smallville tests change answers)
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
not investigated, but expected to be larger than roundoff/same
climate (with possibly large local changes in areas with large
amounts of winter wheat)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1692
===============================================================
===============================================================
Tag name: ctsm5.1.dev100
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Tue Jul 5 17:40:21 MDT 2022
One-line Summary: Start bringing in matrixcn overall options and sparse matrix multiplier code, misc updates
Purpose and description of changes
----------------------------------
First Commit of CN Matrix Solution:
Start bringing in the use_matrixcn and use_soil_matrixcn control options for the Carbon/Nitrogen BGC model using
the matrix solution methodology developed by Dr. Yiqi Luo and his EcoLab members: Drs. Xingjie Lu,
Yuanyuan Huang and Zhengguang Du, at Northern Arizona University
Work on Anomaly forcing for SSEP scenarios:
Do some work on anomoly forcing for SSP scenarios. Update the script in tools/contrib to work with the latest
data and replicate results of Keith Oleson and Sean Swenson. Add some test cases for it.
Python Environment Management using Conda:
More work on the manage_python_env script to setup the "ctsm_py" conda environment. This now works for UCAR machines
(such as cheyenne and casper) as well as CGD machines (like izumi). This script can also be called for tools, and
the test tools mechanism is now using it rather than ncar_pylib.
./manage_python_env
SCAM Fix:
Add checkimport method for CMEPS so that single-column case can work with SCAM, from Jim Edwards.
Black Formatter for Python Code:
Run "black" python code reformatter on all code under the "python" directory. Add the commits
to .git-blame-ignore-revs so they can be ignored when "git blame" is used, if you add this
to each clone where you want this to apply:
git config blame.ignoreRevsFile .git-blame-ignore-revs
You can do it for your worktrees, but since the file only applies to CTSM for ctsm5.1.dev100 and
forward, you'll need to do it for each CTSM clone seperately. Also there is now a github action
that checks that python code under the "python" subdirectory is black clean. If it's not the action
will fail and send you an email about it.
Make Map Data Fix:
Simple fix from Sam Rabin.
Fix for DISPLA on History Output:
Fix from Keith Oleson to set history output for DISPLA (displa_patch) to zero when vegetation is buried by snow.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM issues fixed (include CTSM Issue #):
Fixes #1300 -- Update Anomaly forcing data and contrib scrip
Fixes #1396 -- Add test for Anomaly forcing and rename test for bias correction
Fixes #987 -- Anomaly Forcings
Fixes #1795 -- SMS_D.f45_f45_mg37.I2000Clm50FatesRs.cheyenne_gnu.clm-FatesColdDefDryDep fails in ctsm5.1.dev099
Fixes #1755 -- Handle python environments for CTSM tools
Fixes #1471 -- Add support for using "black" as a python formatter to our python coding process
Handles #1794 -- conda environment on CGD systems currently limits python versions to 3.7.0
Some work on #1796 for deprecation of ncar_pylib. Remove it's use in tools testing and in some documentation.
Some work on #1580 to add a file with the latest conda environment that will work
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
There is the introduction of lots of if statements for use_matrixcn and use_soil_matrixcn.
These if statements are added, but they are hardcoded off, so inactive. In some cases the
if statements could be reduced with some work, but maintaing both versions will be important
until that does happen. These statements need to be kept in the code, as well as a few places
where variables that will be needed for the Matrix solution code are added in, even though
they aren't needed in this version.
Some development was done on the tools/contrib/ssp_anomaly_forcing_smooth script, but the guts should
be moved over to the python directory, and the top level script moved outside of the contrib directory.
Changes to tests or testing:
Change name of bias-correction test
Add new tests for anomaly forcing for SSP cases
Remove Fates-Drydep test that is a known fail
Testing summary: regular tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
izumi ---- OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No, bit-for-bit
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
Start bringing in matrixcn overall options and sparse matrix multiplier code #1771
add checkimport to clm for scam case #1770
Apply black to python directory #1577
Fix missing hostname/CSMDATA in mkmapdata.sh #1765
Fix issue #1569 (History output for DISPLA is incorrect when vegetation is buried by snow) #1570
Fix issues #1769, #1607, #1389 in master documentation #1779
===============================================================
===============================================================
Tag name: ctsm5.1.dev099
Originator(s): rgknox (Ryan Knox)
Date: Tue Jun 21 03:20:42 PM EDT 2022
One-line Summary: Enabling FATES control over the number of patches on the natural land unit
Purpose and description of changes
----------------------------------
This set of changes 1) allows FATES to dictate the number of patches on the naturaly vegetated land unit and 2) is compatible with a version of FATES that updates the parameter file format (changes in parameter naming and parameter set). Efforts were made to adhere to the system of how patches are looped and loop bounds are defined. There is interaction with the reading of the surface file, which previously dictated all patch counts based on the number of PFTs in the file. FATES-SP and biogeography preserves the ability to use surface file weighting factors associated with PFTs and CFTs to drive area fractions in FATES. This change is motivated by FATES-side updates to the parameter file, which includes new settings where the user can control the number of primary "fates_maxpatch_primary" and secondary "fates_maxpatch_secondary" patches. Users should also be aware of a new namelist setting "use_fates_tree_damage" which defaults to false (inoperative).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
None
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CTSM Issues Fixed:
Fixes #1764 "fates test fails to run on dev095"
Fixes #1762 "Change threaded fates test from P32x2 to P36x2"
Fixes #1784 "Get dry-deposition working with FATES-SP mode"
Known bugs introduced in this tag (include issue #): None
Known bugs found since the previous tag (include issue #): None
Notes of particular relevance for users
---------------------------------------
Relevant issue #1785 "Refactor surfrd for FATES"
Relevant issue #1780 "Some collapse options should be disabled with FATES"
In the process of this PR, we learned that FATES is fundamentally incompatible with the dry-deposition code. FATES-SP may be compatibile, but still needs investigation.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): There is a new namelist setting for FATES simulations that turns on the crown damage module: "use_fates_tree_damage". Settings for this module can be found in the FATES parameter file. This namelist variable is a binary true/false, and it defaults to false.
Changes to the datasets (e.g., parameter, surface or initial files): Users should also be aware that FATES has a new parameter file format and API. The default file on the ucar dataserver has been updated.
Substantial timing or memory changes: none that we're aware of, but with more refined control of patch counts and allocation should come improvements in memory usage.
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance): None. Some new code was added to surfrdMod.F90, but this is not redundant. Efforts may be made in the future to have more unification there when we have FATES compatable with crops on the crop land-unit.
Changes to tests or testing: Tests were added to cover the new crown damage module, and combinations of dry-deposition and megan with FATES-SP. The build system is also aware that these features will not and should not be used with FATES in a non-SP framework.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests :
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here: dev098 was updated to point to the moost recent FATES tag: sci.1.57.4_api.23.0.0.
Answer changes
--------------
Changes answers relative to baseline: NLCOMP changes (differences in namelist fields) were the only differences and they were expected. All other tests generated B4B results.
===============================================================
===============================================================
Tag name: ctsm5.1.dev098
Originator(s): swensosc (Sean Swenson)
Date: Fri May 20 18:15:53 MDT 2022
One-line Summary: Correct perched water table calculation
Purpose and description of changes
----------------------------------
Modifies the calculation of the frost table and perched water table
layers.
This brings in the answer-changing aspects of the Hillslope Hydrology
branch (https://github.com/ESCOMP/CTSM/pull/1715).
Specific changes are:
* PerchedWaterTable
1) Frost table depth
a) original frost table determination looped from the top
of the soil column downward to the index of the first layer
whose temperature was <= freezing, and whose neighbor above
had a temperature above freezing. The frost table depth is
then given by the node of that soil layer, i.e. z(k_frz).
b) in the new method, the same index is found, but the
depth of the frost table is given by the depth of the top
of the frozen layer, i.e. zi(k_frz-1). Note zi(k_frz) would
be the bottom of layer k_frz.
2) Perched water table depth
a) in the original formulation, a loop from k_frz to layer 1
was used to identify the deepest layer in 1:k_frz whose
volumetric soil moisture was greater than a threshold given
by sat_lev (e.g. sat_lev = 0.9).
b) in the new method, the search is only done if k_frz is
greater than 1. The rationale is that if k_frz = 1, then
zwt_perched has already been initialized to the frost_table
depth (which is equal to the top of the uppermost soil layer),
and therefore no search is required.
3) Determining perched water table depth within layer
identified by index k_perch in 2)
a) in the original formulation, the perched water table
depth was calculated by linearly interpolating between layers
k_perch and k_perch+1, with no consideration of their relative
values. In the case where the deeper layer was drier than the
layer above it, this could result in values far outside the
soil layer.
b) in the new formulation, if the deeper layer is drier than the
layer above it (s1 > s2), then the perched water table depth is
simply given by the depth of the upper surface of layer k_perch,
i.e. zi(c,k_perch-1).
* PerchedLateralFlow
1) Removal of icefrac calculation
a) in the original calculation, the frozen layer was included,
so an ice impedance factor was calculated using icefrac. If
only unfrozen layers are used, no ice impedance factor is needed.
b) in the new formulation, the icefrac variable and loop are
removed.
2) Move loop calculating frost and perched water table depths
a) in the original formulation, the frost and perched water
table depths were calculated in the same loop as the calculation
of the lateral flow from the perched saturated zone.
b) in preparation for the hillslope hydrology branch, this
calculation is moved into its own loop.
3) q_perch calculation
a)in the original formulation, q_perch was calculated by summing
over layers k_perch to k_frost. However, because k_frost is now
identified as the frozen layer, and its depth the top of the frozen
layer, it should not be included in the calculation; only the
unfrozen layers above it should be included.
b) in the new formulation, the loop is bounded by k_frost-1 instead
of k_frost.
4) Removal of water from perched saturated zone
a) the in the original method, the frozen layer (k_frost)
was included in the loop. Also, the drainage was defined to be
negative, which was confusing.
b) in the new method, the frozen layer is not included in the
loop; water is only removed from the unfrozen layers above k_frost.
Calculate drainage as positive values, which are then subtracted
from the soil moisture in each layer.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: All Clm50 and Clm51 cases
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff; small changes to surface climate due to
differences originating in soil moisture
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1738
===============================================================
===============================================================
Tag name: ctsm5.1.dev097
Originator(s): sacks (Bill Sacks)
Date: Fri May 20 15:30:17 MDT 2022
One-line Summary: Update ccs_config to fix issue on izumi and maybe elsewhere
Purpose and description of changes
----------------------------------
Point to latest ccs_config
This fixes an issue I had on izumi where I couldn't run
anything (https://github.com/ESMCI/ccs_config_cesm/issues/45).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Externals issues fixed (include issue #):
https://github.com/ESMCI/ccs_config_cesm/issues/45
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Added LILAC test to the expected fails list (this has been failing for
the last 2 tags)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- ccs_config: ccs_config_cesm0.0.35 -> ccs_config_cesm0.0.36
===============================================================
===============================================================
Tag name: ctsm5.1.dev096
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed May 18 12:44:01 MDT 2022
One-line Summary: Fix a few glitches from the last tag
Purpose and description of changes
----------------------------------
Update cime to fix DAE issue
modify_neon issue
When FatesSp is on, make soil_decomp None by default
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1744 -- DAE tests fail
Fixes #1743 -- NEON test failing
Fixes #1749 -- cime path
Fixes #1752 -- modify_neon script
CIME Issues fixed (include issue #): Fix DAE tests
Known bugs introduced in this tag (include issue #):
#1759 -- LILAC test fails
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
manage_python_env is at a prototype stage and not fully developed
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
When use_fates_sp is set -- by default soil_decomp_method will be None
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Add a simple FatesSp test to aux_clm testlist
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS (neon tools)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
clm_pymods test suite on cheyenne -
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
Other details
-------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cime, ccs_config
cime to cime6.0.27
ccs_config to ccs_config_cesm0.035
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1753 -- Fix modify_singlept_site_neon.py script
#1750 -- Correct the path to cime python code
#1747 -- Fix a few glitches in last tag
===============================================================
===============================================================
Tag name: ctsm5.1.dev095
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Mon May 9 05:02:41 MDT 2022
One-line Summary: Turn soil BGC off for FATES-SP mode, externals updates, FatesSP user-mod directory and compset
Purpose and description of changes
----------------------------------
Bring in externals updates that include adding AWS as a supported machine.
Add a FatesSP compset and user-mod directory.
Turn soil-BGC off when running FatesSP. Replace PGI tests on izumi with nvhpc tests on cheyenne.
Fix an issue with a particular gnu compiler version in ch4Mod.F90 in DEBUG mode. Add some more
threading tests for Fates. Start adding a prescribed-LAI tests for FatesSp
Add a file to setup a python environment in conda for the python testing. Set line length for black
to same as pylint (100). Add some extra excludes for black to the pylint checking.
Paths for CIME python code was changed, which required changes to some CTSM python code.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes: #1720 -- Get FatesSp to run without soil-BGC
Fixes: #1726 -- Tutorial tasks
Fixes: #1729 -- SIGFPE in ch4Mod with DEBUG=TRUE
Fixes: #1610 -- Replace izumi_pgi tests with cheyenne_nvhpc
Initial add of FatesSP compset: #1697
Starts adding a test mod for: #1722 FatesSP with prescribed LAI
Some part of #1736 threading tests for Fates
Known bugs introduced in this tag (include issue #):
#1744 -- DAE tests fail
#1743 -- NEON test fails on izumi
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
FatesSp mode MUST be run with soil_decomp_method of None.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Add new compset: I2000Clm51FatesSpCruRsGs
Add new long compset trigger for FATES-SP mode: FATES-SP
And new user-mod directory: fates_sp
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
It's hardcoded in both build-namelist and the FORTRAN code that FatesSp mode must
be run with soil_decomp_method set to None. Some if statements would allow this to
change, but not all.
Changes to tests or testing:
Replace izumi_pgi with cheyenne_nvhpc
Remove pgi mct test, since DEBUG off nvhpc tests work
Add a DEBUG on test for FatesSp that currently fails (for fates testlist)
Have FatesColdDefReducedComplexSatPhen test-mod use the new fates_sp user-mod
Add FatesSp threaded test (both fates and aux_clm test lists)
FatesSp tests use new FatesSp compset
Testing summary: regular tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (2 tests change from ctsm5.1.dev094)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK (to mksrfdt_5x5_amazon_hirespft_2005)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne ---- OK
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: A few tests some roundoff difference in cpl history files
Externals update shows answer changes in very limited circumstances.
Only cpl history files show a roundoff difference for these tests:
SMS_D_Ld1_Mmpi-serial.f45_f45_mg37.I2000Clm50SpRs.izumi_gnu.clm-ptsROA
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): ccs_config, cime, cmeps, share, pio
ccs_config to ccs_config_cesm0.0.32
cime to cime6.0.26
cmeps to cmeps0.13.63
share to share1.0.11
pio to pio2_5_7
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1723 -- First pass at turnning Soil-BGC off for FatesSp
#1740 -- Workaround for some python unit tests
#1741 -- Fixes to run_neon
===============================================================
===============================================================
Tag name: ctsm5.1.dev094
Originator(s): negins (Negin Sobhani,UCAR/TSS,303-497-1224)
Date: Fri May 6 00:04:54 MDT 2022
One-line Summary: subset_data allows zeroing out nonveg landunits without any dompft selected
Purpose and description of changes
----------------------------------
Previously subset_data explicitly checked to make sure the user has chosen at
least one of the following options:
dominant pft(s) or
--include-nonveg (overrides default setting non-veg units to 0%)
However, Adrianna pointed out that this limits FATES users who would not
want to set a dominant pft(s) and would also want all 100% vegetated at the
single point. So I removed this capability. This needed recalculating
PCT_CROP and PCT_NATVEG while zero-ing out other land unit types.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes CTSM/#1707 -- Allowing the user to zero non-veg landunits without any
dominant pft given by the user.
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Previously the user needed to choose at least one of the following options
for subsetting at single points:
--dompft
--include-nonveg
Now the user is not required to specify either options and can still zero out
non-veg landunits without any dominant pft given by the user.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Added 4 new tests to python/ctsm/test/test_unit_singlept_data_surfdata.py
to test recalculation of PCT_CROP and PCT_NATVEG while zero-ing out non-veg
land units.
Testing summary:
----------------
here is guidance on different available levels of system testing:
python testing (if python code has changed; see instructions in python/README.md; document testing done):
clm_pymods test suite on cheyenne - PASS
pylint -- PASS (10.00/10) (cheyenne + python/3.7.9)
Python unit tests -- PASS (cheyenne)
Python system tests -- FAIL (cheyenne) (CTSM/Issue #1739)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1727
===============================================================
===============================================================
Tag name: ctsm5.1.dev093
Originator(s): slevis (Samuel Levis)
Date: Tue May 3 21:50:20 MDT 2022
One-line Summary: Modifications for FATES-MIMICS to work
Purpose and description of changes
----------------------------------
1) For FATES-MIMICS cases, use ligninNratioAvg calculated by FATES.
2) For FATES-MIMICS cases, use annsum_npp_col calculated by FATES.
3) Small modification to allow carbon-only to work with MIMICS.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1636 -- FATES tests fail with MIMICS active
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
MIMICS-FATES now do work together, but only as long as use_lch4 = .true.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
To confirm that MIMICS-FATES works, I added the testmod mimicsFatesColdDef.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO
...but made history variable CWDC_HR active.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1643
===============================================================
===============================================================
Tag name: ctsm5.1.dev092
Originator(s): sacks (Bill Sacks)
Date: Fri Apr 29 18:31:48 MDT 2022
One-line Summary: Refactor NutrientCompetition / CNAllocation to provide hooks for AgSys
Purpose and description of changes
----------------------------------
Major refactor of NutrientCompetition / CNAllocation to provide hooks
for AgSys crop model: separates the NutrientCompetition modules into
pieces based on (1) consolidating duplicate code between the Clm45 and
FlexibleCN versions, and (2) separating pieces that will vs. won't be
used for crop patches when running with the upcoming AgSys crop model.
I have restored the old CNAllocationMod, with some of the
responsibilities that it used to have. (I'm not sure it's appropriate to
have the calculation of gpp and maint resp in CNAllocationMod, but I
left it there because it has always been combined with the allocation
code, including back when we had a separate CNAllocationMod.)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO - though potential for answer
changes in unusual cases
One change in this tag has the potential for answer changes in
unusual cases, even though no answer changes were observed in
testing: Previously, only the FlexibleCN code applied some logic that
changed crop allocation fractions during the grainfill period if
peaklai had been reached. I have changed this so that this logic is
applied with or without FlexibleCN (because I have moved this block
of code to the CNAllocation module, which is shared between the
FlexibleCN and non-FlexibleCN versions). I thought this would change
answers, but it appears not to, at least based on the tests in the
test suite as well as an extra 5-year test I did at f19 resolution
(ERS_Ly5.f19_g17.IHistClm45BgcCrop.cheyenne_intel.clm-cropMonthOutput).
It's possible that this changes answers in rare cases or with an
unusual combination of options that we don't test: specifically, it
might change answers for the atypical situation where you are running
with FUN but not FlexibleCN. (In this case, I believe this change is
the correct thing to do.)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1705
===============================================================
===============================================================
Tag name: ctsm5.1.dev091
Originator(s): rgknox (Ryan Knox,rgknox@lbl.gov)
Date: Fri Apr 22 14:11:50 EDT 2022
One-line Summary: clm decomp method is now passed to fates to enabled mimics coupling
Purpose and description of changes
----------------------------------
This is a small changeset, which only adds the passing of a text based flag to FATES, that defines which soil decomposition method is active. This setting is needed by FATES, so that it can pass specific boundary conditions to CLM (and potentially ELM in the future). This change was necessitated because MIMICS requires a Nitrogen to lignin-carbon ratio in the litter flux, yet other decomposition schemes do not. Moreover, the generation of this boundary condition is not trivial, so it is worth it to avoid its computation if mimics is not on. This change should have NO impact on any tests.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
None
Notes of particular relevance for users
---------------------------------------
None, this does not currently have an affect on any functionality, it simply lays groundwork for FATES-MIMICS coupling. There are no changes to memory usage or run-time.
Notes of particular relevance for developers:
---------------------------------------------
No changes in testing. These changes will enable completion (or progress) on CTSM #1643
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- aux_clm, PASS, b4b against ctsm5.1.dev090
izumi ------- aux_clm, PASS, b4b against ctsm5.1.dev090
Answer changes
--------------
None
Pull Requests that document the changes (include PR ids): #1700
(https://github.com/ESCOMP/ctsm/pull/1700)
===============================================================
===============================================================
Tag name: ctsm5.1.dev090
Originator(s): samrabin (Sam Rabin)
Date: Thu Mar 31 15:03:34 MDT 2022
One-line Summary: Fix misleading name of "gddplant"
Purpose and description of changes
----------------------------------
1. Rename `gddplant_patch` to `hui_patch` (and `GDDPLANT` to `HUI`).
2. Add new variable `gddaccum_patch` (output `GDDACCUM`).
Output variable `GDDPLANT` (not included by default) is now `HUI`, and
new output `GDDACCUM` has been added to track _actual_ accumulation of
GDDs since planting without any modifications such as occurs here:
https://github.com/ESCOMP/CTSM/blob/d9ae4b48d9c55fe3c998019bcf76817da570db87/src/biogeochem/CNPhenologyMod.F90#L2044-L2046
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1655 (gddplant_patch (GDDPLANT) is misleadingly
named)
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- See above notes about changes to some output variables
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Changed variables output in crop testmod (and any testmods that inherit
from it)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
There are FIELDLIST diffs for cases using the crop testmod or other
testmods inheriting from it, but otherwise bit-for-bit.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1684
===============================================================
===============================================================
Tag name: ctsm5.1.dev089
Originator(s): sacks (Bill Sacks)
Date: Thu Mar 31 11:44:12 MDT 2022
One-line Summary: For CLM45 apply peaklai to aleaf in grainfill
Purpose and description of changes
----------------------------------
This tag makes the crop allocation code in
NutrientCompetitionCLM45defaultMod consistent with that in
NutrientCompetitionFlexibleCNMod by forcing aleaf to 1e-5 if peaklai has
been reached during the grainfill period (in addition to the similar
existing check that was already in both places during the vegetative
growth period). This reconciliation will be helpful so that I can
extract these into a shared subroutine.
I thought this would potentially change answers for CLM45 cases, but
based on the test suite and from a 5-year run of IHistClm45BgcCrop at
f19_g17 resolution, it seems like this won't change answers in our
typical configurations: From that 5-year f19_g17 run, whenever peaklai
is 1 during the grainfill period, aleaf is already exactly 1e-5. I don't
understand why this is always the case; maybe, in Clm45, if peaklai
isn't reached before grainfill then it is never reached that growing
season? I have come to suspect that the difference between Clm45 and
Clm50 in this respect may actually be due to whether you're running with
FUN, since running with FUN changes some relevant driver sequencing. So
it's possible that this would change answers for the atypical situation
where someone was running with FUN but not FlexibleCN; in this case, I
think this change would be the right thing to do. In addition, from the
test suite, I found this leads to answer changes when using CLM45
together with old hydrology (h2osfcflag = 0 and use_subgrid_fluxes =
.false.).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, but only in very limited cases
Summarize any changes to answers, i.e.,
- what code configurations: Very limited cases with crop and without
FlexibleCN (see below for details)
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
not investigated, but suspected to be larger than roundoff / same climate
I thought this would potentially change answers for CLM45 cases,
but based on the test suite and from a 5-year run of
IHistClm45BgcCrop at f19_g17 resolution, it seems like this won't
change answers in our typical configurations: From that 5-year
f19_g17 run, whenever peaklai is 1 during the grainfill period,
aleaf is already exactly 1e-5. I don't understand why this is
always the case; maybe, in Clm45, if peaklai isn't reached before
grainfill then it is never reached that growing season? I have
come to suspect that the difference between Clm45 and Clm50 in
this respect may actually be due to whether you're running with
FUN, since running with FUN changes some relevant driver
sequencing. So it's possible that this would change answers for
the atypical situation where someone was running with FUN but not
FlexibleCN; in this case, I think this change would be the right
thing to do. In addition, from the test suite, I found this leads
to answer changes when using CLM45 together with old hydrology
(h2osfcflag = 0 and use_subgrid_fluxes = .false.).
Tests with answer changes were:
ERP_D_P36x2_Ld3.f10_f10_mg37.I2000Clm45BgcCrop.cheyenne_gnu.clm-no_subgrid_fluxes
SMS_D_Ld1_P48x1.f10_f10_mg37.I2000Clm45BgcCrop.izumi_nag.clm-oldhyd
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1694
===============================================================
===============================================================
Tag name: ctsm5.1.dev088
Originator(s): samrabin (Sam Rabin)
Date: Mon Mar 28 10:13:22 MDT 2022
One-line Summary: Add outputs for annual crop sowing and harvest dates
Purpose and description of changes
----------------------------------
Added annual outputs of sowing and harvest dates (`SDATES` and `HDATES`,
respectively). This should simplify the determination of sowing and
harvest date for postprocessing.
- Sowing dates are on new dimension `mxgrowseas` (maximum number of
growing seasons allowed to begin in a year; currently hard-coded to 1).
- Harvest dates are on new dimension `mxharvests` (maximum number of
harvests allowed in a year), which is `mxgrowseas`+1. This is needed
because in year Y you might harvest a field that was planted in year
Y-1, then plant and harvest again.
- The lengths of these dimensions are public constants of `clm_varpar`.
Additionally, removed `cropplant` as discussed here:
<https://github.com/ESCOMP/CTSM/issues/1500#issuecomment-951404634>.
The `mxharvests` concept enables the addition of more such outputs to
further simplify crop postprocessing—for example, yield per growing
season as a direct output rather than needing to cross-reference daily
grain mass against the day of harvest.
These changes involved some rework to the crop phenology code that
changes answers for crop phenology in some circumstances. All answer
changes were determined to be due to issues / oddities in the old code.
See discussion in https://github.com/ESCOMP/CTSM/pull/1616 for details
(especially see
https://github.com/ESCOMP/CTSM/pull/1616#issuecomment-1049247565). To
summarize briefly, some issues with the old code were:
- Non-winter-cereal patches that had live crops at the beginning of the
year did not get planted later that year.
- There was some odd behavior for rice patches at exactly 0 deg latitude
- Crop root depth had unexpected values outside the growing season; now
root depth is set to 0 outside the growing season
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1537 (Output of sowing and harvest dates)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Added new crop outputs to the cropMonthOutput testmod in a 3rd, annual
history file
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, for Crop cases
Summarize any changes to answers, i.e.,
- what code configurations: Crop cases
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff, expected to be same climate
Changes answers for crop cases that are at least a few months long
and/or cross the year boundary; also SSP tests with Crop. These
changes arise due to fixing some issues / oddities that were present
in the old code.
Also changes ROOT_DEPTH outside of the crop growing season.
See description above for details, and also extensive discussion in
https://github.com/ESCOMP/CTSM/pull/1616 . Sam Rabin performed
extensive testing to demonstrate that answer changes all arise due
to fixing issues with the old code.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1616
===============================================================
===============================================================
Tag name: ctsm5.1.dev087
Originator(s): sacks (Bill Sacks)
Date: Thu Mar 24 12:25:10 MDT 2022
One-line Summary: Reduce aux_clm testing cost
Purpose and description of changes
----------------------------------
Use small PE counts for aux_clm tests and remove some redundant /
unnecessary tests.
This tag reduces the PE count for aux_clm tests so that all (I think)
tests fit in 4 nodes or less. This should both (1) reduce queue wait
time for tests and (2) reduce aux_clm testing cost (since, for high
resolution tests, most time is spent in initialization, so having more
PEs increases cost significantly without actually making the tests run
much, if any, faster). While doing this, I also noticed some tests that
felt redundant or unnecessary, and I have removed those.
To facilitate these changes, I have introduced new "S" PE layouts for
the f09, f19 and 0.125nldas2 resolutions. These layouts use 4 nodes (but
with DATM on just 1 node, because it is slightly faster to run it on one
node than four nodes). (I considered running DATM on its own node like
we do for production PE layouts, but that turns out to only improve
runtime slightly while increasing cost significantly, so I am having
DATM share one of the nodes used for LND.)
Here is a detailed list of the changes:
Changes to aux_clm test list:
I changed the following:
``` diff
2c2
< SMS_D_Ld9.f09_g17.I1850Clm50BgcNoAnthro.cheyenne_intel.clm-decStart1851_noinitial
---
> SMS_D_Ld3_PS.f09_g17.I1850Clm50BgcNoAnthro.cheyenne_intel.clm-decStart1851_noinitial
7c7
< SMS_D_Ld1.f09_g17.I1850Clm50Sp.cheyenne_intel.clm-default # Include a test of this scientifically-supported compset at a scientifically-supported resolution
---
> SMS_D_Ld1_PS.f09_g17.I1850Clm50Sp.cheyenne_intel.clm-default # Include a test of this scientifically-supported compset at a scientifically-supported resolution
14,17c14,15
< SMS_D_Ln9_P480x3.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline # Run a transient case with standalone settings similar to the FXHIST waccm test
< SMS_D_Ln9_P480x3_Vmct.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline # MCT test covering drydep, megan and Gregorian calendar.
---
> SMS_D_Ln9_P36x3.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline # Run a transient case with standalone settings similar to the FXHIST waccm test
> SMS_D_Ln9_P36x3_Vmct.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline # MCT test covering drydep, megan and Gregorian calendar.
20c18
< ERI_Ld9.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_intel.clm-drydepnomegan
---
> ERI_Ld9.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_gnu.clm-drydepnomegan
32c30
< SMS_Ln9_P360x2.C96_C96_mg17.IHistClm50BgcCrop.cheyenne_intel.clm-clm50cam6LndTuningMode # Want one C96 test in the aux_clm test suite; just a short smoke test to make sure it can get off the ground. Use a PE layout that (1) has threading, because CAM uses threading at this resolution; and (2) has a smaller-than-standard task count in order to get through the queue faster.
---
> SMS_Ln9_P72x2.C96_C96_mg17.IHistClm50BgcCrop.cheyenne_intel.clm-clm50cam6LndTuningMode # Want one C96 test in the aux_clm test suite; just a short smoke test to make sure it can get off the ground. Use a PE layout that (1) has threading, because CAM uses threading at this resolution; and (2) has a smaller-than-standard task count in order to get through the queue faster.
36,37c34
< ERP_D_Ld5.f19_g17.I2000Clm50BgcCru.cheyenne_intel.clm-fire_emis
---
> ERP_D_Ld5.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_gnu.clm-fire_emis
42c39
< ERP_D_Ld5.f19_g17.IHistClm50SpCru.cheyenne_intel.clm-drydepnomegan
---
> ERP_D_Ld5.f10_f10_mg37.IHistClm50SpCru.cheyenne_gnu.clm-drydepnomegan
66,67c62
< ERP_Ld5.f10_f10_mg37.I1850Clm50Bgc.cheyenne_intel.clm-drydepnomegan
---
> ERP_D_Ld5.f10_f10_mg37.I1850Clm50Bgc.cheyenne_gnu.clm-drydepnomegan
87,90c78,80
< ERP_P180x2_D.f19_g17.I2000Clm50SpRtmFl.cheyenne_intel.clm-default # include a debug test with flooding on
< ERP_P180x2_D_Ld5.f19_g17_gris4.I1850Clm50BgcCropG.cheyenne_intel.clm-glcMEC_increase # cism is not answer preserving across processor changes, but short test length should be ok.
< ERP_P180x2_D_Ld5.f19_g17.I2000Clm50Sp.cheyenne_intel.clm-default
---
> ERP_P36x2_D.f10_f10_mg37.I2000Clm50SpRtmFl.cheyenne_intel.clm-default # include a debug test with flooding on
> ERP_P72x2_D_Ld5.f19_g17_gris4.I1850Clm50BgcCropG.cheyenne_intel.clm-glcMEC_increase # cism is not answer preserving across processor changes, but short test length should be ok.
> ERP_P36x2_D_Ld5.f10_f10_mg37.I2000Clm50Sp.cheyenne_gnu.clm-default
106,108c96
< ERS_D_Ld3.f19_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-clm50dynroots
---
> ERS_D_Ld3.f10_f10_mg37.I1850Clm50BgcCrop.cheyenne_intel.clm-clm50dynroots
114c102
< ERS_Ld3.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-rad_hrly_light_res_half
---
> ERS_Ld3_D.f10_f10_mg37.I1850Clm50BgcCrop.cheyenne_gnu.clm-rad_hrly_light_res_half
128,129c116,117
< LII_D_Ld3.f19_g17.I2000Clm50BgcCrop.cheyenne_intel.clm-default # Basic LII test, covering the standard range of subgrid heterogeneity - particularly, including crop. Uses a year-2000 restart file so that the restart file has non-zero product pools, so that we exercise the gridcell-level code in init_interp.
< LII2FINIDATAREAS_D_P360x2_Ld1.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-default # Exercise the init_interp_method='use_finidat_areas' option. See documentation at the top of the python script implementing this test for more details and rationale. This test requires a compatible finidat file (i.e., a file that can be used without interpolation). If no such file is available out-of-the-box, then the test will need to use a testmod that points to a compatible file.
---
> LII_D_Ld3_PS.f19_g17.I2000Clm50BgcCrop.cheyenne_intel.clm-default # Basic LII test, covering the standard range of subgrid heterogeneity - particularly, including crop. Uses a year-2000 restart file so that the restart file has non-zero product pools, so that we exercise the gridcell-level code in init_interp.
> LII2FINIDATAREAS_D_P72x2_Ld1.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-default # Exercise the init_interp_method='use_finidat_areas' option. See documentation at the top of the python script implementing this test for more details and rationale. This test requires a compatible finidat file (i.e., a file that can be used without interpolation). If no such file is available out-of-the-box, then the test will need to use a testmod that points to a compatible file.
139c127
< SMS_D_Ld1.f09_g17.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist
---
> SMS_D_Ld1_PS.f09_g17.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist
141,142c129,130
< SMS_Vmct_D_Ld1.f09_g17.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist # pgi test for MCT driver since nuopc is not passing
< SMS_D.f19_f19_mg17.I2010Clm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode
---
> SMS_Vmct_D_Ld1_PS.f09_g17.I1850Clm50BgcSpinup.cheyenne_intel.clm-cplhist # pgi test for MCT driver since nuopc is not passing
> SMS_D_Ld1_PS.f19_f19_mg17.I2010Clm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode
173c161
< SMS_Ld1.f09_g17.I2000Clm50BgcCru.cheyenne_intel.clm-af_bias_v7
---
> SMS_Ld1_PS.f09_g17.I2000Clm50BgcCru.cheyenne_gnu.clm-af_bias_v7
177,178c165
< SMS_Ld2_D.f09_g17.I1850Clm50BgcCropCmip6.cheyenne_intel.clm-basic_interp # This gives a short debug test of the cmip6 configuration as well as a test of the cmip6 configuration at the production resolution, both of which we want. This test needs to use init_interp to work, because of adding virtual Antarctica columns.
---
> SMS_Ld2_D_PS.f09_g17.I1850Clm50BgcCropCmip6.cheyenne_intel.clm-basic_interp # This gives a short debug test of the cmip6 configuration as well as a test of the cmip6 configuration at the production resolution, both of which we want. This test needs to use init_interp to work, because of adding virtual Antarctica columns.
186c172
< SMS_Lm13.f19_g17.I2000Clm51BgcCrop.cheyenne_intel.clm-cropMonthOutput # include a relatively long crop test at relatively high resolution
---
> SMS_Lm13_PS.f19_g17.I2000Clm51BgcCrop.cheyenne_intel.clm-cropMonthOutput # include a relatively long crop test at relatively high resolution
190c176
< ERP_D_Ld10.f19_g17.I1850Clm51BgcCrop.cheyenne_intel.clm-ADspinup # Include a restart test for AD spinup mode because of specific logic for spinup_state. Lack of this test did cause a problem.
---
> ERP_D_Ld10.f10_f10_mg37.I1850Clm51BgcCrop.cheyenne_intel.clm-ADspinup # Include a restart test for AD spinup mode because of specific logic for spinup_state. Lack of this test did cause a problem.
195c181
< ERS_D_Ld5.f09_g17.I2000Clm50FatesRs.cheyenne_intel.clm-FatesColdDef # Want one fates test on a large grid: Since FATES has cohorts, it has potential to be a massive memory consumer and netcdf array size maker, so the large grid test will help smoke out these types of issues (and it's a restart test to cover possible memory/netcdf size issues with the restart file).
---
> ERS_D_Ld3_PS.f09_g17.I2000Clm50FatesRs.cheyenne_intel.clm-FatesColdDef # Want one fates test on a large grid: Since FATES has cohorts, it has potential to be a massive memory consumer and netcdf array size maker, so the large grid test will help smoke out these types of issues (and it's a restart test to cover possible memory/netcdf size issues with the restart file).
209c195
< SMS_Ld5.f19_g17.I2000Clm50FatesRs.cheyenne_intel.clm-FatesColdDef
---
> SMS_Ld5_PS.f19_g17.I2000Clm50FatesRs.cheyenne_gnu.clm-FatesColdDef
223,224c209,210
< SMS_Ld1.nldas2_rnldas2_mnldas2.I2000Ctsm50NwpSpNldas.cheyenne_gnu.clm-default # Include a short smoke test covering the nldas2 grid and the I2000Ctsm50NwpSpNldas compset, which uses NLDAS datm forcing.
< SMS_Ld1.nldas2_rnldas2_mnldas2.I2000Ctsm50NwpSpNldasRs.cheyenne_gnu.clm-default # Include a short smoke test covering the nldas2 grid and the I2000Ctsm50NwpSpNldasRs compset, which uses NLDAS datm forcing.
---
> SMS_Ld1_PS.nldas2_rnldas2_mnldas2.I2000Ctsm50NwpSpNldas.cheyenne_gnu.clm-default # Include a short smoke test covering the nldas2 grid and the I2000Ctsm50NwpSpNldas compset, which uses NLDAS datm forcing.
> SMS_Ld1_PS.nldas2_rnldas2_mnldas2.I2000Ctsm50NwpSpNldasRs.cheyenne_gnu.clm-default # Include a short smoke test covering the nldas2 grid and the I2000Ctsm50NwpSpNldasRs compset, which uses NLDAS datm forcing.
232c217
< PFS_Ld20.f09_g17.I2000Clm50BgcCrop.cheyenne_intel # Can use this test to determine if there are significant throughput changes, at least for this common and important configuration. Note that this deliberately doesn't have any testmods in order to (1) avoid doing history output (because the timing of output can be very variable, and mixing output timing with other aspects of model time can be confusing), and (2) generally keep the test replicating a production configuration as closely as possible (so, for example, we do NOT set BFBFLAG=TRUE for this test).
---
> PFS_Ld10_PS.f19_g17.I2000Clm50BgcCrop.cheyenne_intel # Can use this test to determine if there are significant throughput changes, at least for this common and important configuration. Note that this deliberately doesn't have any testmods in order to (1) avoid doing history output (because the timing of output can be very variable, and mixing output timing with other aspects of model time can be confusing), and (2) generally keep the test replicating a production configuration as closely as possible (so, for example, we do NOT set BFBFLAG=TRUE for this test).
```
In addition, I moved the following tests to ctsm_sci:
SMS_Ln9_P144x3.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline2005Start # Do a test similar to FXHIST starting at a 2005 start date, will interpoalte from the 2003 IC file
SMS_Lm1.f19_g17.I1850Clm50BgcCropCmip6waccm.cheyenne_intel.clm-basic # The main point of this test is simply to make sure that the CMIP6WACCMDECK modifier works for 2-degree since that resolution turns off Carbon isotopes
and I completely removed the following tests:
SMS_Ld1.f09_g17.I1850Clm50Bgc.cheyenne_intel.clm-drydepnomegan
ERI_Ld9.f10_f10_mg37.I1850Clm50Bgc.cheyenne_gnu.clm-drydepnomegan
ERP_D_Ld5.f19_g17.I2000Clm50BgcCru.cheyenne_intel.clm-default
ERP_Ld5.f19_g17.I1850Clm50Bgc.cheyenne_intel.clm-default
ERP_Ld5.f19_g17.I2000Clm50SpRtmFl.cheyenne_gnu.clm-default
ERP_Ld5.f19_g17.I2000Clm50BgcCru.cheyenne_intel.clm-default
ERP_Ld3.f09_g17.I1850Clm50BgcCropCru.cheyenne_intel.clm-ciso
ERP_P180x2_D_Ld5.f19_g17_gris4.I1850Clm50BgcCropG.cheyenne_intel.clm-default
ERS_D_Ld3.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_intel.clm-default
ERS_D_Ld3.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_gnu.clm-default
SMS_Ld5.f19_g17.IHistClm50Bgc.cheyenne_intel.clm-decStart
SMS_Lm1.f19_g17.I1850Clm50Bgc.cheyenne_intel.clm-clm50dynroots
In general, these removed tests felt redundant with existing tests
(including some low-resolution tests that I happened to notice as
feeling redundant as I was reworking the testing).
Changes to ctsm_sci test list:
See notes above for tests moved from the aux_clm test list to the
ctsm_sci test list; other than that, I did not make any changes to
the ctsm_sci test list.
Changes to prealpha test list
I made the following changes to the prealpha test list to keep it in
line with the aux_clm test list:
``` diff
< prealpha: ERP_Ld5.f19_g17.I2000Clm50SpRtmFl.cheyenne_gnu.clm-default
< prealpha: ERP_P180x2_D_Ld5.f19_g17_gris4.I1850Clm50BgcCropG.cheyenne_intel.clm-default
< prealpha: ERP_P180x2_D_Ld5.f19_g17.I2000Clm50Sp.cheyenne_intel.clm-default
---
> prealpha: ERP_P36x2_D.f10_f10_mg37.I2000Clm50SpRtmFl.cheyenne_intel.clm-default # include a debug test with flooding on
> prealpha: ERP_P72x2_D_Ld5.f19_g17_gris4.I1850Clm50BgcCropG.cheyenne_intel.clm-glcMEC_increase # cism is not answer preserving across processor changes, but short test length should be ok.
> prealpha: ERP_P36x2_D_Ld5.f10_f10_mg37.I2000Clm50Sp.cheyenne_gnu.clm-default
```
Changes to prebeta test list:
I made the following changes to the prealpha test list to keep it in
line with the aux_clm test list:
``` diff
1c1
< prebeta: SMS_D_Ld9.f09_g17.I1850Clm50BgcNoAnthro.cheyenne_intel.clm-decStart1851_noinitial
---
> prebeta: SMS_D_Ld3_PS.f09_g17.I1850Clm50BgcNoAnthro.cheyenne_intel.clm-decStart1851_noinitial
3,4c3
< prebeta: ERP_D_Ld5.f19_g17.I2000Clm50BgcCru.cheyenne_intel.clm-fire_emis
< prebeta: ERP_D_Ld5.f19_g17.IHistClm50SpCru.cheyenne_intel.clm-drydepnomegan
---
> prebeta: ERP_D_Ld5.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_gnu.clm-fire_emis
> prebeta: ERP_D_Ld5.f10_f10_mg37.IHistClm50SpCru.cheyenne_gnu.clm-drydepnomegan
9,10c8,9
< prebeta: ERS_D_Ld3.f19_g17.I1850Clm50BgcCrop.izumi_intel.clm-clm50dynroots
< prebeta: ERS_D_Ld3.f19_g17.I1850Clm50BgcCrop.izumi_pgi.clm-clm50dynroots
---
> prebeta: ERS_D_Ld3.f10_f10_mg37.I1850Clm50BgcCrop.izumi_intel.clm-clm50dynroots
> prebeta: ERS_D_Ld3.f10_f10_mg37.I1850Clm50BgcCrop.izumi_pgi.clm-clm50dynroots
```
In addition, I removed the following from the prebeta test list:
ERP_Ld5.f19_g17.I2000Clm50SpRtmFl.cheyenne_gnu.clm-default
SMS_Ld1.f19_g17.I2000Clm50BgcCru.cheyenne_intel.clm-default
SMS_Lm1.f19_g17.I1850Clm50BgcCropCmip6waccm.cheyenne_intel.clm-basic # The main point of this test is simply to make sure that the CMIP6WACCMDECK modifier works for 2-degree since that resolution turns off Carbon isotopes
For the removed tests, we already have similar tests to these
removed tests in the prealpha and/or prebeta test suites. (It is
unnecessary to have the same tests in both prealpha and prebeta test
lists, because the prebeta test list is generally just run on tags
that have already been through prealpha testing.)
Other test categories:
I did not make any changes to other test categories: fates,
aux_cime_baselines, clm_pymods or clm_short. The fates test category
has some high resolution tests that should probably be changed
similarly to what I did here.
Some notes on the changed tests:
All of the new (changed) tests pass. Nearly all of them run in less
than 10 min (and some of them actually run faster than before); the
one exception is
`SMS_Lm13_PS.f19_g17.I2000Clm51BgcCrop.cheyenne_intel.clm-cropMonthOutput`,
which has a 31 min run time; that is as expected. I feel like that's
acceptable: it's in the neighborhood of some of our other long
tests, and I feel like it's worth having one more long-running test
in order to avoid having anything that might sit in the queue too
long. We could consider putting this test on something like 8 nodes
instead of 4 if we find that it is consistently the last test to
finish, but for now I wanted to try for a goal of having all tests
on 4 nodes or fewer.
I compared the detailed timing files from the new
`PFS_Ld10_PS.f19_g17.I2000Clm50BgcCrop.cheyenne_intel` test with the
original `PFS_Ld20.f09_g17.I2000Clm50BgcCrop.cheyenne_intel` test.
For the most part, the relative timings of different pieces are
about the same in both - at least for the major culprits, which is
what I compared. So this is good: I feel like we can use the new
test to still give indications of when the timing of a particular
section changes significantly, and be reasonably confident that the
same result would hold for an f09 test with higher processor count.
The total testing time from start to finish is:
- cheyenne_gnu: 1:06
- cheyenne_intel: 2:10
- izumi_gnu: 1:09
- izumi_intel: 1:46
- izumi_nag: 1:31
- izumi_pgi: 1:27
Note that I think the izumi tests would have completed sooner if not
for the fact that we are limited in how many jobs we can run
simultaneously in izumi, so jobs tend to stay stuck in the queue for
a while.
The test that I was concerned about taking a longer time to run,
SMS_Lm13_PS.f19_g17.I2000Clm51BgcCrop.cheyenne_intel.clm-cropMonthOutput,
was the second-to-last cheyenne test to finish, but a bunch of other
tests finished just one minute before it (and
ERS_Ly5_P144x1.f10_f10_mg37.IHistClm51BgcCrop.cheyenne_intel.clm-cropMonthOutput,
the last test to finish, finished one minute after it).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Partially addresses #275 (Rework CLM test suite: miscellaneous things
to do to shorten turnaround time and increase coverage)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing: Many changes, as documented above.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO (but some BFAILs)
Other details
-------------
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1688
- https://github.com/ESCOMP/CTSM/pull/1687
===============================================================
===============================================================
Tag name: ctsm5.1.dev086
Originator(s): negins (Negin Sobhani,UCAR/TSS,303-497-1224)
Date: Tue Mar 22 01:22:19 MDT 2022
One-line Summary: Updates necessary for NEON v2 files and server updates
Purpose and description of changes
----------------------------------
This tag resolves the issues that are caused by NEON moving their storage from Amazon
S3 to GCS (Google Cloud Storage) and updated listing files, two issues need to be addressed.
To summarize, this tag addresses these issues:
1- run_neon.py is updated to handle the updated listing file and
introduction of the new v2 data.
2- CDEPS, CIME, and run_neon.py codes should be updated to point to the GCS bucket instead of the
neon S3 bucket. Besides updating run_neon.py this tag points to the updated
externals with this updates.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes CTSM/#1668 -- Updating run_neon.py for v2 files
Fixes CTSM/#1675 -- updating externals and pointing to GCS instead of S3 for neon
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
./run_neon.py now has a new option:
--neon-version {v1, v2} :
Neon data version to use for this simulation. [default: use the latest data
available]
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
The following tests with PGI on Izumi used to fail in the build phase. It
seems like they are not failing in the "build phase" anymore but they are
still failing in the "run phase".
SMS_D.f10_f10_mg37.I2000Clm51BgcCrop.izumi_pgi.clm-crop
SMS.f10_f10_mg37.I2000Clm50BgcCrop.izumi_pgi.clm-crop
The ExpectedTestFails.xml is updated to reflect this change.
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne -
tools-tests (test/tools) (if tools have been changed):
cheyenne -
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) -
[If python code has changed and you are NOT running aux_clm (e.g., because the only changes are in python
code) then also run the clm_pymods test suite; this is a small subset of aux_clm that runs the system
tests impacted by python changes. The best way to do this, if you expect no changes from the last tag in
either model output or namelists, is: create sym links pointing to the last tag's baseline directory,
named with the upcoming tag; then run the clm_pymods test suite comparing against these baselines but NOT
doing their own baseline generation. If you are already running the full aux_clm then you do NOT need to
separately run the clm_pymods test suite, and you can remove the following line.]
clm_pymods test suite on cheyenne -
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ----
izumi -------
any other testing (give details below):
./run_neon.py tested on Cheyenne for all sites and check if the latest
option chose v2 when data was available. At the time of this test v2 was
only available for CPER sites and for the rest of neon sites run_neon.py
used v1 data.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- ccs_config : 0.0.5 --> 0.0.15
- cime : 6.0.13 --> 6.0.15
- cdeps : 0.12.35 --> 0.12.41
- pio : pio2_5_5 --> pio2_5_6
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1669
===============================================================
===============================================================
Tag name: ctsm5.1.dev085
Originator(s): sacks (Bill Sacks)
Date: Wed Mar 16 11:08:54 MDT 2022
One-line Summary: Expand crop reproductive pools; remove some unused options
Purpose and description of changes
----------------------------------
The main change in this tag is adding placeholder pools (and
corresponding fluxes) that will be needed to couple the AgSys crop
model: Rather than a single grain pool, AgSys has two different grain
pools (meal & oil) as well as two different reproductive structure pools
(pod & floret). This tag adds a dynamically-allocated second dimension to
the relevant variables to accommodate these new pools. The new
CropReprPoolsMod controls the allocation and naming of these pools, and
facilitates looping over the new dimension. Currently parameters in
there are hard-coded for the current crop model, but this will become
more dynamic with the coupling of AgSys.
This tag also removes experimental / untested options in
NutrientCompetitionFlexibleCNMod. Although this is mostly unrelated to
the main change, doing this simplified the changes needed for the main
change.
This tag also resolves ESCOMP/CTSM#1666 (Isotopic values of grain_mr not
set correctly when use_grainproduct is false).
Finally, this tag removes or modifies some of the most expensive tests
in the aux_clm test suite to reduce the cost of running the test suite.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1666 (Isotopic values of grain_mr not set
correctly when use_grainproduct is false)
Known bugs introduced in this tag (include issue #):
- ESCOMP/CTSM#1667 (Add cft and pool-specific harvested fraction
parameters to the param file)
Known bugs found since the previous tag (include issue #):
- ESCOMP/CTSM#1651 (Discrepancy in handling of crop seed deficit in
summary variables for C vs. N)
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- Removes experimental / untested options that are referenced in
NutrientCompetitionFlexibleCNMod
- downreg_opt: assume false
- CN_partition_opt: assume 1
- CN_residual_opt: assume 1
- nscalar_opt: assume true
- substrate_term_opt: assume true
- temp_scalar_opt: assume true
- plant_ndemand_opt: assume 3
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Adds new test types (LGRAIN2 and LREPRSTRUCT) to test the new code
until AgSys is integrated and tested.
- Changes some expensive tests to be less expensive, by using coarser
resolution, smaller processor counts, or moving them from aux_clm to
ctsm_sci
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
Ran without comparisons, because I expected all comparisons to fail.
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
any other testing (give details below):
Ran the original versions of modified tests with baseline
comparisons; these all pass (ran from my branch up to date with
ctsm5.1.dev082; I didn't rerun with the latest version)
PASS ERI_C2_Ld9.f19_g17.I2000Clm51BgcCrop.cheyenne_intel.clm-default BASELINE ctsm5.1.dev082:
PASS ERP_D_Ld3.f09_g17.I2000Clm50Sp.cheyenne_intel.clm-prescribed BASELINE ctsm5.1.dev082:
PASS ERP_D_Ld3_Vmct.f09_g17.I2000Clm50Sp.cheyenne_intel.clm-prescribed BASELINE ctsm5.1.dev082:
PASS SMS_C2_D_Lh12.f09_g17.I2000Clm50Sp.cheyenne_intel.clm-pauseResume BASELINE ctsm5.1.dev082:
PASS SSP_D_Ld10.f19_g17.I1850Clm51Bgc.cheyenne_intel.clm-rtmColdSSP BASELINE ctsm5.1.dev082:
PASS SSP_D_Ld4.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-ciso_rtmColdSSP BASELINE ctsm5.1.dev082:
PASS SSP_Ld10.f19_g17.I1850Clm50Bgc.cheyenne_intel.clm-rtmColdSSP BASELINE ctsm5.1.dev082:
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but this doesn't appear in
any standard tests
Summarize any changes to answers, i.e.,
- what code configurations: clm45 cases (or any cases with
use_grainproduct false) with crop and C isotopes
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
just changes a few diagnostic fields
Just changes answers for C13_AR, C13_NBP, C14_AR, C14_NBP in clm45
cases (or any cases with use_grainproduct false) with crop and C
isotopes, due to fixing ESCOMP/CTSM#1666. (We don't have any such
tests in the test suite.)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1670
===============================================================
===============================================================
Tag name: ctsm5.1.dev084
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Thu 15 Mar 2022 10:05:00 MDT
One-line Summary: FATES parameter file updated to align with clm pft optical parameters
Purpose and description of changes
----------------------------------
This tag incorporates updates to the FATES parameter file which now align the FATES
PFT optical parameters with the CLM PFT optical parameters. These parameters are
sourced from the recommended parameters in Majasalmi & Bright 2019.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Given that the FATES PFT optical parameters have been updated, FATES users updating to this
tag will differences results in FATES cases.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
ILAMB benchmarking was conduct to help evaluate the differences resulting from the parameter
file updates. See FATES #831 for details.
Answer changes
--------------
Changes answers relative to baseline: YES
[ If a tag changes answers relative to baseline comparison the
following should be filled in (otherwise remove this section).
And always remove these three lines and parts that don't apply. ]
Summarize any changes to answers, i.e.,
- what code configurations: FATES
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
See FATES #831 for discussion
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.54.0_api.22.0.0 -> fates-sci.1.55.4_api.22.1.0
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1681
https://github.com/NGEET/fates/pull/831
===============================================================
===============================================================
Tag name: ctsm5.1.dev083
Originator(s): fang-bowen (Bowen Fang) / oleson (Keith Oleson,UCAR/TSS,303-497-1332)
/ Face2sea (Lei Zhao) / keerzhang1 (Keer Zhang) / sacks (Bill Sacks)
Date: Tue Mar 8 14:12:00 MST 2022
One-line Summary: Implement PCT_URBAN_MAX to minimize dynamic urban memory
Purpose and description of changes
----------------------------------
Read in 'PCT_URBAN_MAX' from the landuse timeseries file (maximum urban percentage throughout
timeseries) and initialize urban landunits in memory only where PCT_URBAN_MAX is greater than zero.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1572 (Improve mechanism for determining where to
allocate memory for urban when running with dynamic urban)
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Changes to tests or testing:
ERS_Lm25.1x1_smallvilleIA.IHistClm50BgcCropQianRs.cheyenne_gnu.clm-smallville_dynurban_monthly has
been updated to accomodate PCT_URBAN_MAX
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1661
===============================================================
===============================================================
Tag name: ctsm5.1.dev082
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Mon Feb 28 10:12:16 MST 2022
One-line Summary: Replace dom_nat_pft with dom_plant to enable crop in fsurdat_modifier tool
Purpose and description of changes
----------------------------------
Allow user to replace vegetation in fsurdat files with any pft/cft using the
fsurdat_modifier tool option dom_plant. This option replaces now obsolete
option dom_nat_pft which handled pfts only and not cfts.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Instead of dom_nat_pft = UNSET, modify_template.cfg now includes the line
dom_plant = UNSET to allow users to set the pft/cft of their choice to replace
the existing vegetation.
Changes to the datasets (e.g., parameter, surface or initial files):
New system test that checks the new code compares a generated file to a
baseline file. I added the baseline file to this PR:
.../python/ctsm/test/testinputs/surfdata_5x5_amazon_16pfts_Irrig_CMIP6_simyr2000_c171214_modified_with_crop.nc
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Added a system test to test_sys_fsurdat_modifier.py to run with the new option
dom_plant set to 15 (i.e. a crop).
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) - cheyenne PASS
clm_pymods test suite on cheyenne - PASS
any other testing (give details below):
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1615
===============================================================
===============================================================
Tag name: ctsm5.1.dev081
Originator(s): swensosc (Sean Swenson)
Date: Thu Feb 24 21:33:35 MST 2022
One-line Summary: Do not subtract irrigation from QRUNOFF diagnostic
Purpose and description of changes
----------------------------------
Remove code that subtracts surface irrigation flux from qflx_runoff_col.
This is a diagnostic change only.
This subtraction no longer makes sense now that irrigation is passed as
a separate flux to the ROF model.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES, but just in a few diagnostic fields
Summarize any changes to answers, i.e.,
- what code configurations: Crop cases with irrigation
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff, but only impacts a few diagnostic fields:
QRUNOFF, QRUNOFF_R, QRUNOFF_TO_COUPLER
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1641
===============================================================
===============================================================
Tag name: ctsm5.1.dev080
Originator(s): sacks (Bill Sacks)
Date: Thu Feb 24 15:26:02 MST 2022
One-line Summary: Use avg days per year when converting param units
Purpose and description of changes
----------------------------------
When converting parameter units from per-year to per-second, use average
days per year instead of current number of days per year. This is
relevant when running with a Gregorian calendar.
See https://github.com/ESCOMP/CTSM/issues/1612 for details.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1612 (Some uses of get_days_per_year should use
the average number of days in a year, not the number of days in the
current year)
Known bugs introduced in this tag (include issue #):
- ESCOMP/CTSM#1624 (Change get_average_days_per_year to use
ESMF_CalendarGet)
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Once ESMF supports it, we should change get_average_days_per_year to
use ESMF_CalendarGet (see ESCOMP/CTSM#1624)
Testing summary:
----------------
cheyenne ---- OK
izumi ------- OK
Test
ERS_Ly3_P72x2_Vmct.f10_f10_mg37.IHistClm50BgcCropG.cheyenne_intel.clm-cropMonthOutput
initially failed COMPARE_base_rest and BASELINE comparisons; rerunning
solved the issue.
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: Gregorian cases with BGC
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
larger than roundoff / same climate
Changes a few BGC-related parameters by a small amount (< 1/365 in
a relative sense) for Gregorian cases
Changes answers for these tests:
- SMS_Ly5_Mmpi-serial.1x1_smallvilleIA.IHistClm50BgcCropQianRs.izumi_gnu.clm-gregorian_cropMonthOutput
- DAE_C2_D_Lh12.f10_f10_mg37.I2000Clm50BgcCrop.cheyenne_intel.clm-DA_multidrv
- DAE_N2_D_Lh12_Vmct.f10_f10_mg37.I2000Clm50BgcCrop.cheyenne_intel.clm-DA_multidrv
In principle, might change answers by roundoff for NOLEAP BGC
tests on some machines / compilers, but that wasn't seen in any
aux_clm testing.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1625
===============================================================
===============================================================
Tag name: ctsm5.1.dev079
Originator(s): sacks (Bill Sacks)
Date: Thu Feb 24 14:40:58 MST 2022
One-line Summary: Changes to CropPhenology timing
Purpose and description of changes
----------------------------------
Changes to CropPhenology timing to support
https://github.com/escomp/ctsm/pull/1616 and other work being done by
Sam Rabin:
(1) Change CropPhenology to look at the time as of the START of the time
step. Previously, CropPhenology looked at time as of the END of the
time step. This was somewhat problematic, particularly because it
meant that the last time step of the year was considered Jan 1, and
so crops with a planting window beginning Jan 1 could be planted at
the end of the previous year rather than the start of the new year.
This was becoming particularly problematic in the context of Sam
Rabin's upcoming prescribed sowing date work (see #1623 and #1616
for some discussion).
(2) Call CropPhenology regardless of doalb (however, still do not call
CropPhenology on time step 0). (See some discussion in #1626 and
#1623.)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1623 (Change CropPhenology to look at the day of
year as of the start of the time step, not the end of the time step)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Also ran
ERS_Ld3_D.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-rad_hrly_light_res_half
(a debug version of the one test in the test suite that uses hourly
doalb)
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: Crop cases
- what platforms/compilers: All
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Not investigated carefully, but expected to be larger than
roundoff/same climate
Based on an analysis of the code, the differences should be small,
but I haven't investigated this with simulations. In principle,
there could be larger answer changes for crops that invoke
vernalization in cases where doalb isn't true every time step, but
currently I think we don't simulate any crops that invoke
vernalization. It's also possible that there are other larger
changes in cases where doalb isn't true every time step (i.e., F
and B compsets), though from reading through the code, I don't see
any potentials for big changes.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1628
===============================================================
===============================================================
Tag name: ctsm5.1.dev078
Originator(s): sacks (Bill Sacks)
Date: Thu Feb 24 14:15:46 MST 2022
One-line Summary: Rework single-point testing
Purpose and description of changes
----------------------------------
Two changes to make the single-point tests in our test suite run more
smoothly. The main motivation for this is that single-point tests have
been failing frequently on cheyenne, presumably due to issues with nodes
in the share queue.
(1) Rework the test list to remove redundant single-point tests and move
many of our single-point tests from cheyenne to izumi. (With (2) in
place, this isn't really necessary, but given that we're going to be
using full nodes for single-point tests, it seems better to do this
on izumi rather than wasting all of these processors on the
generally more heavily-loaded cheyenne. Also, this helps accomplish
the goal of providing better balance between our different
machine-compiler permutations, helping to reduce overall testing
time.)
(2) Change run_sys_tests so that, for the remaining single-point tests
on cheyenne, we use the regular queue rather than the share queue.
This means that single-point tests use a full node, which is
wasteful but makes the tests more reliable. (You can override this
behavior with the --queue option to run_sys_tests: To revert to the
earlier behavior, where the queue is determined automatically for
each test, add '--queue unspecified' to your run_sys_tests
invocation. (As before --queue can also be used to specify some
other queue to use for all tests.))
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Partially addresses ESCOMP/CTSM#275
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Overhauls single-point tests. See
https://github.com/ESCOMP/CTSM/pull/1660#issuecomment-1049489430 for details.
Testing summary:
----------------
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1660
===============================================================
===============================================================
Tag name: ctsm5.1.dev077
Originator(s): rgknox (Ryan Knox,,,)
Date: Tue Feb 22 12:51:04 EST 2022
One-line Summary: Updates to FATES API, including removal of patch dimensions from fates history and using soil instead of ground layers for fates history.
Purpose and description of changes
----------------------------------
This set of changes cleaned up some aspects of the FATES history diagnostics API. Patches are not used in output diagnostics, so they were removed from the history coupling. Also, FATES only "sees" the soil, not the rock layers, so it is more appropriate to only align FATES below ground history output on the soil layers, and not ground layers. Also, the corresponding FATES side changes have some history output names changed. This is an API change as well, and is compatable with FATES: https://github.com/NGEET/fates/releases/tag/sci.1.54.0_api.22.0.0
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
[X] clm5_1-FATES-hydro
Notes of particular relevance for users
---------------------------------------
FATES users should now benefit from more interpretable history output from soil dimensioned variables, where they won't have to filter out ground layers which previously contained no-data flags. Also, note the following FATES history variable name changes:
FATES_ROOTH2O_ABS_SZPF -> FATES_ABSROOT_H2O_SZPF
FATES_ROOTH2O_TRANS_SZPF -> FATES_TRANSROOT_H2O_SZPF
FATES_STEMH2O_SZPF -> FATES_STEM_H2O_SZPF
FATES_LEAFH2O_SZPF -> FATES_LEAF_H2O_SZPF
FATES_ROOTH2O_POT_SZPF -> FATES_ABSROOT_H2OPOT_SZPF
FATES_ROOTH2O_TRANSPOT_SZPF -> FATES_TRANSROOT_H2OPOT_SZPF
FATES_STEMH2O_POT_SZPF -> FATES_STEM_H2OPOT_SZPF
FATES_LEAFH2O_POT_SZPF -> FATES_LEAF_H2OPOT_SZPF
FATES_ROOT_ABSFRAC_SZPF -> FATES_ABSROOT_CONDFRAC_SZPF
FATES_ROOT_TRANSFRAC_SZPF -> FATES_TRANSROOT_CONDFRAC_SZPF
FATES_STEMH2O_FRAC_SZPF -> FATES_STEM_CONDFRAC_SZPF
FATES_LEAFH2O_FRAC_SZPF -> FATES_LEAF_CONDFRAC_SZPF
Caveats for users (e.g., need to interpolate initial conditions): FATES users may have scripts that assume below ground diagnostics are on the ground dimension, and will have to update scripts to use the soil dimension.
Changes made to namelist defaults (e.g., changed parameter values): No changes to defaults, but some FATES plant hydraulics history variable names were changed in the corresponding FATES tag.
Changes to tests or testing: An update was made to the fates-hydro tests to use updated history variable names.
Testing summary:
----------------
d) regular (regular tests on normal machines if CTSM source is modified)
cheyenne ---- /glade/scratch/rgknox/tests_0220-124230ch (OK) expected FATES baseline DIFFS
izumi ------- /scratch/cluster/rgknox/tests_0220-125238iz (OK)
fates tests: fates test suite was run, (OK)
Answer changes
--------------
Changes answers relative to baseline: All results are B4B with base (dev076), except for two conditions: 1) FATES output that uses the soil dimension has NLCOMP and DIFFS due to the dimension change, and 2) FATES hydro simulations have different results due to bug fixes
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1592
https://github.com/NGEET/fates/pull/766
===============================================================
===============================================================
Tag name: ctsm5.1.dev076
Originator(s): negins (Negin Sobhani,UCAR/TSS,303-497-1224)
Date: Fri Feb 18 13:25:19 MST 2022
One-line Summary: updating subset_data.py script and move to the Python package.
Purpose and description of changes
----------------------------------
The purpose of this PR was to update and move the subset_data.py and other
relevant python scripts to the CTSM python package so the other python codes
(such as fsurdat_modifier) can re-use/import the capabilities of this script.
This updated code now adds the capability to create user-mods for a generic
singlepoint case.
The subset_data.py (top script called subset_data)extracts surface dataset,
domain file, landuse, and DATM files at a single point or a region from the
available global dataset. Next it modifies the surface dataset based on the
user options (command-line arguments) for example dom-pft or zero-ing non-veg
types, etc.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
Fixes CTSM/#935 -- Make surface dataset and landuse consistent for singlept
Fixes CTSM/#1436 -- Running subset_data from any directory
Fixes CTSM/#1437 -- issue with modify_singlept_site_neon for finding latest file
Fixes CTSM/#1594 -- try/except for python download neon data
Fixes CTSM/#1606 -- NEON tools not handling crop weights correctly.
Part of development needed for #1490 -- generic single point simulation.
Partially Fixes CTSM/#1622 -- check if file exists and abort if not found + --overwrite
Fixes it for subset_data
Partially Fixes CTSM/#1441 -- Move critical toolchain script out of tools/contrib
Fixes it for subset_data
CIME Issues fixed (include issue #): N/A
Known bugs introduced in this tag (include issue #): N/A
Known bugs found since the previous tag (include issue #): N/A
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Added python/ctsm/test/test_unit_args_utils.py (11 unit tests)
Added python/ctsm/test/test_unit_singlept_data.py (10 unit tests)
Added python/ctsm/test/test_unit_singlept_data_surfdata.py (24 unit tests)
Modified tests in python/ctsm/test/test_unit_utils.py
Modified tests in python/ctsm/test/test_unit_modify_fsurdat.py
Added 10 new tests in tests/tools/input_tests_master thanks to @ekluzek
Added test/tools/tests_pretag_nompi_neon
Testing summary:
----------------
python testing (if python code has changed; see instructions in python/README.md; document testing done):
clm_pymods test suite on cheyenne - PASS
pylint -- PASS (10.00/10) (cheyenne + python/3.7.9)
Python unit tests -- PASS (cheyenne)
Python system tests -- PASS (cheyenne)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK (tests_pretag_nompi_neon + subset_data tests)
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1461
===============================================================
===============================================================
Tag name: ctsm5.1.dev075
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Feb 16 21:35:40 MST 2022
One-line Summary: Small answer changes: urban ventilation, fire-emission, irrigate off when not crop, fix two SSP ndep files
Purpose and description of changes
----------------------------------
The effects of ventilation (exchange of building air with canopy air) are accounted for in the
energy budget inside the building. The effects on urban canopy air are not. This remedies that.
This fixes an issue with how coefficients are applied to individual fire components. Allow units
to be in molecules/m2/sec as well as kg/m2/sec.
SSP3-7.0 Nitrogen-deposition file update. Fix SSP2-4.5 Nitrogen-deposition file. Turn irrigation
off by default except for future scenarios.
Add new external ccs_config_cesm which has the CESM cime configuration files.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[x] clm5_0
[x] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1526 -- Switch FATES methane test for methane off
Fixes #509 --- irrigate in 1850 is off for runs with use_crop but on for those without
Fixes #1578 -- Need to replace SSP370 ndep file with new one
Fixes #1631 -- ndep file for SSP2-4.5 is incorrect
Known bugs introduced in this tag (include issue #):
#1653 -- Use secsphr in UrbBuildTempOleson2015Mod.F90
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
using older restart files will start ventilation flux at zero.
default fsurdat selection can also match irrigate true surface datasets
Changes made to namelist defaults (e.g., changed parameter values):
irrigate is now default off, except for future scenarios
Changes to the datasets (e.g., parameter, surface or initial files):
New Nitrogen-deposition file for SSP3-7.0
Correct Nitrogen-deposition file for SSP2-4.5
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
FATES methane on test switched to methane off, since methane on is the default
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (345 tests are different than baseline)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here: previous
Answer changes
--------------
Changes answers relative to baseline: Yes
Summarize any changes to answers, i.e.,
- what code configurations: clm5_0/clm5_1 urban ventilation flux,
irrigate off now, SSP3-7.0/SSP2-4.5 new ndep file, fire-emissions different
- what platforms/compilers: All
- nature of change: Similar climate
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename: oleson/ctsm51_ctsm51d61_1deg_GSWP3V1_CON_VENT_2000
URL for LMWG diagnostics output used to validate new climate:
https://webext.cgd.ucar.edu/I2000/ctsm51_ctsm51d61_1deg_GSWP3V1_CON_VENT_2000/lnd/ctsm51_ctsm51d61_1deg_GSWP3V1_CON_VENT_2000.1991_2010-ctsm51_ctsm51d61_1deg_GSWP3V1_CON_2000.1991_2010/set2/set2.html
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
cism to cismwrap_2_1_95
cime to cime6.0.13
cmeps to cmeps0.13.47
cdeps to cdeps0.12.35
cpl7 to cpl7.0.12
pio to pio2_5_5
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1535 -- Ventilation flux to urban canyon
#1532 -- Fire emissions bug fix
===============================================================
===============================================================
Tag name: ctsm5.1.dev074
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Wed Feb 2 00:44:27 MST 2022
One-line Summary: Introduce vert. resolved MIMICS as new method to solve below ground decomp.
Purpose and description of changes
----------------------------------
Introducing new option to solve below ground decomposition: MIMICSWieder2015.
The old option (CENTURYKoven2013) remains available. User will select one or
the other via the namelist variable soil_decomp_method.
Elin's MIMICS+ github issue relates: #1260.
MIMICS spinup issues relate and are listed in caveats for users.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
#1473 : decomp_depth_efolding appears (with the same value) in the namelist
and the params files; the model ends up using the one from the namelist
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
MIMICS spinup method is in development
Issues related to spinup
#1451 -- MIMICS spinup
#1455 -- Additional history output for Newton-Krylov spinup
#1457 -- Adding history variables for Newton-Krylov spinup
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New option MIMICSWieder2015 for use with namelist variable soil_decomp_method
decomp_depth_efolding removed as values on param files was already being used
Changes to the datasets (e.g., parameter, surface or initial files):
CLM parameter files now include new MIMICS-related parameters prefixed with
mimics_. Existing CENTURYKoven-specific parameters were renamed to include the
prefix bgc_. Parameters used by both CENTURYKoven2013 and MIMICSWieder2015 have
neither prefix.
Substantial timing or memory changes:
Timing comparison between CENTURYKoven (BGC for short) and MIMICSWieder:
In a 1x1_brazil test writing annual output and restarts every 10 yrs,
BGC took ~2.8 hrs/100 yrs, MIMICS took ~3.6 hrs/100 yrs.
More timing comparisons shown here:
https://github.com/ESCOMP/CTSM/pull/1318#issuecomment-1008211485
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
New test-suite tests:
ERP_D_P36x2_Ld3.f10_f10_mg37.I1850Clm51BgcCrop.cheyenne_gnu.clm-mimics
SMS_Ld5_Mmpi-serial.1x1_brazil.IHistClm50BgcQianRs.izumi_gnu.clm-mimics
SMS_Ly5_Mmpi-serial.1x1_brazil.IHistClm50BgcQianRs.cheyenne_intel.clm-newton_krylov_spinup
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (831 tests are different from baseline because of new param files)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne ---- OK (black test fails)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK (see one answer change below)
Answer changes
--------------
Changes answers relative to baseline: NO (almost)
One test in the izumi test-suite fails
SMS_Vmct.f10_f10_mg37.I2000Clm50BgcCrop.izumi_pgi.clm-crop
and this is due to diffs from baseline (dev073).
cprnc.out shows diffs only in one variable:
RMS TOTECOSYSC 1.9853E-12 NORMALIZED 6.5087E-17
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1318 -- MIMICS into vertically resolved CTSM
===============================================================
===============================================================
Tag name: ctsm5.1.dev073
Originator(s): sacks (Bill Sacks)
Date: Tue Jan 25 16:33:06 MST 2022
One-line Summary: Some fixes for Gregorian calendar
Purpose and description of changes
----------------------------------
A few bug fixes for running with a Gregorian calendar. These primarily
fix the AnnualFluxDribbler, preventing balance errors in transient runs
(or in runs starting from restart files that came from transient runs).
But these general fixes end up fixing a few other minor issues with
Gregorian calendar runs as well.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1590 (Gridcell water balance errors for some
PLUMBER2 sites with branch_tags/PPE.n11_ctsm5.1.dev030)
Known bugs found since the previous tag (include issue #):
Other bugs with Gregorian calendar runs found in the course of making these fixes are:
- https://github.com/ESCOMP/CTSM/issues/1595 (Bugs in crop phenology
when running with a Gregorian calendar)
- https://github.com/ESCOMP/CTSM/issues/1612 (Some uses of
get_days_per_year should use the average number of days in a year, not
the number of days in the current year)
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Added a multi-year test with Gregorian calendar
(SMS_Ly5_Mmpi-serial.1x1_smallvilleIA.IHistClm50BgcCropQianRs.cheyenne_gnu.clm-gregorian_cropMonthOutput);
as expected, this test fails on master but passes on this branch
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: YES, but very limited
Summarize any changes to answers, i.e.,
- what code configurations: Some runs with a Gregorian calendar
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff, same climate -- only very small changes
The only test with answer changes is
SMS_C2_D_Lh12.f09_g17.I2000Clm50Sp.cheyenne_intel.clm-pauseResume;
that test just has answer changes in the time-0 history file because
of the fix to the AnnualFluxDribbler's flux in the last time step of
the year (which is the time step used for time 0). There were answer
changes in only 6 fields, which are the fields impacted by changes in
the land use change correction fluxes dribbled to the atmosphere and
river:
- EFLX_DYNBAL
- FSH_TO_COUPLER
- QFLX_ICE_DYNBAL
- QFLX_LIQ_DYNBAL
- QRUNOFF_ICE_TO_COUPLER
- QRUNOFF_TO_COUPLER
I can get bit-for-bit with master if I make the following minimal
diff to master:
diff --git a/src/utils/AnnualFluxDribbler.F90 b/src/utils/AnnualFluxDribbler.F90
index c66e4fdc8..1ef2fb77f 100644
--- a/src/utils/AnnualFluxDribbler.F90
+++ b/src/utils/AnnualFluxDribbler.F90
@@ -306,6 +306,7 @@ contains
integer :: i
real(r8) :: secs_per_year
real(r8) :: dtime
+ integer :: dtime_int
real(r8) :: flux_from_dribbling
real(r8) :: flux_from_this_timestep
@@ -316,8 +317,9 @@ contains
end_index = get_end(bounds, this%bounds_subgrid_level)
SHR_ASSERT_ALL_FL((ubound(flux) == (/end_index/)), sourcefile, __LINE__)
- secs_per_year = get_days_per_year() * secspday
dtime = get_step_size_real()
+ dtime_int = int(dtime)
+ secs_per_year = get_days_per_year(offset=-dtime_int) * secspday
do i = beg_index, end_index
flux_from_dribbling = this%amount_to_dribble(i) / secs_per_year
Other answer changes that might be seen in runs with Gregorian
calendar are:
- Possible answer changes for crop runs (these changes impact some
crop phenology code)
- Possible answer changes for C iso runs (due to use of
get_curr_yearfrac in C14BombSpike and C13TimeSeries), though that
may not be impacted
- Possible answer changes for CNDV runs (due to use of
get_curr_yearfrac)
Other details
-------------
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1593
===============================================================
===============================================================
Tag name: ctsm5.1.dev072
Originator(s): negins (Negin Sobhani,UCAR/TSS,303-497-1224)
Date: Mon Jan 17 10:50:25 MST 2022
One-line Summary: mksurfdat toolchain part 1: gen_mksurf_namelist
Purpose and description of changes
----------------------------------
This tag introduces ./gen_mksurf_namelist python script, which generates
a user-modifiable control file (namelist) for use with #1430 (mkmap_data.py)
within the context of #644 (wrapper tool for generating fsurdat files).
The new namelist (control file) format does not have mapping
files listed since the mapping file information are stored as part of the
metadata for input data.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
This tag introduces the ./gen_mksurf_namelist script for generating a
user-modifiable control file (namelist) for use with the in-development
pythonized mkmapdata (#1430).
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Currently resolution options and corresponding destination mesh files are
hardwired in this code. This information should be obtained from existing
.xml file(s).
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) cheyenne make all - PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1419
===============================================================
===============================================================
Tag name: ctsm5.1.dev071
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Sun Jan 16 20:26:47 MST 2022
One-line Summary: Small changes to enable new fates dimension and update fates tag
Purpose and description of changes
----------------------------------
This tag uncomments the fates_levleaf dimension which was added in PR #1540
and rolled into PR #1542, but commented out to avoid junk DIFFs during integration
of PR #1542. This variable is necessary to accomodate FATES PR #752, which
allows for an exponential spacing to bin widths in the VAI (LAI+SAI) calculations.
This latest fates tag also includes a fix to the fates satellite phenology mode
exact restart issue.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1485 Forthcoming FATES satellite phenology ERS test fails
Fixes #1561 Uncomment fates_levleaf fields
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Changes to tests or testing:
The ERS FatesColdDefReducedComplexSatPhen testmod has been removed from expected test failure
list as it now passes due to fates tag sci.1.52.1_api.20.0.0.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi -------OK
fates tests: (baseline: sci.1.52.1_api.20.0.0-ctsm5.1.dev070)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: Expected DIFFs for a subset of fates testmods
Summarize any changes to answers, i.e.,
- CBALANCE_ERROR_FATES and FATES_ERRH2O_SCPF have round-off level errors that
eventually propagate to downstream calculations for some some fates test mods
- Differences are due to changing of the bin widths
- Fates PR #752 author reviewed the differences with a separate comparison
of the PR branch against fates master branch and determined that the science
resulting is as expected.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.52.0_api.20.0.0 -> fates-sci.1.53.0_api.21.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
FATES #752 -- Variable VAI bin widths
#1562 -- Uncomment fates_hdim_levleaf dimension
===============================================================
===============================================================
Tag name: ctsm5.1.dev070
Originator(s): sacks (Bill Sacks), mvertens (Mariana Vertenstein), slevis (Samuel Levis)
Date: Mon Jan 10 16:52:50 MST 2022
One-line Summary: Update externals, remove need for LND_DOMAIN_FILE and LND_DOMAIN_PATH, etc.
Purpose and description of changes
----------------------------------
(1) Update cime and cdeps externals
(2) Remove the need for LND_DOMAIN_FILE and LND_DOMAIN_PATH XML
variables in NUOPC / LILAC cases
(3) Update doc builder to fix issue with git lfs pull command
(4) Fix mksurfdata unit tests
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1575 (Build problem for mksurfdata tools testers)
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Running unit tests currently requires setting CIME_NO_CMAKE_MACRO=ON in your environment
- LILACSMOKE test now has a hard-coded resolution and domain file
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- pass
izumi ------- pass
Note:
SMS_Ld5.f10_f10_mg37.ISSP370Clm50BgcCrop.cheyenne_gnu.clm-ciso_dec2050Start
failed with baseline diffs when first run, but passed upon rerun:
system glitch?
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1581
- https://github.com/ESCOMP/CTSM/pull/1591
===============================================================
===============================================================
Tag name: ctsm5.1.dev069
Originator(s): fang-bowen (Bowen Fang) / oleson (Keith Oleson,UCAR/TSS,303-497-1332)
/ Face2sea (Lei Zhao) / keerzhang1 (Keer Zhang) / sacks (Bill Sacks)
Date: Wed Dec 15 13:01:19 MST 2021
One-line Summary: Implement dynamic (transient) urban capability
Purpose and description of changes
----------------------------------
This implements the capability to run transient simulations with changes
in urban density types. However, see Caveats for users section below.
If transient urban is activated (do_transient_urban=.true.) and an
appropriate landuse dataset is provided, the model will read in
yearly PCT_URBAN for three density types from the landuse dataset and
adjust other landunits accordingly.
Water and energy are conserved for these transitions. Urban landunits
do not account for carbon and nitrogen, however, see the dynamic urban
design document (doc/design/dynamic_urban.rst) for a discussion of this.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #1445 (partially, work on mksurfdata and reducing
computational cost is in progress)
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Note that this capability is off by default because landuse datasets
with transient urban on them are still being developed.
Note also that if this capability is activated (e.g., for testing) then
run_zero_weight_urban must be set to .true.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Added do_transient_urban namelist variable
Changes to the datasets (e.g., parameter, surface or initial files):
None.
New datasets that include transient urban data will be provided in a future tag.
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Changes to tests or testing:
Added ERS_Lm25.1x1_smallvilleIA.IHistClm50BgcCropQianRs.cheyenne_gnu.clm-smallville_dynurban_monthly to aux_clm
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1546
===============================================================
===============================================================
Tag name: ctsm5.1.dev068
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310), sacks (Bill Sacks)
Date: Mon Dec 13 15:42:07 MST 2021
One-line Summary: Adding fsurdat_modifier tool
Purpose and description of changes
----------------------------------
I copied the next four paragraphs from /tools/modify_fsurdat/fsurdat_modifier:
fsurdat_modifier is a tool that modifies fsurdat files. It reads a surface
dataset (fsurdat file) and outputs a modified copy of the same file.
Current applications are limited to the simplest CTSM(SP) mode, so bgc, fire,
urban, vic, lake, transient, and crop-related variables in the fsurdat file
remain unchanged.
It differs from modify_singlept_site_neon.py in that the latter specifically
modifies soil properties of single-point surface datasets. Some functions
could/should become shared for use by fsurdat_modifier.
It also differs from the subset_data tool in that the latter subsets fsurdat
files to regional or single-point domains. Though subset_data includes some
"modify" functionality when subsetting to single-point, we intend for similar
functionality to be more extensive and more object oriented in
fsurdat_modifier. Again, some functions could/should become shared among
these tools.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Changes to tests or testing:
Added python/ctsm/test/test_sys_fsurdat_modifier.py
Added python/ctsm/test/test_unit_fsurdat_modifier.py
Added new unit tests to python/ctsm/test/test_unit_utils.py
Added FSURDATMODIFYCTSM test to cime_config/config_tests.xml
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne ---- PASS
Bill's Mac -- PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1448
===============================================================
===============================================================
Tag name: ctsm5.1.dev067
Originator(s): jedwards4b/negin513/erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Mon Dec 13 00:50:01 MST 2021
One-line Summary: NEON UI update, externals updates, small miscellanouse fixes
Purpose and description of changes
----------------------------------
Redo options list to remove positional arguments that were difficult to input correctly.
Transient runs now use run_type startup and get finidat from s3 server unless --run-from-postad option is used (or finidat is not
available). Use mpi instead of mpi-serial, this mod was recommended for container use. Add a new script neon_finidat_upload which
allows authorized users to upload finidat files to the s3 server.
This includes the following changes to the script for updating the surface dataset at neon sites using available neon data (i.e.
modify_singlept_site_neon.py) to address ctsm/issues #1353, #1429, and neon/issue #44:
Update Organic calculation to use the following equation based on discussions in
https://github.com/ESCOMP/CTSM/pull/1375/files#r669590971 :
ORGANIC = estimatedOC * bulkDensity / 0.58
Because estimatedOC is rounded to the nearest integer in neon data, it is sometimes bigger than carbonTot. Therefore, in cases where
estimatedOC > carbonTot, we use carbonTot instead of estimatedOC in the above equation.
Previously, we had missing data on neon files for some neon soil layers (see Modified NEON surface datasets have errors #1429
(comment)). Therefore, it caused some missing values in the updated dataset. Here, we interpolate to fill in the missing data using
different interpolation techniques. Finally, we chose to use linear interpolation to fill in missing data.
This includes the scripts for modification of the surface dataset for neon sites to address #1429.
Specifically, the following has been addressed in this PR:
Update the calculation of ORGANIC to use the new field (CaCO3) from NEON data.
For this calculation if CaCO3 data is available, we first calculate inorganic carbon by:
inorganic carbon = (caco3 /100.0869)*12.0107
Next, we calculate organic carbon by subtracting inorganic carbon from the total carbon:
[organic carbon = carbon_tot - inorganic carbon]
If the CaCO3 is not available then the code uses carbonTot and estimatedOC by NEON.
Discussed here (Modified NEON surface datasets have errors #1429 (comment))
For the Ag sites (KONA and STER), it changes the PCT_NATVEG, PCT_CROP, and PCT_NAT_PFT to avoid the error that we previously had in
spin-up: surfrd_veg_all ERROR: sum of wt_nat_patch not 1.00000000000000 at nl= 1 sum is: 0.000000000000000E+000
Discussed here (Modified NEON surface datasets have errors #1429 (comment))
There was a typo previously in the NEON data for ABBY sites caused by mix of sample measurements. Please note that this was updated
by hand once data was downloaded from NEON site.
With recent versions of CIME, the LILAC build with a user-defined machine was broken for a couple of reasons. This fixes it.
Fix mksurfdata_map for 1x1_brazil. Get tools testing working again. Increase skip_steps by 1, which is needed for a change in CAM
where balance checks need to occur after the radiation update now rather than before. glob changed for bsd_glob in perl MkDepends
for mksurfdata_map.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1563 increase skip_steps for balance checks by one to permit new CAM physics re-ordering
Fixes #1550 In perl code replace glob with bsd_glob
Fixes #1574 Trouble with 1x1_brazil for mksurfdata_map because of negative longitude in SCRIP grid file
Fixes #1429 Modified NEON surface datasets have errors
Fixes #1353 Modify NEON surface data
Fixes #1492 Need to update LILAC build process to use cmake macros instead of config_compilers.xml
Known bugs found since the previous tag (include issue #):
#1575 -- Build problem for mksurfdata tools testers
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values): New 1x1_brazil SCRIP grid file and maps
Some NEON namelist settings changed. Last year is now 2020
Changes to the datasets (e.g., parameter, surface or initial files): New NEON surface datasets
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
pyproject.toml file added to configure for black python formatter in python directory
Changes to tests or testing:
Got tools testing working again.
Testing summary: regular tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (47 compare tests fail because of changes to NEON sites)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK (1x1_brazil mksurfdata changes, run_neon and modify_subset fail as expected)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - OK (new black checks do NOT pass as expected)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit (other than NEON tests because of updated namelists and surface dataset)
Summarize any changes to answers, i.e.,
- what code configurations: Only NEON sites
- what platforms/compilers: all
- nature of change: new surface datasets and settings
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
Update most externals to version in cesm2_3_alpha07c
cmeps to cmeps0.13.43 (version with channel depths)
cpl7 to cpl7.0.7
share to share1.0.10
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
PR #1467 -- Improve UI for NEON script
PR #1474 -- Script for modifying neon surface dataset -- updated (negin513)
PR #1539 -- Neon modify surfurface dataset (negin513)
PR #1571 -- Fix LILAC build with user-defined machine with latest CIME (billsacks)
===============================================================
===============================================================
Tag name: ctsm5.1.dev066
Originator(s): rgknox (Ryan Knox,,,)
Date: Sat Dec 4 01:58:42 MST 2021
One-line Summary: API change with FATES to enable running means inside fates, includes passing in of model timestep
Purpose and description of changes
----------------------------------
This set of changes synchronizes CTSM with API 20 of FATES. API 20 of FATES requires a modification to timing boundary conditions so that FATES can maintain its own internal running means. FATES also no-longer asks CTSM for the 24hour vegetation temperature, since this is a patch(pft) level variable, and FATES has more suitable averaging mechanisms. These changes are synchronized with FATES Pull Request: https://github.com/NGEET/fates/pull/724, which subsequently created tag: https://github.com/NGEET/fates/releases/tag/sci.1.52.0_api.20.0.0
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
[x] clm_fates
Notes of particular relevance for developers:
---------------------------------------------
Developers should be aware that FATES does require information on the model timestep, which was not necessarily available in initialize1. Efforts were made to circumvent needing the model timetep at this phase of initialization, so impact on non-fates code was minimal.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS (fates had expectedly different results compared to base)
izumi ------- PASS (fates had expectedly different results compared to base)
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- PASS (fates had expectedly different results compared to base)
izumi -------
Additional tests:
Multi-decadal simulations were also run to evaluate fates side sensitivity to slightly different averaging scheme. The differences were not so subtle, attributed mostly to fixing an initialization bug (the previous 24hour temperature had initialized at 0K) and a 1-hour phase change in the 24-hour start-stop cycle.
Answer changes
--------------
Changes answers relative to baseline: all FATES active simulations have different results.
===============================================================
===============================================================
Tag name: ctsm5.1.dev065
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Thu Dec 2 00:13:37 MST 2021
One-line Summary: Refactor static fire data input by moving variables into fire_base_type from cnveg_state_type
Purpose and description of changes
----------------------------------
This tag refactors the static fire data input methodology to enable a future anthropogenic fire suppression
methodology to FATES as described NGEET/fates#673. This future method requires that FATES have access to
GDP data that was previously defined in CNVegStateType.F90 as part of cnveg_state_type. As such, the GDP
variable has been moved into fire_base_type in FireDataBaseType.F90 to provide the data to the extended
fates_fire_base_type for eventual use in FATES. Similarly, the surface dataset read subroutine has been
moved along with the peat and ag-fire variables, which utilize the same read subroutine and where also
originally part of the cnveg_state_type.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1104 -- Move static fire data into Fire class
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
The ncd_io calls for the gdp, peat, and ag-fire data has been moved from the
cnveg_state_type InitCold procedure into a new subroutine called surfdataread
which is a new fire_base_type procedure.
The function GetGDP has been introduced to get the pointer to the GDP data. This has
been implemented in clmfates_interfaceMod.F90, but the assignment of this pointer
to a FATES-side bc_in variable has been commented out pending a future update to
define the necessary FATES GDP variable.
A new namelist option has been added to the fates_spitfire_mode series. This option
is intended as a simple placeholder for a future FATES fire supression mode. The
option is currently being included as a check in clmfates_interfaceMod.F90 to allow
for the exercise of the GetGDP function.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
cheyenne ---- N/A
izumi ------- N/A
any other testing (give details below):
A simple fates branch was created to test the potential handoff of the GDP data to FATES, which successfully
output the global gdp data. The branch is located here: https://github.com/glemieux/fates/tree/fire-gdp-simpletest
Note that this branch was not used in the standard regression tests above.
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1536 -- Refactor static fire data to enable future use of GDP data in SPITFIRE
===============================================================
===============================================================
Tag name: ctsm5.1.dev064
Originator(s): afoster (Adrianna Foster)
Date: Mon Nov 29 09:50:50 MST 2021
One-line Summary: Updates to facilitate FATES history variable overhaul
Purpose and description of changes
----------------------------------
This tag facilitates updates to FATES history variable names, units, other metadata,
and flushing behavior. Variables are now initially flushed to the CTSM ignore value,
then flushed to 0.0 on the FATES side.
Calls were added to flush_hvars and zero_site_hvars inside the
init_coldstart and restart subroutines in clmfates_interfaceMod.F90.
FATES history variables names were updated to the new names in the
user_nl_clm hist_fincl1 lists in the testmods directory.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes FATES issues #530 and #535
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
All FATES output history variable units and names have changed so any post-processing
scripts or history variable namelists (e.g. hist_fincl1) will be affected.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Updated the hist_fincl1 namelists in the user_nl_clm files in the FATES
testmods directory to reflect FATES history variable name changes.
Updated name of ERS_Ld30.f45_f45_mg37.I2000Clm50FatesCruRsGs.cheyenne_intel.clm-FatesColdDefReducedComplexSatPhen
in the ExpectedTestFails.xml list, and changed the phase to RUN, as it is now
failing in the run phase.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (baseline: sci.1.50.1_api.18.0.0-ctsm5.1.dev063)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: FATES
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate): diagnostic only
All FATES output history variables and/or units changed so we expect DIFF
or FIELDLIST differences for all comparisons to baselines.
I created a test at a single point to compare FATES variables
(over a 5-year simulation) from master (sci.1.50.1_api.18.0.0) and this
updated branch. This test confirms that the old variables can be matched
to a new variable (except for a select few where we removed some
variables due to duplication), and that when we did see changes in the
output values, these changes were the expected factor differences based
on the intended units change.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.50.1_api.18.0.0 -> fates-sci.1.51.0_api.19.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1542 -- Updates to facilitate FATES history variable overhaul
===============================================================
===============================================================
Tag name: ctsm5.1.dev063
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Tue Nov 23 12:51:48 MST 2021
One-line Summary: Provide access to the fraction of canopy covered by snow variable to fates
Purpose and description of changes
----------------------------------
This tag provides the FATES model access to the fcansno variable to facilitate a correction
of it's radiation transfer code.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes FATES #744 -- Use of SAI in surface albedo routines.
Fixes #1559 -- A few tests in the testlist were for hobart
Known bugs found since the previous tag (include issue #):
#1559 -- A few tests in the testlist were for hobart
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Replaced the only f19 grid resolution testmod in the izumi fates list with an f45 test
since the pes layout change for izumi from ctsm5.1.dev062 results in high resolution grids
taking longer to run now. Coverage for high resolution fates tests is provided via cheyenne
test lists.
For the same reasons as above, I transferred the only high res (f19) grid resolution testmod
in the izumi aux_clm list to cheyenne to maintain coverage for this test. The ctsm5.1.dev063
aux_clm baseline on cheyenne has been updated to include this test.
Testing summary: regular fates
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests: (baseline: fates-sci.1.50.1_api.18.0.0-ctsm5.1.dev063)
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: Yes (ONLY for FATES tests due to FATES tag update)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
fates: sci.1.50.0_api.17.0.0 -> sci.1.50.1_api.18.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1531 -- Adding fcansno to FATES interface
===============================================================
===============================================================
Tag name: ctsm5.1.dev062
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Fri Nov 19 00:53:29 MST 2021
One-line Summary: Make NUOPC the default driver rather than MCT
Purpose and description of changes
----------------------------------
Make NUOPC the default driver rather than MCT. Update externals and switch
tests so nuopc tests are explicit for mct. Fix several issues. Update the README
files and in-place documentation.
Remove MODEL as a setting for the build system, use COMP_NAME instead.
Adds a container machine definition in cime.
See README.NUOPC_driver.md at the top level for a description of what changes.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[x] clm5_0
[x] ctsm5_0-nwp
[x] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1557 more procesors on izumi for f09/f19
Fixes #1478 Rework some tests when we go to nuopc
Fixes #1365 NUOPC changes DATM_CLMNCEP_YR to DATM_YR
Fixes #1083 Use named constants rather than literal strings in NUOPC cap
Fixes #1237 Add namelist flag force_send_to_atm
Fixes #1502 Make NUOPC the default
Fixes #1476 Remove blank lines from ctsm.input_data_list
Fixes #1517 Don't allow -namelist as an option to CLM_BLDNML_OPTS
Fixes #1523 Change MODEL to COMP_NAME in buildlib
Fixes #1545 NUOPC tests that fail with floating point errors
Fixes #1192 Incompatible IC files for f09
Fixes #1544 MOSART dies for SSP tests
Fixes #1543 usgs mask doesn't work with nuopc
Known bugs found since the previous tag (include issue #):
#1528 If possible, set more lnd -> mediator coupling fields to spval over ocean
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
domain files are normally no longer used
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
See README.NUOPC_driver.md for a description of what changes
Changes made to namelist defaults (e.g., changed parameter values):
New namelist added force_send_to_atm
Substantial timing or memory changes: A bit slower, but less overall memory
The PFS test shows the following:
Model Cost: 265.58 pe-hrs/simulated_year
Model Throughput: 165.91 simulated_years/day
The previous baseline for the MCT driver showed this
Model Cost: 214.41 pe-hrs/simulated_year
Model Throughput: 205.52 simulated_years/day
The RUN length in TestStatus for dev05* and dev06* versions varied from 58 to 81 seconds
so about up to a 20% variation
Highwater memory mark is higher (67 vs 131 GB), and last usage (323 vs 165MB) lower than MCT
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Switch nuopc tests for mct. Remove ctsm_sci tests on izumi. Set MOSART_MODE==NULL for spinup tests
PTCLM and gen_domain tools tests removed
Testing summary: regular fates ctsm_sci tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (486 tests differ from baseline as expected)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- OK
fates tests:
cheyenne ---- OK
ctsm_sci tests:
cheyenne ---- PASS
any other testing (give details below):
Did run ctsm_sci tests on izumi before we decided to remove them
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes! (because NUOPC is the default driver now rather than MCT)
Summarize any changes to answers, i.e.,
- what code configurations: All where driver changes
- what platforms/compilers: All
- nature of change: similar climate
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
/glade/work/oleson/cesm2_3_alpha03a/cime/scripts/ctsm51_cesm23a03a_1deg_GSWP3V1_mct_hist
/glade/work/oleson/cesm2_3_alpha03a/cime/scripts/ctsm51_cesm23a03a_1deg_GSWP3V1_nuopc_hist
The history output is here (for now):
/glade/p/cgd/tss/people/oleson/ctsm51_cesm23a03a_1deg_GSWP3V1_mct_hist
/glade/p/cgd/tss/people/oleson/ctsm51_cesm23a03a_1deg_GSWP3V1_nuopc_hist
URL for LMWG diagnostics output used to validate new climate:
The diagnostics comparing NUOPC to MCT are here:
https://webext.cgd.ucar.edu/I20TR/ctsm51_cesm23a03a_1deg_GSWP3V1_nuopc_hist/lnd/ctsm51_cesm23a03a_1deg_GSWP3V1_nuopc_hist.1995_2014-ctsm51_cesm23a03a_1deg_GSWP3V1_mct_hist.1995_2014/setsIndex.html
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
cism to cismwrap_2_1_93
rtm to rtm1_0_78
mosart to mosart1_0_45
cime to cime6.0.11
cmeps to cmeps0.13.40
cdeps to cmeps0.13.40
cpl7 to cpl7.0.5
share to share1.0.8
fates to sci.1.49.1_api.17.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1530 -- Add compsets for multiple ice-sheets
#1502 -- Make the NUOPC driver the default
#1540 -- Implement fates_levleaf as a FATES 1D dimension variable
===============================================================
===============================================================
Tag name: ctsm5.1.dev061
Originator(s): mvertens (Mariana Vertenstein)
Date: Tue Oct 19 11:56:30 MDT 2021
One-line Summary: Changes needed to get aux history output with cmeps
Purpose and description of changes
----------------------------------
These changes are needed to create auxiliary land history files when the
new cmeps configuration variable is set to true. histaux_l2x1yrg =
.true.
The changes needed in CTSM enable lnd2glc fields to be sent to the
mediator even if glc is not present - based on querying the
histaux_l2x1yrg setting.
This includes a related change to set most lnd -> mediator fields to
spval over ocean, instead of sending zero values over ocean.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1238 (In nuopc cap: change logic for when glc
fields are sent to facilitate writing cpl aux hist files)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: NUOPC only
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Just changes missing value patterns for lnd -> mediator fields
Most lnd -> mediator fields now have missing value over ocean
instead of sending zero values over ocean. This shows up as
FILLDIFFs in most nuopc tests.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1495
===============================================================
===============================================================
Tag name: ctsm5.1.dev060
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Mon Oct 18 13:13:03 MDT 2021
One-line Summary: Izumi aux_clm test fixes for fates testmods
Purpose and description of changes
----------------------------------
This tag corrects an accidental inclusion of non-debug, nag compiled fates testmods
into the izumi aux_clm test list. It also makes corrections to the expected failures
list as well as adjusts the fates izumi test list as well as updates the externals
file to point to the most recent fates tag (which includes a science update so answers
change for FATES).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
FATES #790 -- NAG compiler runtime error in FatesHydroWTFMod
Known bugs found since the previous tag (include issue #):
#1525 -- ERS fates hydro test failing with nag compiler due to use_lch4
#1526 -- Switch FATES methane test for methane off
FATES #795 -- NAG compiler runtime error in hydraulics_bs
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
Changed the non-debug fates testmods in the izumi aux_clm list to compile with intel
instead of nag to avoid fates issue 771 and provide testing parity with the cheyenne
aux_clm list.
Removed two tests from the fates izumi test list:
- FatesColdDefAllVars testmod as it takes too long to complete due to history writes
- f19, 3-day, ERP fates testmod due to a sporadic memleak
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
fates tests:
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: Yes (ONLY for FATES tests because of the FATES tag update)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.47.0_api.17.0.0 -> sci.1.48.0_api.17.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
# 1524 -- Switch izumi aux_clm category non-debug fates testmods from nag to intel
===============================================================
===============================================================
Tag name: ctsm5.1.dev059
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Wed Oct 13 10:46:06 MDT 2021
One-line Summary: Update fates tests and list for diversity and coverage
Purpose and description of changes
----------------------------------
This tag changes the list of fates testmod represented in the aux_clm category test list
to provide an updated set of testmods to improve coverage and diversity of fates modes
to be checked during ctsm updates now that fates is updating directory to the ctsm main/master
branch. A number of updates were made to the fates category list as well, including
test name changes, variables including for fates testmods, and the addition of a fates landuse
testmod.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1273 -- Add testmod for FATES land use
Fixes #1265 -- Diversifying fates testmods included in aux_clm test suite
CIME Issues fixed (include issue #):
Known bugs introduced in this tag (include issue #):
FATES #790 -- NAG compiler runtime error in FatesHydroWTFMod
#1518 -- FATES P32x2 test appears to fail reliably when using I2000FatesCruRsGs compset
#1520 -- Short clm ERS test hits reasonable wall clock limit on izumi nag
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Changes to tests or testing:
- The list of fates testmods that are included as part of the aux_clm testlist has been updated to
change older compset coverage for newer Clm50 compsets. It also changes the list of fates testmods
to improve coverage for stable fates run mode options.
- The list of tests for the fates test category on all machines has been updated to use river stub compsets
for most tests in an effort to reduce test runtime.
- The list of tests for the fates test category on izumi has been change to only include debug-only tests as
a short term work around for FATES #771
- The output variables for most all fates testmods is updated to only include site-level variables in an
effort to decrease history write time for any given test
- Updates the expected failure test list to remove out-of-date entries failures
- Many of the fates testmods have been renamed to be have a more broadly consistent naming scheme that denotes
which testmod is a baseline for a given testmod
- FatesColdDefLandUse testmod has been added to gain coverage for the do_harvest mode
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
fates tests:
cheyenne ---- ok
any other testing (give details below):
Note that since testnames and variable inclusion list was changed for all fates testmods, test results
are not automatically comparable by cprnc. Manually comparison was done to validate output for fates testmods.
See PR #1275 details for more thorough explanation of testing results.
Answer changes
--------------
Changes answers relative to baseline: No (only for non-fates testsmods)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1275 -- FATES testing update and cleanup
===============================================================
===============================================================
Tag name: ctsm5.1.dev058
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu Oct 7 20:47:14 MDT 2021
One-line Summary: Some miscellaneous small answer changes
Purpose and description of changes
----------------------------------
Change ceta from 450 to 358 for CTSM5.1 See Leo VanKamenhout's work on this in
https://github.com/ESCOMP/CTSM/pull/250. Note, this is used in the PPE work.
See van Kampenhout et al. (2017). Turn Medlyn on for PHS off for clm51 and clm50.
Make max CO2 partial pressure consistent in Photosynthesis.
Change surface datasets to only use 78PFT versions
Fix GSSUN and GSSHA history variables so now not just writing missing values.
Changes FATES to run with use_nitrif_dentrif=T by default. Change dynlakes test
to methane/use_nitrif_=T.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1504 -- Transient Sp cases fail when using mismatched crop surface/landuse-timeseries datasets #1504
Fixes #1503 -- VIC cases can't use crop surface datasets because of missing vic data #1503
Fixes #1462 -- GSSUN and GSSHA are not set on history files #1462
Fixes #1394 -- Max partial pressure of CO2 be should be 1.e-6 rather than 10.e-6 which it is for ci_func_PHS #1394
Fixes #1460 -- Initialize t_soisno to 272K instead of 274K to avoid deep soil carbon in permafrost regions #1460
Fixes #1465 -- Change FATES to run with use_nitrif_dentrif TRUE #1465
Worked on #1356 -- Remove the CN (non CENTURY) version of Carbon-Nitrogen soil biogeochemistry code and its testing #1356
Fixes #1496 -- SP NoAnthro case fails... #1496
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
stomatalcond_method is now Medlyn2011 for clm5_0 and clm5_1
use_nitrif_denitrif is now TRUE when using FATES
Changes to the datasets (e.g., parameter, surface or initial files):
New parameter file for clm5_1 (changes ceta)
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Surface datasets are now labeled with use_vichydro=TRUE in the xml. This also means that some files
listed in the XML are listed twice for VIC both on and off (that's important for FATES since it still
requires non-crop datasets (see #1505)
Also the logic for finding both fsurdat and flanduse_timeseries files needs to be the same in first
asking for a crop version and then an exact match if it isn't found (unless it's FATES and then you just
do the exact match).
Changes to tests or testing:
Dynamic lakes test now has methane on, which works because we turn off methane conservation check after restart
See #43 for more information on this.
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - OK (306 tests different than baseline)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here: previous
Answer changes
--------------
Changes answers relative to baseline: Yes
Summarize any changes to answers, i.e.,
- what code configurations: Most
- what platforms/compilers: all
- nature of change:
similar climate most changes are near roundoff level
All clm5_1 physics change answers because of change in ceta parameter.
When PHS off for clm5_1 and clm5_0 changes answers because of Medlyn photosynthesis over Ball-Berry.
Photosynthesis potentially changes all the time because a maximum parameter was off.
Answer should be close to roundoff for Sp and Bgc cases without Crop because we now use crop surface datasets.
FATES changes answers since user_nitrif_dentrif is now on by default
COLDSTART BGC cases will change answers because of a change in initial soil temperature
clm4_5 and clm5_0 vichydro results are identical
clm4_5 and clm5_0 single point urban tests are identical
Some tests are still identical mostly crop-cases non-cold-start
In some cases GSSUN and GSSHA will be different.
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1497 -- Miscellaneous small answer changes
===============================================================
===============================================================
Tag name: ctsm5.1.dev057
Originator(s): Sam Rabin
Date: Mon Sep 20 10:07:26 MDT 2021
One-line Summary: Consolidate duplicated crop phenology code
Purpose and description of changes
----------------------------------
Consolidate duplicated code related to crop planting
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1479 (Suggested cleanup in CropPhenology():
Removing duplicated sowing code)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1482
===============================================================
===============================================================
Tag name: ctsm5.1.dev056
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Fri Sep 17 15:41:57 MDT 2021
One-line Summary: FATES Satellite Phenology mode implemented
Purpose and description of changes
----------------------------------
This PR enables FATES TLAI, TSAI, and HTOP to be driven by the host land model
satellite data sets. The parameter file has been updated to include an array
mapping the indices of the host land model pfts to fates pfts. FATES satellite
phenology mode automatically enables two additional reduced complexity modes:
fixed biogeography and no competition. The former had previously been
implimented although this update corrected an error associated with this mode.
The latter is a new mode introduced in this PR as well and a corresponding
regression test has been added along with a new sp mode regression test.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Adds FATES-SP mode as part of #1047 (a FATES v1 requirement)
Known bugs introduced in this tag (include issue #):
#1485 -- Forthcoming FATES satellite phenology ERS test fails COMPARE_base_rest
#1488 -- FATES SP mode filter comparison: all_soil_patches and soil
#1489 -- Add graceful build failure for additional modes that are incompatible with use_fates_sp
Known bugs found since the previous tag (include issue #):
MOSART #45 -- frivinp_rtm is still required even if MOSART is turned off
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
The SPITFIRE model is set to fail gracefully if accidentally enabled in conjunction with sp mode.
There is a known error in the satellite phenology exact restart, so restarts should not be
attempted until issue #1485 has been resolved.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
History variables TLAI, TSAI, and HTOP are updated to reflect the fates sp mode outputs by means
of overwriting the existing history outputs. The original canopystate variables are still
calculated, but not available to the user.
Changes made to namelist defaults (e.g., changed parameter values):
Add namelist option: use_fates_sp, use_fates_nocomp
Changes to the datasets (e.g., parameter, surface or initial files):
New fates paramter file which include hlm to fates pft indexing map
Substantial timing or memory changes: None
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
All single site fates suite tests need to be manually built and submitted given MOSART #45. PR #1275 will resolve
this by switching to a non-MOSART compset.
Changes to tests or testing:
A temporary SMS test has been added for Satellite Phenology testmod given the known ERS failure (issue #1485).
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
ok: NLCOMP failures due to new fates namelist options added
fates tests:
cheyenne ---- OK
ok: FixedBiogeo DIFF deemed acceptable due to error correction from previous baseline.
fates baseline: fates-sci.1.46.2_api.16.1.0-ctsm5.1.dev055
Answer changes
--------------
Changes answers relative to baseline: No (except for FATES FixedBiogeo)
Summarize any changes to answers, i.e.,
- what code configurations: FATES FixedBiogeo mode only
- what platforms/compilers: all
- nature of change: larger than roundoff due to corrected hlm-fates pft mapping
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.46.2_api.16.1.0 -> sci.1.47.0_api.17.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1182 -- FATES SP api
FATES #703 -- Fates SP mode
===============================================================
===============================================================
Tag name: ctsm5.1.dev055
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Fri Sep 10 11:25:08 MDT 2021
One-line Summary: Updates to master_list_file.rst
Purpose and description of changes
----------------------------------
Added code that writes a disclaimer and a few of the case's flags near
the top of master_list_file.rst.
Added code to generate a FATES version of master_list_file.rst.
Named new file master_list_file_fates.rst and renamed existing file
master_list_file_nofates.rst.
Updated .rst files in the documentation accordingly.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? No.
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
None.
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
The changes described above mainly affect the documentation.
If a user sets hist_master_list_file = .true.
to see the list of history fields available in their case, then they
will see the changes to master_list_file.rst described above.
Notes of particular relevance for developers:
---------------------------------------------
None.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Note 1. On izumi I got four NLCOMP failures that seem unexpected:
ERI_D_Ld9_P48x1_Vnuopc.f10_f10_mg37.I2000Clm50Sp.izumi_nag.clm-SNICARFRC
ERS_D_Mmpi-serial_Ld5_Vnuopc.1x1_brazil.I2000Clm50FatesRs.izumi_nag.clm-FatesColdDef
SMS_D_Ld1_P48x1_Vnuopc.f10_f10_mg37.I2000Clm50BgcCru.izumi_nag.clm-af_bias_v7
SMS_D_Vnuopc_Mmpi-serial.CLM_USRDAT.I1PtClm51Bgc.izumi_nag.clm-default--clm-NEON-NIWO
with errors like this:
Comparison failed between '/scratch/cluster/slevis/tests_0908-183947iz/ERI_D_Ld9_P48x1_Vnuopc.f10_f10_mg37.I2000Clm50Sp.izumi_nag.clm-SNICARFRC.GC.0908-183947iz_nag/CaseDocs/lnd_in' with '/fs/cgd/csm/ccsm_baselines/ctsm5.1.dev054/ERI_D_Ld9_P48x1_Vnuopc.f10_f10_mg37.I2000Clm50Sp.izumi_nag.clm-SNICARFRC/CaseDocs/lnd_in'
missing variable: 'fatmlndfrc'
Note 2. On cheyenne I got an expected NLCOMP failure due to the Fates test
that I modified to output the master_list_fates.rst file.
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No.
The contents of master_list_nofates.rst have changed relative to the
earlier copy named master_list_file.rst, due to changes in the list of
available history fields introduced in previous tags.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1481
===============================================================
===============================================================
Tag name: ctsm5.1.dev054
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu Sep 2 01:18:31 MDT 2021
One-line Summary: New parameters on paramsfile, many bit-for-bit changes, new history fields for IWUELN,VPD_2M, allow Medlyn Photosynthesis for non-PHS cases, fixes to HumanStressIndex
Purpose and description of changes
----------------------------------
Brings more hardcoded parameters to the paramsfile. Some bit-for-bit cleanup. A fix for HumanStressIndex. Adding IWUELN
and VPD_2M diagnostic to history output. Add in ability to run Medlyn photosynthesis for non-PHS cases (not turned on yet though).
Most of the addition of parameters is from Keith Oleson.
Daniel Kennedy added two new diagnostic fields available for history outuput.
IWUELN: the intrinsic water use efficiency at local noon (umolCO2/molH2O)
VPD_2M: vapor pressure deficit at 2m reference height (pascals)
The Medlyn stomatal conductance functionality was deployed for CLM5. It had not been implemented for use_hydrstress=.false
(i.e. SMS). Previously if we opted for: use_hydrstress=.false and stomatalcond_method = 'Medlyn2011',
the model would actually use the Ball-Berry stomatal conductance model. Daniel Kennedy adds the changes to allow this for
non-PHS.
Human Stress index changes are from Jonathan Buzan and Keith Oleson.
Some clean-up work on arctic vegetation changes. Also removal of the option to run non-CENTRY based soil
decomposition model. CN options are removed along with use_century_decomp and use_vertsoilc. use_nitrif_dentrif and
use_lch4 are still retained, but recommended to be always on, and will be removed later.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1472 - hist_master_list_file dies if master_list_file.rst already exists
Fixes #1469 - Remove unused 0.1x0.1 grid
Fixes #1468 - Remove vestiges of ch4 0.9x1.25 grid in mksurfdata_map/mkmapdata
Fixes #1427 - Division of critical day length by 2 is incorrect
Fixes #1403 - Invalid test running single-point forcing data before or after it's valid data series
Fixes #1401 - 1-Degree methane finundated stream data is labeled as if it's 2-degree
Fixes #1399 - Some cleanup for arctic luna changes
Fixes #1296 - Make a checklist of issues to check for when running a simulation.
Fixes #1245 - intrinsic water use efficiency diagnosti
Fixes #1250 - Error in HumanIndexMod (QSat_2 subroutine)
Fixes #1284 - change where stem_biomass is set
Fixes #1382 - write out friction velocity to history files by default
Fixes #1379 - Invalid xml for namelist_definition file: missing end tag
Fixes #1185 - Remove wrtdia
Fixes #1168 - Remove duplication between phys versions in CLM_BLDNML_OPTS settings (and fix some others) in config_component.xml
Fixes #886 -- Warning if FUN is on, but FlexibleCN is not
Fixes #808 -- Remove camdenNJ test from prebeta test list, replace it with working tests
Partial work on #1356 (but use_lch4, use_nitrif_dentrif remain)
Known bugs found since the previous tag (include issue #):
#1462 -- GSSUN and GSSHA are not set on history files
#1460 -- Initialize t_soisno to 272K instead of 274K to avoid deep soil carbon in permafrost regions
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Vertical soil carbon is now hardcoded to on. This means that if you had run a simulation
with it turned off -- you won't be able to use it's restart files in this versions and after.
Likewise with CENTURY-BGC.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Removed namelist options: wrtdia, use_vertsoilc, use_century_decomp, min_wind_snowcompact
Added namelist options: min_critical_dayl_method, soil_decomp_method
New options for min_critical_dayl_method, DependsOnVeg and DependsOnLatAndVeg
Remove 1x1_camdenNJ and 1x1_asphaltjungleNJ grid options
Remove some uneeded grids and files, correct 360x720cru grid for mksurfdata_map
Remove vestiges of ch4 files in mksurfdata_map
Remove the "cn" option to "-bgc" in CLM_BLDNML_OPTS and remove Cn compsets and tests
New history variables: VPD2M, IWUELN (FV made default active)
Changes to the datasets (e.g., parameter, surface or initial files):
New parameter files
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
After we turn on methane and nitrfication-dentrification for all configurations we
can remove the use_lch4 and use_nitrif_denitrif options
Changes to tests or testing:
Removed CN and 1x1_camdenNJ tests as well as NoVSNoNI
Shortened 1x1_cancouverCAN test as it ran beyond the end of data
Changed name of "rootlit" test to "anoxia" as that was the only thing it does, it now
also runs with vertical soil Carbon profile
Testing summary: regular, tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - OK
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit (except diagnostic fields when HumanStress is turned on)
Summarize any changes to answers, i.e.,
- what code configurations: When human-stress turned on
- what platforms/compilers: All
- nature of change: Small (only to diagnostic fields)
Also now can't run with use_vertsoilc off
anoxia tests are different from rootlit tests as use_vertsoilc is now hardcoded on
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1164 -- Some more hardcoded parameters to the params file
#1250 -- Error in HumanIndexMod (QSat_2 subroutine)
#1267 -- Adding IWUELN and VPD_2M diagnostic
#1321 -- Medlyn-SMS
===============================================================
===============================================================
Tag name: ctsm5.1.dev053
Originator(s): sacks (Bill Sacks)
Date: Fri Aug 13 10:17:42 MDT 2021
One-line Summary: Add Antarctica compset and change min_snow_to_keep
Purpose and description of changes
----------------------------------
(1) Add a compset for running CISM with Antarctica
(2) Change min_snow_to_keep (see
https://github.com/ESCOMP/CTSM/issues/1425 for details)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1425 (Need to increase min_snow_to_keep)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but very limited circumstances
Summarize any changes to answers, i.e.,
- what code configurations: rarely, when have large snow capping flux
- what platforms/compilers: all (potentially)
- nature of change (roundoff; larger than roundoff/same climate; new climate):
slightly larger than roundoff when it occurs
Changes only appear if removing the entire bottom layer of the snow
pack in one time step due to snow capping. The only test in the test
suite that changes answers is:
ERS_D.f10_f10_mg37.I1850Clm50BgcCrop.cheyenne_intel.clm-reseedresetsnow
===============================================================
===============================================================
Tag name: ctsm5.1.dev052
Originator(s): negins/jedwards/erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Aug 11 21:58:47 MDT 2021
One-line Summary: Wrapper script for running NEON sites, and some NEON updates
Purpose and description of changes
----------------------------------
This is a wrapper script for running CTSM simulation for one or more neon sites using
CIME case objects.
This script accomplishes the following:
Downloads and parses neon listing file for the available neon data :
https://neon-ncar.s3.data.neonscience.org/listing.csv
Create a base generic case and clone other cases from this generic base case.
Enable the user to run in AD, Post-AD, and transient mode.
Currently, there is no case dependency or case status check in the code. Which means
that the user cannot run Post-AD +AD + transient all at the same time. If we add case
dependency, then the code that checks the status of a case (e.g. spinup) every 2
seconds and once it is finished successfully submit the next phase (e.g. transient.)
Externals are also updated to fix some NEON issues.
New tools subdirectory site_and_regional and current scripts for handling single-point
moved underneath. Also README files and tools testing changed for this move. Also tools
test added for the new wrapper script talked about above. Fix an issue in subset_data.py
where it couldn't be run from outside of a git directory because it checks for the git hash.
Changes so that CTSM will write restarts as signaled at end of simulation by the CMEPS mediator.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1354 Batch run single point sites
Fixes #1454 run_sys_test improve error for rerun option
Fixes #1456 Missing files for test tools
Fixes #1407 mkmapdata.sh failing for regional grid
Fixes #1446 modifiy_neon script changes dimension for zbedrock
Fixes #1429 Modified neon datasets have errors
Known bugs introduced in this tag (include issue #):
#1459 -- Change run_neon to run from any directory and add some additional options for testing
Known bugs found since the previous tag (include issue #):
#1443 -- NEON site data requirements
#1442 -- Rename NEON files for CLM
#1433 -- Bring in eval data from NEON
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing: tools testing modified add a tools test for the run_neon script
Testing summary: regular and tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
PTCLM testing (tools/shared/PTCLM/test): (if cime or cime_config are changed)
(PTCLM is being deprecated, so we only expect this to be done on occasion)
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
Other details
-------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cism, cime, cmeps, cdeps
cism to cismwrap_2_1_87
cime to cime6.0.4
cmeps to cmeps0.13.23
cdeps to cdeps0.12.19
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1444 -- Wrapper script for batch running NEON sites, and NEON fixes
===============================================================
===============================================================
Tag name: ctsm5.1.dev051
Originator(s): Stefanie Falk, Sunniva Indrehus, Bill Sacks
Date: Fri Aug 6 10:30:32 MDT 2021
One-line Summary: New LUNA-specific ozone stress option
Purpose and description of changes
----------------------------------
Add a new ozone stress option that modifies jmax; this stress option is
specific to LUNA. See https://github.com/ESCOMP/CTSM/issues/1224 for a
detailed description.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1224 (Add new feature: Ozone impact on Jmax in
LUNA (OzoneLUNA))
Known bugs introduced in this tag (include issue #):
- https://github.com/ESCOMP/CTSM/issues/1381 (Distinction between sunlit
vs. shaded leaves in Luna (e.g., for ozone stress))
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- use_ozone logical replaced by o3_veg_stress_method string
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Ozone tests reworked so that one covers this new option
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
any other testing (give details below):
- Ran ERP_D_Ld5_P72x2.f10_f10_mg37.I2000Clm50BgcCrop.cheyenne_intel.clm-o3falk (passes)
- Ran the two old ozone tests that have been replaced; these passed
and were bit-for-bit (other than fieldlist diffs due to new ozone
diagnostic fields added in this tag)
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, just roundoff-level for pgi
Summarize any changes to answers, i.e.,
- what code configurations: anything with LUNA
- what platforms/compilers: pgi
- nature of change (roundoff; larger than roundoff/same climate; new climate):
roundoff
If bitwise differences were observed, how did you show they were no worse
than roundoff?
I verified that the answer changes just arise due to an extra
multiplication by 1 in LUNA, which must change order of operations
for pgi. (I compared with this one-off from master and was
bit-for-bit:
https://github.com/billsacks/ctsm/commit/011c79fc361a98c04a42824b74ca81209262da7c)
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1232
https://github.com/ESCOMP/CTSM/pull/1370
===============================================================
===============================================================
Tag name: ctsm5.1.dev050
Originator(s): sacks (Bill Sacks)
Date: Mon Aug 2 17:17:10 MDT 2021
One-line Summary: Improve and document method for getting diagnostics on a problem point
Purpose and description of changes
----------------------------------
Following from the changes in ctsm5.1.dev047 to change the lower bounds
to 1 on all processors: The one downside of that change was that it made
it a bit harder to write diagnostics on a given point. This PR cleans up
the method for writing these diagnostics and adds relevant
documentation.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#164 (BalanceCheck: Calls get_proc_bounds from
threaded region)
- Resolves ESCOMP/CTSM#1424 (Change all the endrun calls to write out
the point context information)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cdeps: cdeps0.12.14 -> cdeps0.12.17
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/issues/1424
===============================================================
===============================================================
Tag name: ctsm5.1.dev049
Originator(s): jedwards4b/erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Mon Jul 26 01:31:04 MDT 2021
One-line Summary: Update externals, NEON updates, fix stop_option=date, move neon niwo test to match user_mods, local time option
Purpose and description of changes
----------------------------------
Move the NEON_NIWO test to NEON/NIWO to match the names in usermods. Output particular fields for the NEON
cases, and use a reduced size dataset for lightning for NEON sites. Update NEON surface datasets with
new scripts included here. Fix stop option for NUOPC. NEON NIWO test in testlist explicity uses the user-mod
as well as the defaults testmod.
This script is for modifying the surface dataset at neon sites using data available from the neon server.
Also add the ability to output history fields for a particular time of day (in seconds) with the LXXXXX
history averaging option from Ronny Meier.
Externals are updated extensively to the version with cpl7 cime directories split out for CESM.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? No
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #1412
Fixes #1412 -- Reduce data requirements for NEON single point sites
Fixes #1353 -- Need script to modify NEON surface datasets
CIME Issues fixed (include issue #): #3915
Fixes cime/#3915 -- CESM nuopc build fails on izumi_nag
Known bugs introduced in this tag (include issue #):
#1437 -- modify_singlept_site_neon.py seems to have trouble finding latest file and creates hidden file for output
#1436 -- Need subset_data.py script to be able to run from any directory
Known bugs found since the previous tag (include issue #):
#1429 -- Modified NEON surface datasets have errors
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
NEON cases now download data to $RUNDIR
Changes to the datasets (e.g., parameter, surface or initial files): NEON sufdata
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Note when you have a test with two testmod directories it won't be able to reduce any deuplication
that happens in directories used between the two.
Changes to tests or testing:
Test mods in testlists can now include multiple test mod directories and this is used for the NEON test
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (47 tests differ from before because of NEON surface dataset update)
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cism, mosart, rtm, cime, cmeps, cdeps (cime split)
cism to cismwrap_2_1_85
mosart to mosart1_0_43
rtm to rtm1_0_77
cime to cime6.0.3
cmeps to cmeps0.13.15
cdeps to cdeps0.12.14
New cime-split externals:
cpl7.0.3
share1.0.2
MCT_2.11.0
pio2_5_4
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1411 -- fix stop_option=date, move neon niwo test to match user_mods
#1375 -- Script for modifying neon surface dataset
#1374 -- Local solar time option for average flag
===============================================================
===============================================================
Tag name: ctsm5.1.dev048
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Sat Jul 10 11:39:55 MDT 2021
One-line Summary: Make certain history fields descriptive inst. of labeling by number
Purpose and description of changes
----------------------------------
I used existing infrastructure to add descriptive strings to certain history
fields that I had labeled by number in #1340. While doing this, I applied the
change to a bunch of other history fields that needed it.
Some variable names for pools was also changed to use terms consistent with the new
names as well.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #1392
#1392 -- Some soil decomposition history fields have the pool number rather than a description in their name
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
The names of certain history fields have changed to be more descriptive
in place of using numbers to differentiate them.
history field name change as follows...
LITR1 becomes MET_LIT (metabolic)
LITR2 becomes CEL_LIT (cellulosic)
LITR3 becomes LIG_LIT (lignin)
SOIL1 becomes ACT_SOM (active)
SOIL2 becomes SLO_SOM (slow)
SOIL3 becomes PAS_SOM (passive)
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO bit-for-bit
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1413
===============================================================
===============================================================
Tag name: ctsm5.1.dev047
Originator(s): mvertens (Mariana Vertenstein)
Date: Thu Jul 8 12:03:31 MDT 2021
One-line Summary: Start bounds at 1; remove references to MCT
Purpose and description of changes
----------------------------------
Users: take note of (1), and in particular the caveat for users noted
below (in the "Notes of particular relevance for users").
(1) All global index arrays on a given processor now have a starting index of 1
- bounds_proc for each subgrid level has a starting index of 1 for each level
- bounds_clump for each subgrid level has a starting index of 1 for just
the first clump on the processor - but all the other clumps on the
processor do not start at 1 - but rather are offset with the number of
gridcells, columns, ...etc on the preceeding clumps
(2) There are no longer any references to any mct data structures other than in the mct cap
- All references to gsmap have been removed from decompMod.F90 and
replaced with new global index arrays for the various subgrid levels
- decompInitMod has been refactored to calculated these global index
arrays using pure MPI rather than mct
- ncdio_pio_F90.in has been refactored to use the new global index
arrays rather than the gsmap data structures
- the data struture ldecomp is no longer needed
- the module spmdGathScatMod.F90 is no longer needed and has been removed
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Addresses the first part of ESCOMP/CTSM#293 (Rework threading to be
done at a higher level, simplifying array argument passing)
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- Until now, if the model produced an error message with a gridcell or
subgrid index (e.g., "Error at p = 1234"), you could rerun the model
with write statements in conditionals like "if (p == 1234) then". With
the changes in this tag, this simple conditional is no longer
possible. Instead, you will need to also reference the processor
number that produces the error.
If the error message is produced in the lnd log file, then you can
have a conditional like:
if (masterproc .and. p == 1234) then
If the error message is produced in the cesm log file, then you can
have a conditional like:
if (iam == X .and. p == 1234) then
where X is the processor number that produced the message. On some
machines (including cheyenne), this processor number is printed at the
start of each line in the cesm log file. In addition, some aborts will
now print "proc_id = X", and that value can be used.
Soon we will update
https://escomp.github.io/ctsm-docs/versions/master/html/users_guide/trouble-shooting/trouble-shooting.html
to document the new recommended procedure.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1420
===============================================================
===============================================================
Tag name: ctsm5.1.dev046
Originator(s): rgknox (Ryan Knox,,,)
Date: Fri Jul 2 14:36:44 MDT 2021
One-line Summary: Updating external fates has to tag sci.1.46.2_api.16.1.0. FATES side changes expand the FATES parameter file to include new fields (unused at present). This also includes sci.1.46.1_api.16.0.0 which contained a sublte bug-fix on how FATES passes fragmentation fluxes (correcting seed decay fragmentation).
Purpose and description of changes
----------------------------------
This change brings the fates external up to sci.1.46.2_api.16.1.0. FATES side changes expand
the FATES parameter file to include new fields.
New and UNUSED parameters include:
fates_hydr_htftype_node
fates_prt_organ_id
fates_hydr_organname_node
fates_litterclass_name
fates_allom_zroot_k
fates_allom_zroot_max_dbh
fates_allom_zroot_max_z
fates_allom_zroot_min_dbh
fates_allom_zroot_min_z
fates_hydr_k_lwp
fates_hydr_vg_alpha_node
fates_hydr_vg_m_node
fates_hydr_vg_n_node
fates_hlm_pft_map
fates_maintresp_model
fates_photo_temp_acclim_timescale
fates_photo_tempsens_model
fates_vai_top_bin_width
fates_vai_width_increase_factor
New parameters that now over-ride previously hard-coded parameters:
fates_theta_cj_c3
fates_theta_cj_c4
New parameters that are unset for developer convenience:
fates_dev_arbitrary_pft
fates_dev_arbitrary
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? No
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1383 -- changes shebang lines to python3
fates issue: https://github.com/NGEET/fates/issues/753
Notes of particular relevance for users
---------------------------------------
The FATES parameter file now contains new fields. Users must update their personal parameter
files to contain these new fields. See src/fates/parameter_files/fates_params_default.cdl
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Developers should also be aware of the new fates parameter file format.
Changes to tests or testing: None
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (60 compare tests differ to previous tag)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests:
cheyenne ---- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Original testing was done compared to ctsm5.1.dev044, but testing is being rerun now
Answer changes
--------------
Changes answers relative to baseline: Just for FATES
Summarize any changes to answers, i.e.,
- what code configurations: Just when running FATES
- what platforms/compilers: All
- nature of change: minor changes related to a bug-fix
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): FATES
fates to sci.1.46.2_api.16.1.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1414 -- Fates api16.1 (parameter file updates)
===============================================================
===============================================================
Tag name: ctsm5.1.dev045
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Tue Jun 29 20:05:21 MDT 2021
One-line Summary: Include CWD in heterotrophic respiration (HR)
Purpose and description of changes
----------------------------------
Params file sets the respiration fractions for CWD to zero:
rf_cwdl2_bgc = 0
rf_cwdl3_bgc = 0
The model has no code to handle rf_cwd* > 0. So...
- I have introduced cwdhr_col to track this HR the same way that we track
lithr_col for litter.
- I have removed if-statements that prevented CWD HR pools and decomposition
from writing to history.
- I have introduced a new test to the cheyenne test-suite that makes active
seven history fields pertaining to CWD HR and points to a params file with
rf_cwd* > 0. I have confirmed that the new test returns the new active
variables as greater than 0 when pointing to the new params file and equal
to 0 when pointing to the default params file.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Notes of particular relevance for users
---------------------------------------
Notes of particular relevance for developers:
---------------------------------------------
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - OK (2 tests fail compare because of fix in #1417)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: No
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1414
===============================================================
===============================================================
Tag name: ctsm5.1.dev044
Originator(s): mvertens (Mariana Vertenstein)
Date: Thu Jun 24 15:59:08 MDT 2021
One-line Summary: New stream functionality when using NUOPC or LILAC
Purpose and description of changes
----------------------------------
This tag creates new stream functionality when using the NUOPC and LILAC
caps, and maintains backwards compatibility with the older CPL7 stream
functionality when using the MCT cap.
- New stream code has been placed in src/cpl/share_esmf (so that they
can also be leveraged by LILAC)
- Older stream code for mct is now in src/cpl/mct
- LILAC interface has been changed to leverage the new stream code as well
Where possible share code was used. In particular, this holds for SatellitePhenologyMod.F90.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- New mesh stream entries are needed now for NUOPC and LILAC compsets
Substantial timing or memory changes: None for mct. For
ERS_Ly3_P72x2_Vnuopc.f10_f10_mg37.IHistClm50BgcCropG.cheyenne_intel.clm-cropMonthOutput,
overall run time is slightly less than the baseline - probably within
machine variability. A more careful investigation would be needed to
determine if the CDEPS streams have changed performance significantly
relative to the MCT-based streams, but the overall timing suggests that
there probably aren't *large* differences.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Ran most testing on eb696be8d; from this hash, there were FIELDLIST
diffs for SP cases. Reran the tests with FIELDLIST diffs from the
final version and generated new, fixed baselines.
Answer changes
--------------
Changes answers relative to baseline: YES, just for NUOPC/LILAC configurations
Summarize any changes to answers, i.e.,
- what code configurations: NUOPC/LILAC
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff / same climate. Diffs arise due to changes in
the interpolation used in cdeps streams vs. the old mct-based
streams. Diffs generally keep 3-4 digits of equivalence or better.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cime: cime5.8.47 -> branch_tags/cime5.8.47_a01
- cdeps: cdeps0.12.4 -> cdeps0.12.11
Pull Requests that document the changes (include PR ids):
https://github.com/escomp/ctsm/issues/1356
===============================================================
===============================================================
Tag name: ctsm5.1.dev043
Originator(s): slevis/ekluzek (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Thu Jun 3 17:14:30 MDT 2021
One-line Summary: Refactor in preparation for MIMICS
Purpose and description of changes
----------------------------------
Refactor aspects of the CTSM in preparation for our introduction of
MIMICS, which has started in #1318 .
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? NO
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Known bugs introduced in this tag (include issue #): #1356, #1392
#1356 -- CN is no longer just deprecated it breaks when you try to use it
#1392 -- Some soil decomposition history fields have the pool number rather than a descr.
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Moved initial_Cstocks_depth_bgc and initial_Cstocks_bgc from the
namelist to the params file. Also renamed tau_cwd to tau_cwd_bgc and
k_frag to k_frag_cn in the params file according to the models that use
these parameters.
Changes made to namelist defaults (e.g., changed parameter values):
initial_Cstocks_depth_bgc and initial_Cstocks_bgc are not namelist
variables anymore.
Changes to the datasets (e.g., parameter, surface or initial files):
There are new params files for clm45, clm50, and ctsm51.
Substantial timing or memory changes:
FAIL PFS_Ld20.f09_g17.I2000Clm50BgcCrop.cheyenne_intel MEMCOMP Error: Memory usage increase > 10% from baseline
Throughput doesn't seem to change. There might be an increase in memory as it's indicated for 20 tests.
And some arrays were changed to add an extra dimension.
Testing summary:
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (785 tests are different because of new params files and removed namelist items)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK (read above in "bugs introduced" about CN failures)
izumi ------- OK (read below in "other testing" about pgi failures)
any other testing (give details below):
Two unexpected tests fail on izumi, so I performed additional testing.
The tests that fail:
1) SMS_D.f10_f10_mg37.I2000Clm51BgcCrop.izumi_pgi.clm-crop
BASELINE ctsm5.1.dev042: DIFF roundoff
2) SMS.f10_f10_mg37.I2000Clm50BgcCrop.izumi_pgi.clm-crop
BASELINE ctsm5.1.dev042: DIFF greater than roundoff for CH4-related vars
I confirmed same result with my earlier commit against BASELINE dev033.
Same tests but with gnu/intel instead of pgi pass on izumi for both
comparisons to dev042 and to dev033. These tests are part of the izumi
test-suite already.
Additional testing:
Repeated these gnu/intel tests (had to run for baseline first) on cheyenne
and they passed.
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1340
===============================================================
===============================================================
Tag name: ctsm5.1.dev042
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Fri May 28 14:07:45 MDT 2021
One-line Summary: Small answer changes for double precision constants and limit on organic soil
Purpose and description of changes
----------------------------------
Change more constants to double precision. Add in limits on organic matter in
soil that @olyson added to the PPE branch (Perturbed Parameter Ensemble).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
#1380 -- Missing NCL script
#142 --- hard coded constants aren't all double precision (some work was done on this)
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
There are still more constants that should be converted to double precision.
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes!
Summarize any changes to answers, i.e.,
- what code configurations: All
- what platforms/compilers: All
- nature of change: mostly single-precision roundoff
many constants that were single precision are now double
some limits put on soil organic that weren't there previously
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1384 -- Change some constants to double precision, and add some soil limits
===============================================================
===============================================================
Tag name: ctsm5.1.dev041
Originator(s): Ryan Knox
Date: Thu May 27 01:10:40 MDT 2021
One-line Summary: Updates to coupling interface to enable FATES-CH4, and to be compatible with FATES-CNP.
Purpose and description of changes
----------------------------------
These changes are only relegated to the API with FATES. Boundary conditions were prepared within
FATES to enable proper use of the methane model. Further, some minor changes were made to the FATES
interface code (clmfates_interfaceMod.F90) allowing compatibility with FATES tag sci.1.46.0_api.16.0.0
(https://github.com/NGEET/fates/releases/tag/sci.1.46.0_api.16.0.0). Most of these changes have to do
with how the FATES history interface is instantiated.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
No bugs fixed or introduced.
Notes of particular relevance for users
---------------------------------------
This tag brings compatibility with FATES tag: sci.1.46.0_api.16.0.0
CTSM-FATES users should also be aware that the FATES parameter file has been
updated. An example is found here:
https://github.com/NGEET/fates/blob/sci.1.46.0_api.16.0.0/parameter_files/fates_params_default.cdl
Notes of particular relevance for developers:
---------------------------------------------
A new test was added to check FATES-CH4 coupling:
ERS_Ld9.f10_f10_mg37.I2000Clm50FatesCru.cheyenne_intel.clm-FatesColdDefCH4
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (60 test different because of fates paramfile)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
fates tests:
cheyenne ---- OK
Answer changes
--------------
Changes answers relative to baseline:
All FATES tests will have different answers with tag: sci.1.46.0_api.16.0.0
This is mostly due to the passing of thaw-depth into more of the rooting depth algorithm.
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): fates
fates to sci.1.46.0_api.16.0.0
Pull Requests that document the changes (include PR ids): #1371
(https://github.com/ESCOMP/ctsm/pull)
#1371 -- FATES parteh scale fixes api (ie nutrient + methane coupling)
===============================================================
===============================================================
Tag name: ctsm5.1.dev040
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Thu May 20 08:28:20 MDT 2021
One-line Summary: Replace masked with "nomask" SRC files for use with mkmapdata and mksurfdata_map
Purpose and description of changes
----------------------------------
1) Collapse multiple source (SRC) files of a given resolution to a
single "nomask" SRC file per SRC resolution. The mask variable is now
set to 1 everywhere in all SRC files and mkmapdata.sh generates
a single map_ file (aka weight file) per destination (DST) resolution.
2) The executable mksurfdata_map now applies the SRC mask found in the
raw datasets, since the map_ files do not contain this information.
These changes simplify the introduction of new surface variables with
raw data in one of our existing SRC resolutions because we need not
create new SRC files for such variables. To introduce new surface
variables with raw data in new resolutions, the corresponding new SRC
files need mask equal to 1 everywhere.
NOTE: Answer-changing modifications have been made in mksurfdata_map,
but we have NOT recreated the out-of-the-box surface datasets. This
means that, if you create new surface datasets, you should expect small
answer changes relative to the current out-of-the-box surface datasets.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #286
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
These changes are transparent to users making surface datasets using
default SRC resolutions. Users using non-default SRC resolutions or
users introducing new surface variables with raw data in non-default
SRC resolutions, will create new SRC file(s) with mask always set to 1
everywhere.
Note, though, that the out-of-the-box surface datasets now differ
slightly from what you would produce by running mksurfdata_map. So
answer changes should be expected relative to the out-of-the-box
surface datasets if you create a new surface dataset.
Changes made to namelist defaults (e.g., changed parameter values):
Changed the names of most default SRC files and default map_ files to
the names of the "nomask" versions of these files.
Changes to the datasets (e.g., parameter, surface or initial files):
Replaced SRC files and map_ files with "nomask" versions. Most SRC
resolutions already had nomask files available, so I created such files
for 0.25x0.25, 0.9x1.25, 3x3min, 5x5min, and 0.125x0.125. I changed all
of the map_ files except
map_1km-merge-10min_HYDRO1K-merge-nomask SRC resolution.
I ran the rimport command as follows:
./rimport -list /glade/work/slevis/git/mksurfdata_maps_wo_src_masks/PR_823_new_file_list
Substantial timing or memory changes:
- We end up with fewer SRC and map_ files by replacing multiple custom
grids per SRC resolution with one nomask grid. I list here resolutions
that had multiple custom grids per resolution before the switch to
nomask:
0.5x0.5: AVHRR, MODIS, and 360x720cru_cruncep
3x3min: GLOBE-Gardner-mergeGIS, GLOBE-Gardner, LandScan2004, MODIS-wCsp
5x5min: IGBP-GSDP, ISRIC-WISE, ORNL
10x10min_IGBPmergeICESatGIS
UNSTRUCT info shown for comparison. NOT switching to UNSTRUCT files at
this time.
- The nomask map_ files are larger now. E.g.:
2754246572 map_3x3min_GLOBE-Gardner_to_0.9x1.25_nomask_aave_da_c191101.nc MASKED SCRIP
3051641404 map_3x3min_nomask_to_0.9x1.25_nomask_aave_da_c191109.nc NOMASK SCRIP
2974797264 map_3x3min_nomask_to_0.9x1.25_nomask_aave_da_c191115.nc NOMASK UNSTRUCT
- Although the nomask SCRIP cases shown below are slower because each
individual mapping file takes longer to create, the total time to
generate mapping files is reduced, possibly significantly, due to the
need for fewer mapping files in total. Note the increase in time
savings from the 0.5x0.5 to the 10x10min resolution, which suggests
even greater time savings for the 3x3min and 5x5min that went from a
total of 7 to 2 map_ files. Sample timing data:
mkmapdata 0.5x0.5 to 0.9x1.25 MASKED (2 grids) 78.0u 1.30s 1:20.08 99.1%
mkmapdata 0.5x0.5 to 0.9x1.25 NOMASK SCRIP 51.199u 0.85s 0:52.61 98.8%
mkmapdata 0.5x0.5 to 0.9x1.25 NOMASK UNSTRUC 38.316u 0.69s 0:39.51 98.7%
mkmapdata 0.25x0.25 to 0.9x1.25 MASKED SCRI 129.288u 1.46s 2:11.38 99.5%
mkmapdata 0.25x0.25 to 0.9x1.25 NOMASK SCRI 168.443u 1.69s 2:50.77 99.6%
mkmapdata 0.25x0.25 to 0.9x1.25 NOMASK UNST 110.875u 1.46s 1:52.80 99.5%
mkmapdata 0.125x0.125 to 0.9x1.25 MASKED SC 489.651u 3.67s 8:14.58 99.7%
mkmapdata 0.125x0.125 to 0.9x1.25 NOMASK SC 646.372u 5.07s 10:54 99.5%
mkmapdata 0.125x0.125 to 0.9x1.25 NOMASK UN 388.842u 4.20s 6:33 99.7%
mkmapdata 10x10min to 0.9x1.25 MASKED (2 grids) 639.7u 4.8s 10:46 99.7%
mkmapdata 10x10min to 0.9x1.25 NOMASK SCRIP 380.3u 3.1s 6:24 99.7%
mkmapdata 10x10min to 0.9x1.25 NOMASK UNSTRUCT 264.2u 2.6s 4:27 99.6%
mksurfdata_map 0.9x1.25 MASKED SCRIP: 65.846u 18.204s 1:42.64 81.8%
mksurfdata_map 0.9x1.25 NOMASK SCRIP: 74.439u 18.502s 1:57.48 79.1%
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- The out-of-the-box surface datasets now differ slightly from what you
would produce by running mksurfdata_map. So answer changes should be
expected relative to the out-of-the-box surface datasets if you create
a new surface dataset.
- We were not able to run the check_maps tool on the new mapping files:
this generated a seg fault (see
https://github.com/ESCOMP/CTSM/pull/823#issuecomment-846248591)
Testing summary: tools
----------------
[... Remove before making master tag. Available test levels:
a) regular (must be run before handing off a tag to SEs and must be run
before committing a tag)
b) build_namelist (if namelists and/or build_system changed))
c) tools (only if tools are modified and no CTSM source is modified)
d) short (for use during development and in rare cases where only a small
change with known behavior is added ... eg. a minor bug fix)
e) doc (no source testing required)
... ]
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne -
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
izumi - OK
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ----
izumi -------
any other testing:
1) Ran in /glade/scratch/slevis/temp_work/surfdata
make -f /glade/work/slevis/git/mksurfdata_maps_wo_src_masks/tools/mksurfdata_map/Makefile.data_slevis all
to generate all surface datasets. In early 2020 this triggered an error:
gridmap_check ERROR from mklakwat: mapping areas not conserved
global sum output field = 0.1513392154E+09
global sum input field = 0.1513334049E+09
which goes away with Bob Oehmke's new ESMF build.
2) qcmd -- ./create_test ERP_D_Ld3_P36x2.f10_f10_mg37.I2000Clm50BgcCru.cheyenne_intel.clm-default -c /glade/p/cgd/tss/ctsm_baselines/ctsm5.1.dev038
PASSES w default fsurdat = '/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/release-clm5.0.18/surfdata_10x15_hist_16pfts_Irrig_CMIP6_simyr2000_c190214.nc'
gives differences from baseline as expected w new fsurdat that differs
more than roundoff from the default one = /glade/p/cesm/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_10x15_hist_16pfts_Irrig_CMIP6_simyr2000_c210503.nc
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but for now the model results
are the same: there will be changes to surface datasets when they are
remade, but so far we are still pointing to unchanged out-of-the-box
surface datasets.
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change: larger than roundoff/same climate
For now, model results are unchanged because we are still using the old
surface datasets. However, this tag changes answers in any new surface
datasets that are created.
I performed testing at the 0.9x1.25 degree resolution.
Code changes were tested by comparing baseline files (a)
surfdata_0.9x1.25_hist_78pfts_CMIP6_simyr2000_c191101.nc
surfdata_0.9x1.25_hist_78pfts_CMIP6_simyr2000_c191101.log
generated by running baseline code pointing to masked map_ files
to (b)
surfdata_0.9x1.25_new_hist_78pfts_CMIP6_simyr2000_c191101.nc
surfdata_0.9x1.25_new_hist_78pfts_CMIP6_simyr2000_c191101.log
generated by running the new code still pointing to masked map_ files
and then comparing to (c)
surfdata_0.9x1.25_nomask_78pfts_CMIP6_simyr2000_c191101.nc
surfdata_0.9x1.25_nomask_78pfts_CMIP6_simyr2000_c191101.log
generated by running the new code pointing to nomask map_ files.
We set an expectation of max abs relative differences of less than
roughly 1e-13. I got an actual max abs relative difference of 7e-12 in
PCT_NAT_PFT for (a) vs (b) and (a) vs (c). I refer to these here as
small diffs.
All other variables gave smaller diffs except the four VIC variables
binfil, Ws, Ds, Dsmax between (b) and (c). These diffs appear in 5 grid
cells (along two meridians that got shifted in longitude by less than
1e-13 degrees) that vic considers land in the baseline and
ocean in the nomask case. Vic provides valid generic data for ocean
grid cells and, therefore, also where the discrepancies occur. This
means that if the land model treats these grid cells as land, the
model will work.
I had to generate new masked map_ files for (a) and (b) because
changes in ESMF codes over the years were leading to large differences
between all three (a) vs (b) vs (c). Generating new masked map_ files
brought the diffs back to small.
For the 3x3min and 5x5min SRC resolutions, I made six temporary
nomask SRC files, one per surface variable pointing to 3x3min
map_ files and one per surface variable pointing to 5x5min map_ files.
I did this to get small differences relative to the baseline. I created
the temporary files by making copies of the correspoding masked SRC
files and changing mask to 1 everywhere. The temporary files had diffs
less than roughly 1e-5 from generic nomask files generated by running
mkscripgrid.ncl for 3x3min and 5x5min. Ultimately we are replacing the
temporary files with the generic nomask files, which leads to larger
diffs in the surface datasets.
This testing occurred in late 2019 or early 2020. To confirm the
results I generated a new set of map_ files for 0.9x1.25 and then
created new fsurdat files with the baseline code and with the branch.
Only PCT_NAT_PFT triggers the error check for max abs relative
diff > 1e-13 with a max abs relative diff = 9e-12.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/823
===============================================================
===============================================================
Tag name: ctsm5.1.dev039
Originator(s): jedwards4b/erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Tue May 18 14:36:25 MDT 2021
One-line Summary: Add NEON sites
Purpose and description of changes
----------------------------------
Add NEON sites. Add cime/cdeps support and capability to run NEON tower sites.
This also brings in Negin's first version of the subset_data.py script to create
datasets for single-point and regional cases. And a version of it was run to
create the NEON surface datasets.
To setup a NEON site do the following
cd cime/scripts
./create_newcase --case myNEONtest --res CLM_USRDAT --compset IHist1PtClm51Bgc \
--user-mods-dir NEON/NIWO --driver nuopc --run-unsupported
(There's also a I1PtClm51Bgc compset that can be used for fixed conditions)
Note, also that several externals were updated to the version in cesm2_3_alpha03a. This means that
answers change when CISM is turned on. Some of the grids for compsets tested were updated to
use the new grid name "gris" in place of the older "gland".
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
#1368 -- Longitude isn't correct for NEON singlept fsurdat files.
#1353 -- Modify NEON surface data
Known bugs introduced in this tag (include issue #):
#1364 -- Change NEON surface datasets to 79PFT files to facilitate the crop sites
#1368 -- Additional modifications to subset_data.py
#1363 -- 2018 and 2018-PD compsets for NEON single point ty
#1354 -- Batch run single point sites, including NEON
#1355 -- Python scripts for NEON analyses
cime/#3970 -- cdeps library fails to build on izumi: nag, intel, and gnu compilers
Known bugs found since the previous tag (include issue #):
#1351 -- HR fluxes don't include CWD
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
Data coming from NEON -- may be updated after it's uploaded. As such you may need to delete
previous downloaded data in order to download the latest.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): Yes add NEONSITE, two new compsets
Add new compset aliases: I1PtClm51Bgc, and IHist1PtClm51Bgc
NEONSITE added to the env_run.xml for a case. Only used for a NEON site with the CLM_USRDAT resolution
Changes to the datasets (e.g., parameter, surface or initial files):
Surface datasets for NEON added to the NEON user-mod-directory
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
The two USUMB test-mods duplicate some settings and could have a parent version to inherit from
Changes to tests or testing:
Change _gl4 tests to _gris4
Single point tower site tests use the CLM1PTStartDate test-mod
Add a NEON test for the NIWO site
USUMB testmod needs a MCT and NUOPC version
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (141 new tests for NEON sites)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne -- PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes (but only when CISM is on)
Summarize any changes to answers, i.e.,
- what code configurations: Only with CISM on (compsets that end with G)
- what platforms/compilers: All
- nature of change: similar climate
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cime, cism, cmeps, cdeps
cime to cime5.8.47
cism to cismwrap_2_1_83
cmeps to cmeps0.13.2
cdeps to cdeps0.12.4
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1278 -- Neon compsets
#1360 -- Singlept and regional subsetting script (initial version)
===============================================================
===============================================================
Tag name: ctsm5.1.dev038
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Tue Apr 27 23:51:04 MDT 2021
One-line Summary: Bring in minor changes from the cesm2.2.0 release tag
Purpose and description of changes
----------------------------------
Bring in the changes that went in the cesm2.2.0 release tag.
Get the CLM offline tools working as well as the tools testing.
Remove the finidat file for FATES as it was shown to be problematic
in the release testing.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations? No
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1134 mkmapdata.sh is not working
Fixes #1128 missing compset
Known bugs found since the previous tag (include issue #):
#1358 -- C isotope fields can have garbage values starting in ctsm5.1.dev008
#1357 -- No output values in large lake gridcells in 0.5° resolution (hcru_hcru)
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Add a new compset alias: I2000Clm50FatesCruRsGs
Changes to the datasets (e.g., parameter, surface or initial files):
Remove finidat file setting for FATES becaues it sometimes caused problems.
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
A couple of the tools tests were changed
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS
PTCLM testing (tools/shared/PTCLM/test): (if cime or cime_config are changed)
(PTCLM is being deprecated, so we only expect this to be done on occasion)
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne -- PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
Ran mkmapdata.sh for 1-deg maps
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No bit-for-bit
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): PTCLM
PTCLM to PTCLM2_20200902
Pull Requests that document the changes (include PR ids): #1179
(https://github.com/ESCOMP/ctsm/pull)
#1179 -- Bring in changes from release-cesm2.2.01 to main-development
===============================================================
===============================================================
Tag name: ctsm5.1.dev037
Originator(s): slevis (Samuel Levis,SLevis Consulting,303-665-1310)
Date: Fri Apr 23 10:06:32 MDT 2021
One-line Summary: Correct vertical interpolation in init_interp when soil thicknesses change
Purpose and description of changes
----------------------------------
To correct how init_interp handles soil variables with units of kg/m2 or mm
or mm/s (generally speaking so-called extensive properties), we now add DZSOI
and a scale_by_thickness flag to restart files. In init_interp we use these to
scale the vertical interpolation by soil layer thickness.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #): #1298
Notes of particular relevance for users
---------------------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for users (e.g., need to interpolate initial conditions):
For H2OSOI_LIQ, H2OSOI_ICE, SMP, and HK, from now on init_interp interpolates
from the soil profile in finidat to the soil profile in the model by
scaling these variables by dzsoi (layer thickness). This makes the vertical
interpolation of these variables more accurate. Users need not do anything.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
Changes to the datasets (e.g., parameter, surface or initial files):
From now on newly generated finidat files will contain the scale_by_thickness
flag and DZSOI for use by the new code. For backwards compatibility, the code
handles preexisting finidat files by deriving dzsoi from the node depths for
the four variables listed above.
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Changes to tests or testing:
Added two unit tests to confirm that the modified vertical interpolation
behaves as expected.
Testing summary:
----------------
[Remove any lines that don't apply.]
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below):
Unit tests PASS
Answer changes
--------------
Changes answers relative to baseline: Yes
[ If a tag changes answers relative to baseline comparison the
following should be filled in (otherwise remove this section).
And always remove these three lines and parts that don't apply. ]
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change: larger than roundoff/same climate
scale_by_thickness=.true. for the four variables that require it (listed
above). This causes answers to change for all tests in the test suite that
interpolate from the soil profile found in finidat to a differing soil profile
used by the model.
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1301
===============================================================
===============================================================
Tag name: ctsm5.1.dev036
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Wed Apr 21 14:50:19 MDT 2021
One-line Summary: FATES tag update and snow occlusion of LAI fix
Purpose and description of changes
----------------------------------
This tag updates the way in which fates is called during restarts to appropriately
handle the fates-side snow occlusion code. Additionally, this update points to the
most recent fates tag, which includes a number of fates science updates (including
the snow occlusion fix) and fates-side bug fixes (see below for list of issues
addressed).
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
#1293 -- Update FATES on CTSM main-dev
NGEET/fates#359 -- ground snow is not occluding lai profile
NGEET/fates#709 -- Error Check issue in EDPatchDynamicsMod.F90: spawn_patches() causes problem with logging module
NGEET/fates#725 -- declaration of the prt pointer
NGEET/fates#713 -- Changes associated with patch fraction burnt
NGEET/fates#473 -- Update FIRE_AREA long name units
NGEET/fates#575 -- Clean up NaN and zeroing of fire variables in Patch and Cohort Dynamics
Known bugs found since the previous tag (include issue #):
#1338 -- Floating point exception in fates gnu compiler regression test with ctsm5.1.dev027
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
ok: All non-fates testmods PASS b4b. Fates testmods have DIFF as expected due to update of fates science tag.
fates tests:
cheyenne ---- ok
ok: NLCOMP failures due to clm50_param file update relative to ctsm tag used on the last fates baseline.
fates baseline: fates-sci.1.44.1_api.14.2.0-ctsm5.1.dev033-C30ca1849-F6065b9a2
Answer changes
--------------
Changes answers relative to baseline: Yes, only for fates
Summarize any changes to answers, i.e.,
- what code configurations: all fates
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate): larger than roundoff
If bitwise differences were observed, how did you show they were no worse
than roundoff?
- fates-side review of expected differences for all PRs that changed answers (2 science updates
and 2 bug fixes)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates: sci.1.43.2_api.14.2.0 -> sci.1.45.0_api.15.0.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
- https://github.com/ESCOMP/CTSM/pull/1324
- https://github.com/NGEET/fates/pull/734
===============================================================
===============================================================
Tag name: ctsm5.1.dev035
Originator(s): sacks (Bill Sacks)
Date: Tue Apr 20 10:45:25 MDT 2021
One-line Summary: Misc bfb enhancements and fixes
Purpose and description of changes
----------------------------------
(1) If CISM is running over Antarctica, use virtual glacier columns over
Antarctica
(2) Remove "mec" from some glacier/ice variable names (it is misleading
to have "mec" in variable names when the ice landunit can actually
have multiple columns *or* a single column) (ESCOMP/CTSM#1294)
(3) Add history file metadata on each variable's l2g_scale_type (adds a
landunit_mask attribute) (ESCOMP/CTSM#1343)
(4) Use python3 in more shebang lines - needed to run python unit tests
on cheyenne
(5) New compset naming for IG compsets (ESCOMP/CTSM#1289)
(6) Remove calculation of fun_cost_fix that is overwritten
(ESCOMP/CTSM#1115)
(7) Bypass grid-level water mass check when fates hydro is active
(ESCOMP/CTSM#1334)
(8) Remove some dead code (ESCOMP/CTSM#1333)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1115 (overwrite fun_cost_fix)
- Resolves ESCOMP/CTSM#1289 (After updating to cism2_1_76 or later,
change compsets involving CISM)
- Resolves ESCOMP/CTSM#1294 (Replace istice_mec with istice)
- Resolves ESCOMP/CTSM#1333 (Remove some dead code)
- Resolves ESCOMP/CTSM#1343 (Add landunit_mask (formerly l2g_scale_type)
metadata to history file)
Notes of particular relevance for users
---------------------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- Renamed maxpatch_glcmec to maxpatch_glc
Substantial timing or memory changes:
- Increase in land initialization time in the PFS test
(PFS_Ld20.f09_g17.I2000Clm50BgcCrop.cheyenne_intel); this is probably
due to machine variability because I don't think any of the changes in
this tag would have any significant impact on model initialization
time.
Testing summary:
----------------
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - ok (tests pass, namelists differ as expected)
python testing (if python code has changed; see instructions in python/README.md; document testing done):
(any machine) - pass (ran 'make test' on cheyenne and 'make all' on my Mac)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- ok
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
Pull Requests that document the changes (include PR ids):
- One small piece is documented in https://github.com/ESCOMP/CTSM/pull/1334
===============================================================
===============================================================
Tag name: ctsm5.1.dev034
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Mon Apr 19 16:02:29 MDT 2021
One-line Summary: Bring in Arctic changes to LUNA from Leah Birch
Purpose and description of changes
----------------------------------
This is @lmbirch89 branch from #947 with the exception that Kattge is used in place of
Leuning in LUNA. Also the startup initial values in the luna bug fix branch #961 is
used in place of the updated values by @lmbirch89. The LUNA bug fixes have already come
in, so these are some changes to improve arctic plants.
We have addressed the issues in phenology and photosynthesis in the high latitudes.
Development was focused on PFT specific differences and we used observations to inform
model development. GPP is improved now such that the tundra is realistically less
productive than the boreal forest.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #807 -- Revisit PFT optical properties per Majasalmi and Bright (2019)
Fixes #1307 -- Turn on reseed_dead_plants when you start AD spinup mode
Known bugs introduced in this tag (include issue #):
#1346 -- Use of floating point flag onset_thresh is confusing in CNPhenologyMod
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist items: onset_thresh_depends_on_veg and min_crtical_dayl_depends_on_lat
Changes made to namelist defaults (e.g., changed parameter values):
reseed_dead_plants turned on when AD spinup mode turned on
onset_thresh_depends_on_veg and min_crtical_dayl_depends_on_lat turned on for clm5_1 physics
Changes to the datasets (e.g., parameter, surface or initial files):
New parameter file (same as start used in PPE work) also has additional fields on it
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
As noted in #1346 some of the logic in CNPhenology in CNSeasonDecidPhenology is a bit confusing.
The soil layer used was put in CNSharedParameters and needed it's own subroutine to prevent circular dependencies.
There are new accumulator variables added that area always turned on even when not needed. Doing this
in a reasonable manner (without having lots of CNPhenology logic spilled into base types) would require
a refactoring of a better way to figure this out.
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: Yes for clm5_1 physics
Summarize any changes to answers, i.e.,
- what code configurations: clm5_1
- what platforms/compilers: all
- nature of change: new climate
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
oleson -- clm50_ctsm10d089_2deg_GSWP3V1_lmbirch_wkattge_jmaxb1-0.17_slatopA_1850AD
URL for LMWG diagnostics output used to validate new climate:
http://webext.cgd.ucar.edu/I1850/clm50_ctsm10d089_2deg_GSWP3V1_lmbirch_wkattge_jmaxb1-0.17_slatopA_1850AD/
Other details
-------------
Pull Requests that document the changes (include PR ids): #990
(https://github.com/ESCOMP/ctsm/pull)
#990 -- Arctic changes branch with Kattge in place of Leuning in LUNA
===============================================================
===============================================================
Tag name: ctsm5.1.dev033
Originator(s): mvertens (Mariana Vertenstein), sacks (Bill Sacks)
Date: Sat Apr 10 16:42:06 MDT 2021
One-line Summary: Remove unnecessary settings of nextsw_cday
Purpose and description of changes
----------------------------------
Remove setting of nextsw_cday in initialization: this hasn't been needed
ever since we stopped calculating albedos in initialization.
Also remove nextsw_cday from clm_time_manager: this was being set but
was never referenced from here: instead, nextsw_cday was being passed as
an argument to clm_drv.
Also, updates cime to a branch tag where I have fixed the --retry option
to create_test.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
CIME Issues fixed (include issue #):
- ESMCI/cime#3912 (create_test --retry fails if the test is doing
baseline generation)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: NO
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cime: cime5.8.42 -> branch_tags/cime5.8.42_a01
Pull Requests that document the changes (include PR ids):
- Second part of https://github.com/ESCOMP/CTSM/pull/1330
===============================================================
===============================================================
Tag name: ctsm5.1.dev032
Originator(s): mvertens (Mariana Vertenstein), sacks (Bill Sacks)
Date: Sat Apr 10 09:47:25 MDT 2021
One-line Summary: Fix bugs in co2 from atmosphere
Purpose and description of changes
----------------------------------
ctsm5.1.dev002 introduced bugs when receiving co2 from the atmosphere,
both for mct and nuopc:
- For mct, with spatially-varying co2 from atmosphere, all grid cells on
a given processor were given the co2 value from the last grid cell on
that processor
- For nuopc, co2 from atmosphere was ignored and overridden with a
constant co2 value
This tag fixes both of those bugs.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Bugs fixed or introduced
------------------------
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1327 (When using co2 from atmosphere with mct, it
looks like values are taken just from the last gridcell on each proc)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: Cases where CTSM receives CO2 from atmosphere
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
potentially new climate
Answer changes due to fixing these issues:
- For mct, with spatially-varying co2 from atmosphere, all grid cells on
a given processor were given the co2 value from the last grid cell on
that processor
- For nuopc, co2 from atmosphere was ignored and overridden with a
constant co2 value
In the test suite, this leads to changes in:
- ERP_D_Ld10_P36x2_Vnuopc.f10_f10_mg37.IHistClm51BgcCrop.cheyenne_intel.clm-ciso_decStart
- ERS_Ly3_P72x2_Vnuopc.f10_f10_mg37.IHistClm50BgcCropG.cheyenne_intel.clm-cropMonthOutput
- SMS_D_Ln9_P480x1_Vnuopc.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline
But more widespread changes are expected - including for mct - if
coupled runs can generate spatially-varying co2 from atm
Other details
-------------
Pull Requests that document the changes (include PR ids):
- Merges the first part of the changes in
https://github.com/ESCOMP/CTSM/pull/1330
===============================================================
===============================================================
Tag name: ctsm5.1.dev031
Originator(s): jedwards (Jim Edwards), sacks (Bill Sacks)
Date: Sat Apr 10 07:33:49 MDT 2021
One-line Summary: Update externals and fixes for nuopc threading
Purpose and description of changes
----------------------------------
(1) Some fixes for threading with the nuopc/cmeps driver. (However,
threading with nuopc/cmeps still doesn't work completely: see
https://github.com/ESCOMP/CTSM/issues/1331.)
(2) Updates externals to versions needed for these nuopc threading changes
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Known bugs introduced in this tag (include issue #):
- https://github.com/ESCOMP/CTSM/issues/1331 Some runs with NUOPC driver
with multiple threads can hang
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
- Temporarily changed
SMS_D_Ln9_P480x3_Vnuopc.f19_g17.IHistClm50Sp.cheyenne_intel.clm-waccmx_offline
to use a 480x1 layout so that it will pass reliably (see
https://github.com/ESCOMP/CTSM/issues/1331)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES (but very limited)
Summarize any changes to answers, i.e.,
- what code configurations: NUOPC driver with CISM
- what platforms/compilers: cheyenne_intel; maybe others
- nature of change (roundoff; larger than roundoff/same climate; new climate): roundoff
For an unknown reason, the new externals lead to small differences
in global sums in the CMEPS driver/mediator. For what we assume is
the same reason, lnd -> glc fields can change by roundoff (probably
due to the global renormalization).
The only test in the aux_clm test suite where this shows up is
ERS_Ly3_P72x2_Vnuopc.f10_f10_mg37.IHistClm50BgcCropG.cheyenne_intel.clm-cropMonthOutput
If bitwise differences were observed, how did you show they were no worse
than roundoff?
Inspection of cpl hist files
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cism: cism2_1_75 -> cism_1_78
- rtm: rtm1_0_75 -> rtm1_0_76
- mosart: mosart1_0_41 -> mosart1_0_42
- cime: cime5.8.39 -> cime5.8.42
- cmeps: v0.5.0 -> v0.9.0
- cdeps: v0.5.0 -> v0.6.0
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1319
===============================================================
===============================================================
Tag name: ctsm5.1.dev030
Originator(s): mvertens / erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Mar 31 16:46:04 MDT 2021
One-line Summary: New single column functionality for the NUOPC cap
Purpose and description of changes
----------------------------------
Implemented new nuopc/cmeps single column functionality.
In config/cesm/config_files.xml - single point domains are only used
for mct/cpl7. For cmeps single point meshes are now generated on the
fly and component domains files are no longer needed.
env_run.xml variables PTS_LAT, PTS_LON and PTS_DOMAINFILE are used
to determine if there is a single point or single column run.
If PTS_LAT and PTS_LON are not -999 and PTS_DOMAINFILE is UNSET,
then you have a single point run and the exact values of PTS_LAT
and PTS_LON are used. If PTS_LAT and PTS_LON are not -999 and
PTS_DOMAINFILE is not UNSET, then then the cmeps driver will recognize the nearest neighbor
values of PTS_LAT and PTS_LON in PTS_DOMAINFILE as the single column lat and lon to use.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1312 -- Add NUOPC tests
Fixes #1302 -- Setup to allow landuse.timeseries file for high resolution cases for 2000-2025
Fixes #1183 -- mkmapdata needs input option for large file support, current defaults unsuitable for high res grids.
Known bugs introduced in this tag (include issue #):
Known bugs found since the previous tag (include issue #):
#1317 -- MPI timeout for some izumi_nag tests reading in datm forcing files in NUOPC cap
#1314 -- Send unset value for scol_lat/lon from driver
Notes of particular relevance for users
---------------------------------------
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
[Remove any lines that don't apply. Remove entire section if nothing applies.]
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Nine step tests changed so that they have ROF run at same frequency as ATM (like the similar CAM tests)
as these will fail with NUOPC since it doesn't allow you to end not on an even time-step for all components.
One of these tests changed to a CAM type test from decStart
Changes to tests or testing: Add more NUOPC tests to test list
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS
tools-tests (test/tools) (if tools have been changed):
cheyenne - OK
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne -- FAIL
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
any other testing (give details below): Ran full izumi test list for nuopc driver (failed tests appear above)
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No
(List of fields change though)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): cime, CDEPS, CMEPS
cime to cime5.8.39
CDEPS to v0.5.0
CMEPS to v0.5.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1309 -- New single column functionality for NUOPC/CMEPS
#1310 -- run_sys_tests: add --retry option on izumi
===============================================================
===============================================================
Tag name: ctsm5.1.dev029
Originator(s): mvertens (Mariana Vertenstein), sacks (Bill Sacks)
Date: Thu Mar 18 21:21:21 MDT 2021
One-line Summary: Rework domain initialization for nuopc
Purpose and description of changes
----------------------------------
Total rework of land domain initialization - no longer need domain files
to be created with NUOPC cap.
Also, significant performance improvements with the NUOPC cap.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for developers:
---------------------------------------------
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- We still need to figure out how to apply this to LILAC: for now, LILAC
is still using the old method (as is MCT): reading domain information
from fatmlndfrac
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- PASS
Answer changes
--------------
Changes answers relative to baseline: YES, but just for NUOPC and
limited changes for LILAC
Summarize any changes to answers, i.e.,
- what code configurations: NUOPC, and limited changes for LILAC
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
roundoff
For nuopc: changes in area (relatively large differences in the
f10 test in the test suite, but Mariana saw only very small
changes in an f09 case), landfrac; these influence l2r fields,
which in turn influence TWS and methane fields.
For lilac: just changes in area
If bitwise differences were observed, how did you show they were no worse
than roundoff? Examination of cprnc diffs.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- rtm: rtm1_0_74 -> rtm1_0_75
- mosart: branch_tag/pio2.n01_mosart1_0_38 -> mosart1_0_41
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1258
- https://github.com/ESCOMP/CTSM/pull/1236 (closed and replaced by 1258)
===============================================================
===============================================================
Tag name: ctsm5.1.dev028
Originator(s): swensosc (Sean Swenson)
Date: Wed Mar 17 20:08:51 MDT 2021
One-line Summary: Change limitation of top layer evaporation/sublimation
Purpose and description of changes
----------------------------------
Sublimation from top soil layer and evaporation/sublimation from top
snow layer needs to be limited to ensure moisture states do not become
negative. The original formulation did not always work, so we added a
new limitation to SoilFluxesMod.
Also removes a limitation in SoilHydrologyMod that seemed not to
conserve energy and should no longer be necessary with the reworked
limitation in SoilFluxesMod.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1253 (h2osoi_ice can go significantly negative)
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- The old flux limitation in SoilHydrologyMod has been replaced by a
truncation of roundoff-level values followed by a check that the final
state is non-negative. Although this check hasn't been triggered in
any of our testing, it's possible that we'll run into situations where
we need to relax the tolerance for this check.
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: all
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Not investigated carefully, but expected to be larger than
roundoff/same climate
If bitwise differences were observed, how did you show they were no worse
than roundoff? N/A
Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1282
===============================================================
===============================================================
Tag name: ctsm5.1.dev027
Originator(s): sacks (Bill Sacks)
Date: Mon Mar 15 14:05:20 MDT 2021
One-line Summary: Update cime and other externals; includes switch to pio2
Purpose and description of changes
----------------------------------
Updates cime and other externals to version in cesm2_3_alpha02b (with
some minor changes to cime on top of that). This includes substantial
changes to cime, including switching to PIO2 rather than PIO1.
Also:
- For LILAC, changes default pio_rearranger now that we're using PIO2 by
default
- In run_sys_tests, adds '-k oed' to qsub command on cheyenne; this is
useful now that qpeek is disabled on cheyenne (this puts the job's
stdout and stderr files directly in their final location from the
beginning, rather than keeping them in some temporary location on the
compute node until the job completes)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1175 (Once there is a cime tag with pio2 as the
default, update to it)
- Resolves ESCOMP/CTSM#1194 (Once we switch to pio2 by default, change
the default rearranger used in LILAC)
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- PIO2 is now the default. This has been tested extensively, but let us
know if you run into any I/O related issues. Also, from testing we've
done, I/O performance looks better than with PIO1 in many cases, but
also let us know if you see a substantial degradation in I/O
performance.
Changes made to namelist defaults (e.g., changed parameter values):
- Some I/O-related defaults change with the use of PIO2 rather than PIO1
Substantial timing or memory changes:
- Various changes due to the change to PIO2, some of them large. For the
most part, timing improves with PIO2, particularly for production
resolutions.
- The PFS test and many others show a substantial improvement in timing.
This is especially noticeable in initialization time. For example, the
initialization time of
PFS_Ld20.f09_g17.I2000Clm50BgcCrop.cheyenne_intel dropped from 111 sec
to 34 sec. (These tests were run a couple of weeks apart, before and
after a cheyenne upgrade, so there may be some machine variability in
these numbers, but I saw a big improvement a few months ago with a
more objective comparison.)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- ok
izumi ------- pass
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but just for nuopc
Summarize any changes to answers, i.e.,
- what code configurations: Just with nuopc driver
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Not investigated
The only test that changes answers is
SMS_D_Ld5_Vnuopc.f10_f10_mg37.I2000Clm50BgcCrop.cheyenne_intel.clm-default
(There are NLCOMP failures in all tests, though, due to the update to pio2.)
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- CISM: cism2_1_69 -> cism2_1_75
- RTM: rtm1_0_73 -> rtm1_0_74
- MOSART: mosart1_0_38 -> branch_tag/pio2.n01_mosart1_0_38
- CIME: branch_tags/cime5.8.32_a02 -> branch_tags/cime5.8.37_a02
- CMEPS: 7654038 -> c4acaa8
- CDEPS: 45b7a85 -> 1f02a73
===============================================================
===============================================================
Tag name: ctsm5.1.dev026
Originator(s): sacks (Bill Sacks)
Date: Mon Mar 8 13:20:33 MST 2021
One-line Summary: Change f10 tests to use mg37 mask
Purpose and description of changes
----------------------------------
The musgs mask will soon be dropped, and has already been dropped for
nuopc
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing: All f10_f10_musgs tests changed to f10_f10_mg37
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- pass
izumi ------- pass
Answer changes
--------------
Changes answers relative to baseline: NO
BFAIL results for all f10 tests because the tests have changed, but
no answer changes
===============================================================
===============================================================
Tag name: ctsm5.1.dev025
Originator(s): sacks (Bill Sacks)
Date: Tue Feb 23 11:20:17 MST 2021
One-line Summary: Refactor ozone code, and misc. small fixes
Purpose and description of changes
----------------------------------
(1) Restructure ozone code (https://github.com/ESCOMP/CTSM/pull/1276) in
preparation for new ozone parameterization.
(2) Fix non-standard hexadecimal constant
(https://github.com/ESCOMP/CTSM/pull/1271), needed for gfortran 10
(3) Remove support for CISM1 (https://github.com/ESCOMP/CTSM/pull/1226)
(4) Move final WaterGridcellBalance call out to clm_driver (resolves
ESCOMP/CTSM#1286)
(5) Only add WA and QCHARGE history fields if use_aquifer_layer is true
(resolves ESCOMP/CTSM#1281)
(6) Consolidate conditional structures for VIC initialization (resolves
ESCOMP/CTSM#1287)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1286 (Move call to WaterGridcellBalance out to
the driver)
- Resolves ESCOMP/CTSM#1281 (Remove deprecated history output)
- Resolves ESCOMP/CTSM#1287 (Inconsistent logic for VIC initialization
can cause crash in debug mode)
- Resolves ESCOMP/CTSM#1270 (Hexadecimal constants use non-standard
Fortran)
Testing summary:
----------------
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Field lists differ for Clm50 / Clm51 / Ctsm50 tests; otherwise
bit-for-bit
Other details
-------------
Pull Requests that document the changes (include PR ids):
- https://github.com/ESCOMP/CTSM/pull/1276 (Restructure ozone code)
- https://github.com/ESCOMP/CTSM/pull/1271 (Fix non-standard hexadecimal constant)
- https://github.com/ESCOMP/CTSM/pull/1226 (Remove support for CISM1)
===============================================================
===============================================================
Tag name: ctsm5.1.dev024
Originator(s): slevis (Samuel Levis,303-665-1310)
Date: Sat Feb 20 14:42:33 MST 2021
One-line Summary: Grid cell-level error check for H2O
Purpose of changes
------------------
For more robust mass balance error checking, introduced
grid cell-level error check for H2O following the approach
of pull requests #984 and #1022
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #201
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
None
Changes made to namelist defaults (e.g., changed parameter values):
None
Changes to the datasets (e.g., parameter, surface or initial files):
None
Substantial timing or memory changes: [For timing changes, can check PFS test(s) in the test suite]
None
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
None
Changes to tests or testing:
None
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne -
tools-tests (test/tools):
cheyenne -
PTCLM testing (tools/shared/PTCLM/test):
cheyenne -
python testing (see instructions in python/README.md; document testing done):
(any machine) -
regular tests (aux_clm):
cheyenne ---- OK (comparisons to baseline fail as expected)
izumi ------- OK (comparisons to baseline fail as expected)
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change: ROUNDOFF
Explanation: Moving call BalanceCheck to after the call lnd2glc in
subroutine clm_drv causes a change in order of operations that leads to
roundoff change in ERRH2O. Confirmed by running ./summarize_cprnc_diffs
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
None
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/1228
===============================================================
===============================================================
Tag name: ctsm5.1.dev023
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Thu Feb 11 00:14:03 MST 2021
One-line Summary: Calculate leaf biomass for non-woody PFTS, and a few other small answer changes
Purpose and description of changes
----------------------------------
Replace hard code constant 0.25 for leaf mass per area with calculation based on parameter slatop (specific leaf area, top of
canopy). Also move num_iter into loop over patches; currently it sits outside a loop, so p index is incorrect.
Also do some small answer changes in terms of new parameter files, and some other existing issues that have mild answer changes.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1256 -- num_iter incorrect
Fixes #1268 -- Leaf biomass not updated for
Fixes #1262 -- pconv should be 1 for crops
Fixes #1261 -- Restarts fail in AD-spinup mode
Fixes #1255 -- mkmapdata crashes because of modules
Fixes #1252 -- New urban dataset for fsurdat fails when used with new model
Fixes #1184 -- slatop for generic crop
Fixes #932 --- Diagnostic variables are incorrect
Fixes #478 --- Bare soil g1 should be zero
Known bugs found since the previous tag (include issue #):
#1274 -- Dead PFTs in PPE2_BHSon simulations
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
Parameter files are updated
Changes to the datasets (e.g., parameter, surface or initial files):
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Leaf biomass should still be completely moved outside of CanopyFluxes
Changes to tests or testing: Add ADspinup test
Add an ADspinup restart test that would've detected one of the bugs fixed here
Testing summary: regular tools
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (348 tests are different because of parameter file update)
tools-tests (test/tools) (if tools have been changed):
cheyenne - PASS
python testing (if python code has changed; see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS
izumi ------- PASS
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes, clm51, clm50-non-crop, clm45 two diagnostics
Summarize any changes to answers, i.e.,
- what code configurations: clm5_1 for all, clm50 for non-crop (Sp and Bgc), clm4_5 two diagnostics
- what platforms/compilers: All
- nature of change: clm51--BGC climate, others similar climate
Other details
-------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1254 -- replace constant leaf mass per area (lma)
===============================================================
===============================================================
Tag name: ctsm5.1.dev022
Originator(s): glemieux (Gregory Lemieux,LBL/NGEET,510-486-5049)
Date: Fri Feb 5 00:03:28 MST 2021
One-line Summary: Merge fates_main_api into ctsm master
Purpose and description of changes
----------------------------------
This brings fates_main_api into and up-to-date with ctsm master.
At the point of merge, fates_main_api was parallel with ctsm5.1.dev020,
only one tag behind ctsm master's head.
The purpose of this merge is to make all future updates to fates
on the ctsm master branch instead of on the fates_main_api branch.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1128 -- missing compset for FATES tests
Fixes #1002 -- allow transient land-use files when FATES is on?
Some work was done on #1272 -- namelist refactor for FATES
Known bugs introduced in this tag (include issue #):
#1265 -- Diversifying fates testmods included in `aux_clm` test suite
#1266 - Add test for successful_ignitions mode for FATES-SPITFIRE
Known bugs found since the previous tag (include issue #):
#1269 -- GSWP3V1 atmospheric forcing for 2011-2014 is "bad" over Antarctica
Notes of particular relevance for users
---------------------------------------
Changes made to namelist defaults (e.g., changed parameter values):
- fates_spitfire_mode updated with multiple modes that use external datasets
- use_fates_cohort_age_tracking added to enable size and age dependent mortality
- fates_parteh_mode option 2 added for fates CNP mode
Changes to the datasets (e.g., parameter, surface or initial files):
fates_paramfile updated to fates_params_api.14.0.0_12pft_c200921.nc
Substantial timing or memory changes:
Only the fates testmod FatesAllVars failed the MEMCOMP test due to the increase in the number of variables included
Notes of particular relevance for developers:
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
There are a couple of issues we plan to address later (#1265, and #1272)
Note also that NAG compiler production tests started failing because of a compiler error
Since, we only care about NAG for DEBUG testing we removed those tests. Hopefully, a compiler
update will allow that to work in the future.
Changes to tests or testing:
- Added FatesPRT2 testmod test which activates fates CNP mode
- Added FatesReducedComplexFixedBiogeo testmod which activates fates fixed biogeography mode
- Added FatesSizeAgeMort testmod which activates tracking of size and age dependent mortality in fates
- Added Fates_nat_and_anthro_ignitions testmod to activate use of external lightning and population datasets
- Non-debug mode nag tests replaced in izumi test list with debug versions due to internal compiler error.
Testing summary: regular
----------------
[PASS means all tests PASS; OK means tests PASS other than expected fails.]
build-namelist tests (if CLMBuildNamelist.pm has changed):
cheyenne - PASS (61 namelists are different because of fates changes)
regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):
cheyenne ---- PASS (fates testmods DIFFs are expected)
izumi ------- OK
ok: All non-fates testmods PASS. Fates testmods have DIFF as expected due to update of fates tag.
BFAILs expected due to changing non-debug nag test to debug. See #1264 comments for discussion.
fates tests:
cheyenne ---- OK
ok: expected failures on COMPARE_base_rest for FatesHydro
and Fates_nat_and_anthro_ignitions. All else B4B.
fates baseline: fates-sci.1.43.2_api.14.2.0-ctsm5.1.dev020-C5f348cac-F5534a940
any other testing (give details below):
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes, only for fates
Summarize any changes to answers, i.e.,
- what code configurations: all fates
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new
climate): larger than roundoff
Comparison made using fates suite between fates_main_api (at ctsm5.1.dev020)
and ctsm5.1.dev022. All tests PASS, except for two expected failures and
expected NLCOMP failure due to ctsm5.1.dev021 update to paramfile.
Other details
-------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
fates
fates: sci.1.30.0_api.8.0.0 -> sci.1.43.2_api.14.2.0
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1264 -- Merge fates_main_api into master
===============================================================
===============================================================
Tag name: ctsm5.1.dev021
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Tue Jan 12 20:21:52 MST 2021
One-line Summary: Add option for biomass heat storage (BHS) to clm5_1 physics
Purpose of changes
------------------
Add heat stored in biomass (for trees and shrubs) to the surface energy balance calculation. Add
a switch for it and turn it on by default for clm5_1 physics. It's turned off for clm4_5, clm5_0
physics and when FATES is turned on. Those cases are identical to before, answers only change
when it's turned on.
Papers describing BHS simulations:
R. Meier, Davin, E., Swenson, S., Lawrence, D., and Schwaab, Jo. (2019). Biomass heat
storage dampens diurnal temperature variations
in forests. Environmental Research Letters. 14. 084026. 10.1088/1748-9326/ab2b4e.
S.C. Swenson, Burns, S. P., and Lawrence, D. M. ( 2019). The impact of biomass heat storage
on the canopy energy balance and atmospheric stability in the community land model, Journal
of Advances in Modeling Earth Systems, 11, 83 98.
https://doi.org/10.1029/2018MS001476
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
#342 --- set medlynslope to C4 appropriate value for millet and sorghum
(had already been done for miscanthus and switchgrass)
#1246 -- Make spinup_factor_deadwood a variable rather than hardcoded constant
Known bugs introduced in this tag (include github issue ID):
#1247 -- FATES doesn't work with BHS
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
New variables are added on the restart files (stem/leaf biomass and stem Temp)
Testing didn't show this as a problem, but theoretically could require
updating initial conditions
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): New compsets, new hist fields
I1850Clm51BgcCrop
I1850Clm51Bgc
History fields: AGSB, AGLB, FSH_STEM, DHDT_CANOPY, RAH1, RAH2, RAW1, RAW2, USTAR, UM, UAF, UM, UAF,
TAF, QAF, OBU, ZETA, VPD, num_iter, RB, TSTEM
DHSDT_CANOPY, TSTEM are default active
Changes made to namelist defaults (e.g., changed parameter values): New use_biomass_heat_storage
New namelist item: use_biomass_heat_storage to turn on or off (by default only on for clm5_1
physics for both SP and BGC modes)
Changes to the datasets (e.g., parameter, surface or initial files): New parameter datasets
All of the params files were updated. New terms were BHS parameters and taper
stocking is now set as "nstem" on the parameter file
taper is now on the parameter file
Substantial timing or memory changes: Doesn't seem to
Only one short test failed the TPUTCOMP test
Longer tests were not significantly different
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Setting of leaf/stem biomass should be refactored and removed from CanopyFluxes (as described in #1247)
There's a change in CNGapMortality that could change for DV when AD mode is on
Stability cap (zera) is different for BHS on than off
Changes to tests or testing: New CLM51 FATES test
CTSM testing: regular
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - OK (462 comparisons fail because of new namelist and params files)
python testing (see instructions in python/README.md; document testing done):
cheyenne -- PASS
regular tests (aux_clm):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes!
Summarize any changes to answers, i.e.,
- what code configurations: clm5_1
- what platforms/compilers: all
- nature of change: new climate for tree and shrubs
Detailed list of changes
------------------------
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1016 -- Heat Storage biomass
===============================================================
===============================================================
Tag name: ctsm5.1.dev020
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Dec 30 00:42:16 MST 2020
One-line Summary: Potential roundoff changes in preparation for bio-mass heat storage option
Purpose of changes
------------------
This adds in some changes that may be roundoff different in preparation for bringing in the changes
that allow turning on the bio-mass heat storage option. There's a few zeroed terms added to some calculations
in CanopyFluxes. The new terms are identical to what will come in for BHS except the zeroed terms are
not arrays here but scalars. I showed the new terms are only off by roundoff with a previous commit that added
explicit tests for the terms and verified it for two tests.
Bugs fixed or introduced
------------------------
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): Added new Clm51 compsets
I1PtClm51SpRs
I2000Clm51Sp
I2000Clm51SpRs
I1850Clm51Sp
I2000Clm51Fates
I1850Clm51SpNoAnthro
IHistClm51Sp
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Here I set some terms to zero that will be non-zero even when BHS is off
Earlier commits show the smaller set of changes that are needed.
Changes to tests or testing: Switched one Clm50Sp test to Clm51Sp and added one HistClm51Sp test
CTSM testing: regular
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - PASS
python testing (see instructions in python/README.md; document testing done):
cheyenne - PASS
regular tests (aux_clm):
cheyenne ---- OK
izumi ------- OK
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline:
Summarize any changes to answers, i.e.,
- what code configurations: all
- what platforms/compilers: izumi-PGI
- nature of change: roundoff
If bitwise differences were observed, how did you show they were no worse
than roundoff?
Earlier commit tested the new terms versus the old and showed they were
order e-11 for absolute difference and e-14 relative difference.
Tests that change from baseline....
ERS_Ly5_P144x1.f10_f10_musgs.IHistClm51BgcCrop.cheyenne_intel.clm-cropMonthOutput
SMS.f10_f10_musgs.I2000Clm50BgcCrop.izumi_pgi.clm-crop
SMS_D.f10_f10_musgs.I2000Clm51BgcCrop.izumi_pgi.clm-crop
Detailed list of changes
------------------------
Pull Requests that document the changes (include PR ids): #1241
(https://github.com/ESCOMP/ctsm/pull)
#1241 -- Small answer changes in preparation for adding option for bio-mass heat storage
===============================================================
===============================================================
Tag name: ctsm5.1.dev019
Originator(s): sacks (Bill Sacks)
Date: Sat Dec 19 06:55:46 MST 2020
One-line Summary: Fix ndep from coupler
Purpose of changes
------------------
There was a bug in ndep forcing (forc_ndep_grc) when receiving ndep from
CAM (ndep_from_cpl true). This first appeared in ctsm5.1.dev002. NDEP
forcings have been garbage since then when receiving ndep from CAM.
This tag fixes that issue.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1233 (ndep forcing incorrect when receiving ndep
from CAM (starting with ctsm5.1.dev002))
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none expected (not checked)
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
izumi testing: baseline generation failed due to running out of disk
space. I have sym linked the ctsm5.1.dev018 baselines to
ctsm5.1.dev019, because answers are bit-for-bit between the two tags
as far as aux_clm testing is concerned.
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but just in select coupled configurations
[ If a tag changes answers relative to baseline comparison the
following should be filled in (otherwise remove this section).
And always remove these three lines and parts that don't apply. ]
Summarize any changes to answers, i.e.,
- what code configurations: Coupled configurations where CTSM
receives NDEP from CAM
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
potentially new climate
If bitwise differences were observed, how did you show they were no worse
than roundoff? N/A
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename: N/A
URL for LMWG diagnostics output used to validate new climate: N/A
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids): none
===============================================================
===============================================================
Tag name: ctsm5.1.dev018
Originator(s): slevis (Samuel Levis,,303-665-1310)
Date: Tue Dec 8 11:19:02 MST 2020
One-line Summary: Add ACTIVE (T/F) column to master hist fields table and alphabetize
Purpose of changes
------------------
For convenience, added an ACTIVE column to the master fields table and
alphabetized.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #941
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
None
Changes made to namelist defaults (e.g., changed parameter values):
None
Changes to the datasets (e.g., parameter, surface or initial files):
None
Substantial timing or memory changes: [For timing changes, can check PFS test(s) in the test suite]
None
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
None
Changes to tests or testing:
None
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne -
tools-tests (test/tools):
cheyenne -
PTCLM testing (tools/shared/PTCLM/test):
cheyenne -
python testing (see instructions in python/README.md; document testing done):
(any machine) -
regular tests (aux_clm):
cheyenne ---- PASS
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline:
No
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
None
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1222
===============================================================
===============================================================
Tag name: ctsm5.1.dev017
Originator(s): slevis (Samuel Levis,303-665-1310)
Date: Tue Nov 17 18:19:20 MST 2020
One-line Summary: Write history fields master list to separate optional file
Purpose of changes
------------------
User can choose to write the history fields master list in a separate
text file by setting hist_master_list_file = .true. in CTSM's namelist.
File contents follow recommended reStructuredText "simple table"
formatting (see
https://docutils.sourceforge.io/docs/user/rst/quickref.html#tables)
for use in CTSM documentation in the sphinx environment.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #34 #941
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
New namelist option hist_master_list_file. Setting to true generates a
new text output file containing the history fields master list.
Changes made to namelist defaults (e.g., changed parameter values):
Default for hist_master_list_file = .false.
Changes to the datasets (e.g., parameter, surface or initial files):
None
Substantial timing or memory changes:
No
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
None
Changes to tests or testing:
Introduced testing for the new namelist option within the existing test
ERP_P36x2_D_Ld3.f10_f10_musgs.I1850Clm50BgcCrop.cheyenne_gnu.clm-extra_outputs
by adding hist_master_list_file = .true. to the test's user_nl_clm
CTSM testing:
[... Remove before making master tag. Available test levels:
a) regular (must be run before handing off a tag to SEs and must be run
before committing a tag)
b) build_namelist (if namelists and/or build_system changed))
c) tools (only if tools are modified and no CTSM source is modified)
d) short (for use during development and in rare cases where only a small
change with known behavior is added ... eg. a minor bug fix)
e) doc (no source testing required)
... ]
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne -
tools-tests (test/tools):
cheyenne -
PTCLM testing (tools/shared/PTCLM/test):
cheyenne -
python testing (see instructions in python/README.md; document testing done):
(any machine) -
regular tests (aux_clm):
cheyenne ---- OK (NLCOMP tests fail as expected)
izumi ------- OK (NLCOMP tests fail as expected)
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline:
No
Detailed list of changes
------------------------
Added section to subr. hist_printflds (called by subr. initialize2).
The new section runs when hist_master_list_file = .true.
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
None
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1209
===============================================================
===============================================================
Tag name: ctsm5.1.dev016
Originator(s): mvertens (Mariana Vertenstein), jedwards (Jim Edwards),
sacks (Bill Sacks), erik (Erik Kluzek)
Date: Tue Nov 17 10:49:40 MST 2020
One-line Summary: Updates for nuopc
Purpose of changes
------------------
Various updates needed for NUOPC.
Also adds mizuRoute as an external component.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- SoilMoistureStreamMod now is duplicated: the version used with mct is
still in src/biogeochem, but there is a new version used with nuopc
and the CDEPS data models in src/cpl/nuopc. The latter has just been
introduced for testing purposes. Eventually, once we switch everything
to use CDEPS, we'll remove this duplicated version.
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- Added mizuRoute (at 34723c2)
- cime: branch_tags/cime5.8.32_a01 -> branch_tags/cime5.8.32_a02
- (Some other rearrangement of Externals files, but versions stayed the
same)
Pull Requests that document the changes (include PR ids): none
===============================================================
===============================================================
Tag name: ctsm5.1.dev015
Originator(s): sacks (Bill Sacks)
Date: Fri Nov 13 11:52:34 MST 2020
One-line Summary: A few small fixes
Purpose of changes
------------------
(1) Fixes needed for PIO2 when running in pts/scam mode (from Jim
Edwards and Bill Sacks)
(2) Fix mpi broadcast of hist_avgflag_pertape so that this namelist
variable is applied properly (from Sunniva Indrehus, Keith Oleson
and Bill Sacks)
(3) Fix invalid xml in namelist_definition_ctsm.xml
(4) Add point of interest code for debugging
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1191 (hist_avgflag_pertape doesn't always produce
desired averaging type for some history file streams)
- Resolves ESCOMP/CTSM#1159 (Invalid xml in
namelist_definition_ctsm.xml)
- Resolves ESCOMP/CTSM#1210 (Add "point of interest" code)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none expected (not checked)
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1214
===============================================================
===============================================================
Tag name: ctsm5.1.dev014
Originator(s): dll (Danica Lombardozzi) / oleson (Keith Oleson) / sacks (Bill Sacks)
Date: Sat Nov 7 12:19:14 MST 2020
One-line Summary: Grass/crop snow burial fraction fix, and some other fixes
Purpose of changes
------------------
(1) Crop/grass snow burial changed based on height and lodging (Danica
Lombardozzi) - resolves ESCOMP/CTSM#516. Updates grass and crop snow
burial ('fb' in SatellitePhenologyMod.F90) from being 0.2m to change
with PFT height and accounts for 20% lodging (falling over).
(2) In BGC code, make elai and esai depend on frac_sno (Danica
Lombardozzi, Keith Oleson & Bill Sacks) - resolves ESCOMP/CTSM#1116
(3) Fix to quadratic solution error bug caused by negative shaded
photosynthesis (Danica Lombardozzi & Keith Oleson) - resolves
ESCOMP/CTSM#756
(4) Point to cime branch tag that avoids building CDEPS with LILAC, to
avoid dependence on unreleased ESMF code (Bill Sacks) - resolves
ESCOMP/CTSM#1203
(5) Some tweaks to documentation and how the documentation is built
(Bill Sacks)
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#516 (crop and grass snow burial)
- Resolves ESCOMP/CTSM#1116 (elai and esai for non-SP runs should use
frac_sno)
- Resolves ESCOMP/CTSM#756 (Quadratic solution error)
- Resolves ESCOMP/CTSM#1203 (Rework LILAC build to avoid dependence on
unreleased ESMF code)
CIME Issues fixed (include issue #):
- https://github.com/ESMCI/cime/issues/3769 (Avoid building CDEPS with
CTSM's LILAC)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
ok: tests pass, baselines fail as expected
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: all (or at least most)
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
new climate, at least to some extent
Changes arise from (1) & (2) (large changes) and from (3) (small
changes). The change in snow burial parameterizations results in
changes to albedo and water & energy fluxes.
If bitwise differences were observed, how did you show they were no worse
than roundoff? N/A
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename: N/A
URL for LMWG diagnostics output used to validate new climate:
For analysis of diffs, see
https://github.com/danicalombardozzi/ctsm_py/blob/7543b0f3b413bae9974c11b467fdbc0413c3b7fa/notebooks/SnowBurial.ipynb
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- cime: cime5.8.32 -> branch_tags/cime5.8.32_a01
- doc-builder: v1.0.2 -> v1.0.4
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1112
===============================================================
===============================================================
Tag name: ctsm5.1.dev013
Originator(s): jedwards (Jim Edwards) / sacks (Bill Sacks)
Date: Wed Nov 4 14:24:55 MST 2020
One-line Summary: Allow pnetcdf for vector history files
Purpose of changes
------------------
Ever since clm4_5_1_r091, we had been avoiding the use of pnetcdf for
vector history files (i.e., history files with dov2xy = .false.). This
was to workaround an issue that was found on the old yellowstone
supercomputer (bugzilla 1730). However, I cannot reproduce this issue on
cheyenne, either with PIO1 or with PIO2. Moreover, the workaround was
leading to very slow performance with PIO2, at least for some
tests. This tag removes that old workaround.
See https://github.com/ESCOMP/CTSM/issues/33 for details.
Also change PE layouts for C96 and C192. The main motivation for this is
to get the aux_clm C96 test through the queue faster (the current test
sometimes waits for multiple hours in the queue):
(1) Make the out-of-the-box PE counts unthreaded, as is standard for I
compsets
(2) In the aux_clm test for C92, use a 360x2 PE layout: Use a PE layout
that (a) has threading, because CAM uses threading at this
resolution; and (b) has a smaller-than-standard task count in order
to get through the queue faster.
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes:
Timing changes seem small, though not investigated carefully. No
timing changes are expected to show up in the PFS test (because it
doesn't do history output), but I looked at a few other non-debug f09
cases: ERP_Ld5.f09_g17.I2000Clm50Vic.cheyenne_intel.clm-vrtlay,
ERP_Ld3.f09_g17.I1850Clm50BgcCropCru.cheyenne_intel.clm-ciso,
ERS_Ld3.f09_g17.I1850Clm50BgcCrop.cheyenne_intel.clm-rad_hrly_light_res_half,
ERS_Ld3.f09_g17.I2000Clm50Fates.cheyenne_intel.clm-FatesColdDef. Total
runtime of these increased in some tests and decreased in others
relative to the baseline, but on average, there was little change
relative to the baseline. I have more carefully investigated this
change in the context of pio2, which will soon become the default:
with pio2, this change is important to get good performance.
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: Changed PE layout for C96 test
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
Note: testing was done on 13c693d88, which was before the PE layout
change for C96 and C192. I then ran the new C96 test manually.
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1190
===============================================================
===============================================================
Tag name: ctsm5.1.dev012
Originator(s): oleson (Keith Oleson) / sacks (Bill Sacks)
Date: Tue Nov 3 09:31:41 MST 2020
One-line Summary: Allow nlevgrnd < nlevurb
Purpose of changes
------------------
Allow nlevgrnd < nlevurb. This will become more important soon, when
nlevurb is increased to 10, yet we want to allow simple soil layer
structures, e.g., for NWP applications.
Also some additions to ncdio-related utilities to support this,
including extending find_var_on_file to support dimensions as well as
variables.
Also add levsoi coordinate variable on history files.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#674 (Allow nlevgrnd less than nlevurb)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing:
- Removed the no-longer-useful snowlayers_3_monthly test
- Added a test with nlevgrnd < nlevurb
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1195
===============================================================
===============================================================
Tag name: ctsm5.1.dev011
Originator(s): sacks (Bill Sacks)
Date: Mon Nov 2 10:28:35 MST 2020
One-line Summary: Change CISM2%NOEVOLVE compsets to use SGLC; documentation updates
Purpose of changes
------------------
(1) Change CISM2%NOEVOLVE compsets to use SGLC.
The use of CISM2%NOEVOLVE adds complexity and (perhaps most importantly)
increases the turnaround time of CTSM software testing, while adding
only marginal scientific value. Therefore, we are changing I compsets to
use a stub glacier (SGLC) rather than CISM2%NOEVOLVE for now. Within the
next year, we'd like to have these use a data glc model, but that will
most likely wait until we switch to using NUOPC by default (so we can
use a data glc in CDEPS: ESCOMP/CDEPS#25).
This tag changes the meaning of compset aliases that previously had
neither a Gs (for stub glacier) or G (for CISM2%EVOLVE), so that they
now use a stub glacier (SGLC) rather than CISM2%NOEVOLVE. Compset
aliases that previously had Gs (so were already using a stub glacier)
have been changed so that there is no longer a Gs in the alias: stub
glacier is now the implied default.
This change reduces our test build time to 40% of what it previously
was! When I ran the test suite for ctsm5.1.dev010, the cheyenne-intel
test suite (by far the largest of our test suites) took 5 hours, 8 min
to build. In yesterday's run of the test suite with this change in
place, the cheyenne-intel test suite took only 2 hours, 6 min to build!
The final test in this test suite finished running just 2 hours, 29 min
after I started the test suite. This may not be a completely fair
comparison, because the machine may have been relatively lightly loaded
during this Sunday afternoon run, but I wouldn't expect the test suite
build time (which is what I'm reporting here) to be hugely impacted by
that.
Changes due to using SGLC in place of CISM2%NOEVOLVE are documented
here:
<https://escomp.github.io/cism-docs/cism-in-cesm/versions/master/html/clm-cism-coupling.html?highlight=sglc#stub-glc-model-cism-absent>.
(2) Documentation updates
Brings in a new optional external, doc-builder, to assist with building
the documentation, specifically with a new Docker-based workflow
documented here
<https://github.com/ESCOMP/CTSM/wiki/Directions-for-editing-CLM-documentation-on-github-and-sphinx>.
Also updates LILAC documentation and a bit more.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1135 (Replace CISM2%NOEVOLVE compsets with SGLC)
Known bugs introduced in this tag (include github issue ID):
- See ESCOMP/CTSM#1136 (Use data glc model where we used to use CISM2%NOEVOLVE)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- This tag changes the meaning of compset aliases that previously had
neither a Gs (for stub glacier) or G (for CISM2%EVOLVE), so that they
now use a stub glacier (SGLC) rather than CISM2%NOEVOLVE. Compset
aliases that previously had Gs (so were already using a stub glacier)
have been changed so that there is no longer a Gs in the alias: stub
glacier is now the implied default.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing:
- Changed compsets used in testing according to the above notes. In
particular, this involved removing the 'Gs' from compset names in
tests.
- No longer need a specific testmod for the LII test (see commit
f75335a45)
- Changed the glcMEC_changeFlags test to be more useful (see commit
e350beced)
- Removed _gl4 from resolution in tests that no longer use CISM
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
ok: tests pass, baselines fail as expected
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: ALL
- what platforms/compilers: ALL
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Larger than roundoff; potentially new climate regionally, over Greenland
The changes arise from changes in the meaning of
compsets. Configurations that used to use a stub GLC (compsets
with Gs in their alias) have the same meaning as before, but a
different compset alias (so in testing, this resulted in BFAILs
due to missing baselines). Configurations that previously used
CISM2%NOEVOLVE (which included most of our standard
configurations) now instead use a stub GLC. This results in
differences over Greenland (in ways described here:
<https://escomp.github.io/cism-docs/cism-in-cesm/versions/master/html/clm-cism-coupling.html?highlight=sglc#stub-glc-model-cism-absent>).
If bitwise differences were observed, how did you show they were no worse
than roundoff? N/A
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename: N/A
URL for LMWG diagnostics output used to validate new climate: N/A
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
- New doc-builder external (at v1.0.2)
Pull Requests that document the changes (include PR ids): none
===============================================================
===============================================================
Tag name: ctsm5.1.dev010
Originator(s): sacks (Bill Sacks), jedwards (Jim Edwards)
Date: Fri Oct 23 14:36:03 MDT 2020
One-line Summary: Fix reading netcdf variable into a different data type
Purpose of changes
------------------
Main change is to fix the reading of a variable that is one type on a
NetCDF file but a different data type in memory. Previously, this could
lead to memory corruption (not just of the variable in question, but
other variables as well). This was not causing any problems in
out-of-the-box configurations, but it sometimes tripped up some
developers when they added new fields on datasets.
In addition, this adds new self-test code to test ncdio_pio. This module
is hard to get under unit test, but we want to have some tests of it, to
pick up problems like the one fixed in this tag. So as a compromise
solution for now, I have introduced unit test-like tests that are built
into a standard build of CTSM and run in a standard run if a given
namelist flag is set. A better long-term solution would be to integrate
these tests into the pFUnit-based unit testing framework, but that would
take some work. I have added tests of the new code, and a bit of testing
of other code in ncdio_pio, but there's still a lot in ncdio_pio that is
not tested. I figure we can gradually add tests as we make changes to
ncdio_pio.
Finally, an unrelated change to the unit test build: files generated by
genf90 now appear in the unit test build directory rather than the
source tree.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1091 (Memory corruption when reading a netcdf
variable into a variable of a different type, at least with PIO1)
- Resolves ESCOMP/CTSM#1188 (In unit test build: files generated by
genf90 should go in build dir rather than source dir)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- new namelist variable, for_testing_run_ncdiopio_tests
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Ideally the ncdio_pio self-tests would be recoded as true unit tests,
leveraging the pFUnit framework. This would get them out of the main
source code, and would give other benefits that come with a real unit
testing framework, such as that a single failure doesn't abort the
entire test suite.
- The existence of tests for ncdio_pio should NOT be taken as a sign
that all (or even most) of this module is now under unit test: in
fact, much of it is not covered yet by my new testing module.
Changes to tests or testing:
- Added a test that triggers for_testing_run_ncdiopio_tests
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- pass
izumi ------- pass
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: NO
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1189
https://github.com/ESCOMP/CTSM/pull/1176 (old version, superseded by 1189)
===============================================================
===============================================================
Tag name: ctsm5.1.dev009
Originator(s): negins (Negin Sobhani,UCAR/TSS,303-497-1224)
Date: Wed Oct 21 11:14:25 MDT 2020
One-line Summary: BFB changes for Perturbed Parameter Ensemble and Hydraulic redistribution
Purpose of changes
------------------
Some BFB changes for PPE work and Hydraulic redistribution
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): [If none, remove this line]
- resolves ESCOMP/CTSM#881
- resolves ESCOMP/CTSM#1020
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[ ] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- maxpatch_pft is removed from namelist
Changes made to namelist defaults (e.g., changed parameter values): None
Changes to the datasets (e.g., parameter, surface or initial files): None
Substantial timing or memory changes: [For timing changes, can check PFS test(s) in the test suite]
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): None
Changes to tests or testing:
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - None
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
If the tag used for baseline comparisons was NOT the previous tag, note that here: N/A
Answer changes
--------------
Changes answers relative to baseline:
Four new fields regarding plant hydraulic processes has been added:
- QHR (patch-level hydraulic redistribution)
- VEGWPLN (local noon vegetation water potential)
- VEGWPPD (predawn vegetation water potential)
- VPD_CAN: canopy vapor pressure deficit (functional input to Medlyn model)
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): None
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1187
https://github.com/ESCOMP/CTSM/pull/1126
===============================================================
===============================================================
Tag name: ctsm5.1.dev008
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Oct 7 11:48:30 MDT 2020
One-line Summary: Two answer changes: Clm45/50/51 with crop, and for 2000Clm51
Purpose of changes
------------------
Turn dribble_crophrv_xsmrpool_2atm when crop is on for clm4_5, clm5_0, and clm5_1 physics
Fix the finidat files being selected for 2000_control conditions for clm5_1
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fixes #1158 -- Turn dribble_crophrv_xsmrpool_2atm on when crop is on for all physics versions
Another issue in #1166 -- correct finidat file for 2000Clm51
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[x] clm5_1
[x] clm5_0
[ ] ctsm5_0-nwp
[x] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): None
Changes made to namelist defaults (e.g., changed parameter values):
dribble_crophrv_xsmrpool_2atm now on when crop on for all physics versions
Changes to the datasets (e.g., parameter, surface or initial files): None
Substantial timing or memory changes: None
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
The namelist dribble_crophrv_xsmrpool_2atm should now be removed as a namelist item both
in the fortran code and in build-namelist scripts. This change should be bit-for-bit.
Changes to tests or testing: None
CTSM testing: regular
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - PASS (120 tests are different than before)
python testing (see instructions in python/README.md; document testing done):
cheyenne -- PASS
regular tests (aux_clm):
cheyenne ---- PASS
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes
Summarize any changes to answers, i.e.,
- what code configurations: Clm45/50/51 with crop (except with prognostic CO2) and 2000Clm51
- what platforms/compilers: All
- nature of change: same climate
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): None
Pull Requests that document the changes (include PR ids): #1177
(https://github.com/ESCOMP/ctsm/pull)
#1177 -- Two answer changes turn dribble_crophrv_xsmrpool_2atm and correct clm5_1 finidat
file for 2000 conditions
===============================================================
===============================================================
Tag name: ctsm5.1.dev007
Originator(s): sacks (Bill Sacks)
Date: Tue Oct 6 09:29:27 MDT 2020
One-line Summary: CNFire: btran2 fixes and general cleanup
Purpose of changes
------------------
(1) Call routine to calculate fire's btran2 from CNFireArea; this has a
few advantages:
- It makes the logic of CNFireArea more clear (rather than depending on
a btran2 variable that is calculated from some other part of the code)
- This avoids having the biogeophysics depend on the biogeochemistry
- This lets us avoid doing this btran calc if using no-fire or other,
future, fire methods that don't need it
Note regarding testing: In the initial step, I kept this calculation
dependent on a saved version of h2osoi_vol to avoid changing
answers; I changed this in the answer changes in step (2), as noted
below.
(2) Answer-changing fixes to CNFire's btran2 calculation and use:
(a) Calculate fire btran2 using updated h2osoi_vol (this is an
answer-changing cleanup step from (1))
(b) TEMPORARY CHANGE (reverted in the cleanup in (3)): Reinitialize
fire btran2 to spval for all patches in each time step, so that
the fire code isn't trying to use btran2 from earlier time steps
for patches that were in the exposed veg filter at one point but
no longer are.
One implication of this is that, if there is currently no
exposed veg on a column, the new code leads to the block of code
that forces fire_m = 0 (because wtlf will be 0). Previously, in
contrast, it looks like fire_m was allowed to be non-zero even
if there is currently no exposed veg, because btran2 and wtlf
were accumulated if a patch ever was exposed in the past.
(c) Limit fire btran2 to be <= 1, rather than letting it be slightly
greater than 1. (Due to a conditional in CNFireArea, these
slightly-greater-tan-1 values were being ignored when computing
btran_col, rather than averaging in a 1 value.)
(3) Non-answer-changing fire code cleanup:
(a) Cleanup of the btran2 fixes, including reverting the TEMPORARY
CHANGE noted in (2b), instead relying on a better mechanism:
just doing the calculations of btran_col and wtlf over the
exposedvegp filter. Also, get rid of the checks for
shr_infnan_isnan(btran2(p)) and btran2(p) <= 1 (allowed by the
other changes in (2) and (3)).
(b) Set btran2 to 0 over non-exposed-veg points: this changes
answers for the BTRAN2 diagnostic field, but nothing else. (This
follows what is done for the standard BTRAN.)
(c) Move calc_fire_root_wetness for CNFireLi2021 into the base type
to avoid future bugs (assuming that the next fire module will
extend the base class but will also want to use this new version
of calc_fire_root_wetness).
(d) Change fire looping structure to be more standard
(4) Remove some very expensive tests from aux_clm, putting some in the
new ctsm_sci test list instead
(5) A bit of other minor cleanup
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1139 (Decrease expense of ne0ARCTICGRISne30x8
test and C96 tests)
- Resolves ESCOMP/CTSM#1153 (Fire btran2 is only computed for exposed
veg patches, but is used over all veg patches)
- Resolves ESCOMP/CTSM#1170 (CNFire code: btran2 should not be skipped
when it's greater than 1)
- Partially addresses ESCOMP/CTSM#1142 (Add ctsm_sci test list that
would be used for releases and making sure important resolutions run
well)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: Remove some very expensive tests from
aux_clm, putting some in the new ctsm_sci test list instead.
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - pass (on my mac)
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
ok: tests pass, many baselines fail as expected
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, for all CN/BGC configurations
Summarize any changes to answers, i.e.,
- what code configurations: All CN/BGC configurations
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
larger than roundoff; expected to be same climate, but not
investigated yet
To verify that the answer changes only came from expected changes, I
did a few rounds of testing. The following numbers refer to the groups
of changes listed under "Purpose of changes", above. The changes in
groups (4) and (5) were combined with those in groups (1) and (3) -
i.e., the basically non-answer-changing sets.
First, I tested with just the changes in (1). This led to differences
in only limited configurations, as noted in
https://github.com/ESCOMP/CTSM/pull/1155#issuecomment-695035048:
- nofire tests had diffs in BTRAN2
- dynroots tests had extensive diffs because now btran2 is calculated
after the dyn roots updates in each time step
- tests where the compared clm2 h0 file includes the 0th time step had
diffs just in BTRAN2, for reasons I couldn't determine
Then I tested with the changes in (2), which were expected to change
answers for all CN/BGC tests. In particular, these change answers due
to:
- using updated h2osoi_vol rather than the one earlier in the time
step when calculating btran2
- only considering points in the exposed veg filter when averaging
btran2 from patch to column, rather than using stale values from
no-longer-exposed patches (which also means having fire_m = 0 if
there are no currently-exposed veg patches in a column) (fix for
ESCOMP/CTSM#1153)
- treating btran2 values that are slightly greater than 1 as 1, rather
than ignoring them completely (fix for ESCOMP/CTSM#1170)
Finally, I tested with all of the changes, comparing against the
baselines generated from (2). As expected, the only answer changes in
this final round were in the BTRAN2 diagnostic field (due to setting
btran2 to 0 over non-exposed-veg points).
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1155
===============================================================
===============================================================
Tag name: ctsm5.1.dev006
Originator(s): sacks (Bill Sacks)
Date: Sat Oct 3 19:50:41 MDT 2020
One-line Summary: Call correct routine to calculate btran2 for CNFireLi2021
Purpose of changes
------------------
Due to a subtle code bug, CNFireLi2021 was using the btran2 calculating
routine from the base class rather than the new one that is specific to
this formulation.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1173 (CNFireLi2021Mod uses the wrong btran2
routine)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: not investigated (none expected)
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
ok: tests pass, Clm51Bgc baselines fail as expected
Note: there were also the following BFAIL results due to missing
baselines, as documented in the previous tag:
FAIL ERS_D_Ld10.C96_C96_mg17.IHistClm50Sp.cheyenne_intel.clm-decStart BASELINE ctsm5.1.dev005: ERROR BFAIL some baseline files were missing
FAIL ERS_Ln9.ne0ARCTICne30x4_ne0ARCTICne30x4_mt12.IHistClm50SpGs.cheyenne_intel.clm-clm50cam6LndTuningMode_1979Start BASELINE ctsm5.1.dev005: ERROR BFAIL some baseline files were missing
FAIL SMS_Ln9.ne0ARCTICGRISne30x8_ne0ARCTICGRISne30x8_mt12.IHistClm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode_1979Start BASELINE ctsm5.1.dev005: ERROR BFAIL some baseline files were missing
FAIL SMS_Ln9.ne0ARCTICGRISne30x8_ne0ARCTICGRISne30x8_mt12.ISSP585Clm50BgcCrop.cheyenne_intel.clm-clm50cam6LndTuningMode BASELINE ctsm5.1.dev005: ERROR BFAIL some baseline files were missing
FAIL SMS_Ln9.ne0CONUSne30x8_ne0CONUSne30x8_mt12.IHistClm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode_2013Start BASELINE ctsm5.1.dev005: ERROR BFAIL some baseline files were missing
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES
Summarize any changes to answers, i.e.,
- what code configurations: Clm51Bgc
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
larger than roundoff; whether it is climate changing was not investigated
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1174
===============================================================
===============================================================
Tag name: ctsm5.1.dev005
Originator(s): sacks (Bill Sacks)
Date: Fri Oct 2 09:51:08 MDT 2020
One-line Summary: Answer changing bug fixes for clm51: fire and organic_frac_squared
Purpose of changes
------------------
A few bug fixes for CLM51:
- Initialize btran2 to 0 in CNFireLi2021Mod
- Remove multiplications by col%wtgcell in CNFireLi2021Mod
- Initialize nfire to 0 in CNFireLi2021Mod
- Fix organic_frac_squared default for clm5_1
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1171 (btran2 not initialized to zero in
CNFireLi2021Mod.F90)
- Partially addresses ESCOMP/CTSM#1169 (CNFireLi2021Mod reintroduces a
number of bugs that were fixed in earlier versions)
- Partially addresses ESCOMP/CTSM#1166 (Possible problems with namelist
defaults starting in ctsm5.0.dev001)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_1
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values):
- Fixes default for organic_frac_squared for clm5_1
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: not investigated (none expected)
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
ok: tests pass, baselines fail just for CLM51 cases, as expected
NOTE: The following expensive tests did not run, due to a long queue
wait time; we are about to remove these tests from the test suite
anyway:
PEND ERS_D_Ld10.C96_C96_mg17.IHistClm50Sp.cheyenne_intel.clm-decStart RUN
PEND ERS_Ln9.ne0ARCTICne30x4_ne0ARCTICne30x4_mt12.IHistClm50SpGs.cheyenne_intel.clm-clm50cam6LndTuningMode_1979Start RUN
PEND SMS_Ln9.ne0ARCTICGRISne30x8_ne0ARCTICGRISne30x8_mt12.IHistClm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode_1979Start RUN
PEND SMS_Ln9.ne0ARCTICGRISne30x8_ne0ARCTICGRISne30x8_mt12.ISSP585Clm50BgcCrop.cheyenne_intel.clm-clm50cam6LndTuningMode RUN
PEND SMS_Ln9.ne0CONUSne30x8_ne0CONUSne30x8_mt12.IHistClm50Sp.cheyenne_intel.clm-clm50cam6LndTuningMode_2013Start RUN
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES - just for CLM51
Summarize any changes to answers, i.e.,
- what code configurations: CLM51
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
possibly new climate
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1172
===============================================================
===============================================================
Tag name: ctsm5.1.dev004
Originator(s): oleson (Keith Oleson), sacks (Bill Sacks)
Date: Wed Sep 30 10:45:25 MDT 2020
One-line Summary: Improve robustness of onset and offset counters when changing dt
Purpose of changes
------------------
The logic in CNPhenology for onset_counter and offset_counter was not
robust when the model time step differed from the time step used to
generate the finidat file. This showed up when running with a 20-minute
time step using a finidat file that was generated with a 30-minute time
step. See https://github.com/ESCOMP/CTSM/issues/1163 for details.
The fix here improves the situation significantly, but I believe still
leaves some issues remaining; see
https://github.com/ESCOMP/CTSM/issues/1167 for details.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#1163 (onset_counter variable on (all?) restart
files is not compatible with subsequent model runs using a 20 minute
time step)
Known bugs introduced in this tag (include github issue ID):
- ESCOMP/CTSM#1167 (Rework CNPhenology onset and offset triggers to be
more robust to changes in dt)
- This issue was not exactly introduced in this tag, but it captures
some things that I think still need to be done for complete robustness
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): none
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): none
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: not checked (none expected)
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): none
Changes to tests or testing: none
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - not run
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- pass
ok: tests pass, one test had answer changes as noted below
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES, but in very limited circumstances
Summarize any changes to answers, i.e.,
- what code configurations: Only when the model run uses a different
time step than the initial conditions file
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
larger than roundoff; magnitude not investigated; in some cases,
the differences might be significant if the model actually
continues without aborting
In the aux_clm test suite, this only appears in one test:
SMS_Ln9.ne30pg2_ne30pg2_mg17.I2000Clm50BgcCrop.cheyenne_intel.clm-clm50cam6LndTuningMode
but it might appear more widely in cam / fully coupled testing
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1165
===============================================================
===============================================================
Tag name: ctsm5.1.dev003
Originator(s): ivanderkelen (Inne Vanderkelen) / sacks (Bill Sacks)
Date: Tue Sep 29 10:16:00 MDT 2020
One-line Summary: Add capability for dynamic lakes
Purpose of changes
------------------
Adds the capability for dynamic lake areas, read from the
landuse_timeseries file. This represents reservoir construction. For
now, this capability is off by default. Turning it on requires new
fields on the landuse_timeseries file which cannot yet be produced by
mksurfdata_map; these new fields will be added in
https://github.com/ESCOMP/CTSM/pull/1073.
A substantial part of this tag involved changing the accounting of water
and energy in lakes in order to conserve water and energy across
landunit transitions while not producing too large adjustment
fluxes. This change results in roundoff-level answer changes for all
transient cases.
The core changes in this tag are from Inne Vanderkelen, in consultation
with Bill Sacks. Additional changes are from Bill Sacks, in consultation
with Inne Vanderkelen.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
- Resolves ESCOMP/CTSM#200 (Count energy of water in lakes in total
gridcell heat content)
- Resolves ESCOMP/CTSM#1140 (Add lake water to dynbal baselines)
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions):
- Using the dynamic lakes functionality will require either the
mksurfdata_map changes in https://github.com/ESCOMP/CTSM/pull/1073 or
manually adding the necessary fields to the landuse_timeseries file.
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
- New namelist variable for transient runs: do_transient_lakes
Changes made to namelist defaults (e.g., changed parameter values): none
Changes to the datasets (e.g., parameter, surface or initial files): none
Substantial timing or memory changes: none
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
- Using the dynamic lakes functionality will require either the
mksurfdata_map changes in https://github.com/ESCOMP/CTSM/pull/1073 or
manually adding the necessary fields to the landuse_timeseries file.
- For this reason, the new test
(ERS_Lm25.1x1_smallvilleIA.IHistClm50BgcCropQianRsGs.cheyenne_gnu.clm-smallville_dynlakes_monthly)
requires a manual step to create the necessary landuse_timeseries
file. This step is documented in the README file for the
clm-smallville_dynlakes_monthly testmod.
Changes to tests or testing:
- Added a single-point test covering dynamic lakes, using a
manually-created landuse_timeseries file:
ERS_Lm25.1x1_smallvilleIA.IHistClm50BgcCropQianRsGs.cheyenne_gnu.clm-smallville_dynlakes_monthly
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - ok
Tests pass, differences from baseline as expected due to new
namelist variable
tools-tests (test/tools):
cheyenne - not run
PTCLM testing (tools/shared/PTCLM/test):
cheyenne - not run
python testing (see instructions in python/README.md; document testing done):
(any machine) - not run
regular tests (aux_clm):
cheyenne ---- ok
izumi ------- ok
Tests pass, baselines differ as expected
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: YES
If a tag changes answers relative to baseline comparison the
following should be filled in (otherwise remove this section):
And always remove these three lines and parts that don't apply.
Summarize any changes to answers, i.e.,
- what code configurations: Transient cases
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff/same climate; new climate):
Mostly roundoff-level. See below for details.
- Differences in HEAT_CONTENT1, ICE_CONTENT1, LIQUID_CONTENT1, as
expected
- In transient tests (including Hist/SSP, Fates, CNDV and
transient glacier), roundoff-level diffs in EFLX_DYNBAL,
QFLX_ICE_DYNBAL and QFLX_LIQ_DYNBAL, along with related flux
terms, and river volume
- In some transient tests, roundoff-level diffs in methane terms,
presumably from downstream effects of changes in VOLR due to
roundoff-level changes in fluxes. In multi-year tests, these
methane diffs grow to bigger than roundoff-level, but I think
they originate from roundoff-level diffs. (I feel like I've seen
this high sensitivity before.)
- glcMEC_increase test
(ERP_P180x2_D_Ld5.f19_g17_gl4.I1850Clm50BgcCropG.cheyenne_intel.clm-glcMEC_increase)
shows significant differences in river-related terms, maybe due
to glacier running over lake and now lake has different states
than before; also, FILLDIFFs in h1 file because lake remains
active even when it goes to 0 area.
If bitwise differences were observed, how did you show they were no worse
than roundoff?
- Examined cprnc RMS diffs
If this tag changes climate describe the run(s) done to evaluate the new
climate (put details of the simulations in the experiment database)
- casename: N/A
URL for LMWG diagnostics output used to validate new climate: N/A
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): none
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1109
https://github.com/billsacks/ctsm/pull/3
===============================================================
===============================================================
Tag name: ctsm5.1.dev002
Originator(s): slevis (Samuel Levis,303-665-1310)
Date: Mon Sep 25 09:39:19 MDT 2020
One-line Summary: Reduce duplication between caps
Purpose of changes
------------------
Eliminate duplication of the "derived quantities for required fields"
and corresponding error checking codes that repeat across the mct,
nuopc, and lilac caps. This consolidates the code and reduces
maintenance requirements.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #): #918
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[X] clm5_0
[X] ctsm5_0-nwp
[X] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): None
Changes made to namelist defaults (e.g., changed parameter values): None
Changes to the datasets (e.g., parameter, surface or initial files): None
Substantial timing or memory changes: [For timing changes, can check PFS test(s) in the test suite] None
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance): None
Changes to tests or testing: None
Code reviewed by: @billsacks @slevisconsulting
CTSM testing:
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne -
tools-tests (test/tools):
cheyenne -
PTCLM testing (tools/shared/PTCLM/test):
cheyenne -
python testing (see instructions in python/README.md; document testing done):
(any machine) -
regular tests (aux_clm):
cheyenne ---- OK
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: Yes (Similar climate)
Summarize any changes to answers, i.e.,
- what code configurations: All
- what platforms/compilers: All
- nature of change: Larger than roundoff/same climate
Detailed list of changes
------------------------
Changes were implemented in three steps:
1) Bit-for-bit: @billsacks simplified subroutine QSat by making three
arguments optional (es, qsdT, esdT).
2) Answer-changing: @slevisconsulting replaced local calculations of
qsat in /src/cpl/mct, /src/cpl/lilac, and /src/cpl/nuopc with calls to
CTSM's subroutine QSat. Subroutine QSat uses a higher-order polynomial
approximation to estimate qsat, which explains the larger than
round-off diffs. When moving the three identical local approximations
to QSat as a temporary test instead of using the higher-order
polynomial approximation, the diffs reduce to round-off.
3) Bit-for-bit: @slevisconsulting consolidated repeating codes in
/src/cpl/mct, /src/cpl/lilac, and /src/cpl/nuopc by placing in the new
file /src/utils/lnd_import_export_utils.F90.
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.):
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/CTSM/pull/1086
https://github.com/ESCOMP/CTSM/pull/1094
===============================================================
===============================================================
Tag name: ctsm5.1.dev001
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed Sep 23 02:29:08 MDT 2020
One-line Summary: Start the clm5_1 physics series, with some changes to the fire model from Fang Li
Purpose of changes
------------------
Fang Li's latest Fire version - includes allowing clm5.1 phys version. New physics option is added
called "clm5_1", with currently the new feature to use the latest fire changes. This has some
adjustments to the fire model and includes some changes to the parameter file. Other new features
will be added into clm5_1 in future tags.
Also bring in mksurfdata changes for the raw urban dataset change. This adds some changes to
mksurfdata for a new urban raw dataset, as well as preparation for new changes for some other
urban changes that will be a future part of clm5_1. Also use the half degree lightning dataset
by default for clm5_1.
Start adding a new test list ctsm_sci that tests all the scientifically supported compsets.
Some of those tests fail due to existing issues, that will be fixed later.
Some more work done to change clm to ctsm, and allow for ctsm as a component.
Bugs fixed or introduced
------------------------
Issues fixed (include CTSM Issue #):
Fix #1142 -- Add ctsm_sci test list
Fix #1145 -- File was corrupted on glade
Fix #1144 -- Move btran2 to just inside of fire model
Fix #889 --- Some adjustments to the Li Fire model
Significant changes to scientifically-supported configurations
--------------------------------------------------------------
Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)
[Put an [X] in the box for any configuration with significant answer changes.]
[ ] clm5_0
[ ] ctsm5_0-nwp
[ ] clm4_5
Notes of particular relevance for users
---------------------------------------
Caveats for users (e.g., need to interpolate initial conditions): None
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables): Adds clm5_1 option to CLM_PHYSICS_VERSION
clm5_1_GSWP3v1 is the only LND_TUNING_MDOE option for clm5_1
New compsets added for CLM51 I2000Clm51BgcCropGs, I2000Clm51BgcGs, I1850Clm51BgcGs, IHistClm51BgcGs, IHistClm51BgcCropGs
Changes made to namelist defaults (e.g., changed parameter values): clm5_1 physics options added in
Add the ability to set the component name in filenames (default is still clm2, but can be clm4, olr clm5)
By default lightning dataset for clm5_1 is the half degree file
Changes to the datasets (e.g., parameter, surface or initial files): All params files updated with new fields for fire
Substantial timing or memory changes: None
Notes of particular relevance for developers: (including Code reviews and testing)
---------------------------------------------
NOTE: Be sure to review the steps in README.CHECKLIST.master_tags as well as the coding style in the Developers Guide
Caveats for developers (e.g., code that is duplicated that requires double maintenance):
Changes to tests or testing: Add ctsm_sci test list and move some clm5_0 to clm5_1 and one one clm5_1 specific test
Code reviewed by: self
CTSM testing: regular, tools
[PASS means all tests PASS and OK means tests PASS other than expected fails.]
build-namelist tests:
cheyenne - PASS (853 tests are different)
tools-tests (test/tools):
cheyenne - PASS
python testing (see instructions in python/README.md; document testing done):
cheyenne -- PASS
regular tests (aux_clm):
cheyenne ---- OK
izumi ------- PASS
If the tag used for baseline comparisons was NOT the previous tag, note that here:
Answer changes
--------------
Changes answers relative to baseline: No (although clm5_1 is a new physics option that is different)
Detailed list of changes
------------------------
List any externals directories updated (cime, rtm, mosart, cism, fates, etc.): None
Pull Requests that document the changes (include PR ids):
(https://github.com/ESCOMP/ctsm/pull)
#1151 -- Move btran2 to inside CNFireBase
#1150 -- ctsm5.1 starting point
#1157 -- Urban mksurfdata_map changes
#1149 -- LILACSMOKE test change
#1146 -- Add --project to LILACS create_newcase
===============================================================
===============================================================