Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arctic changes branch with Kattge in place of Leuning in LUNA #990

Merged
merged 47 commits into from
Apr 19, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
64aa4d9
Add files via upload
lmbirch89 Mar 21, 2020
d91b2ee
Add files via upload
lmbirch89 Mar 21, 2020
8a5252e
Add files via upload
lmbirch89 Mar 21, 2020
ea984f5
Merge pull request #2 from lmbirch89/abz_update
lmbirch89 Mar 21, 2020
6432dd2
Add files via upload
lmbirch89 Mar 24, 2020
35b7098
Add files via upload
lmbirch89 Mar 24, 2020
298235a
Add files via upload
lmbirch89 Mar 31, 2020
0f0305a
Add files via upload
lmbirch89 Mar 31, 2020
2093b5d
Add files via upload
lmbirch89 Apr 13, 2020
2369a1e
Add files via upload
lmbirch89 Apr 13, 2020
557047a
Add files via upload
lmbirch89 Apr 13, 2020
eb91e9a
Merge pull request #3 from ESCOMP/master
lmbirch89 Apr 13, 2020
9e6c302
Merge pull request #4 from lmbirch89/master
lmbirch89 Apr 13, 2020
82de28b
Add files via upload
lmbirch89 Apr 13, 2020
32d0854
Add files via upload
lmbirch89 Apr 14, 2020
61cf54f
Merge remote-tracking branch 'escomp/master' into abz_edits324_bill
billsacks Apr 15, 2020
aa0f31f
Add files via upload
lmbirch89 Apr 13, 2020
dd0cbec
Add files via upload
lmbirch89 Apr 15, 2020
bee0e20
Merge branch 'abz_edits324' of github.com:lmbirch89/CTSM into abz_edi…
ekluzek Apr 16, 2020
d55945c
Merge in ekluzek/lunadaylbugs branch, just to show that it doesn't ch…
ekluzek Apr 23, 2020
cb7cc80
Set vxmax/jmax to same as lunadaylbugs branch
ekluzek Apr 23, 2020
824b765
Use Kattge instead of Leuning in Luna
ekluzek Apr 23, 2020
9cb8fcf
@wweider and @lmbirch89 pointed out that some constants need to chang…
ekluzek Apr 24, 2020
34b6dcc
Updated params file with updated stem_leaf and froot_leaf from Leah
ekluzek Apr 24, 2020
159d3b0
Point to a new paramsfile the same as @lmbirch89 latest that only cha…
ekluzek Apr 25, 2020
f1dc3f7
Changes to replicate @olyson's case clm50_ctsm10d089_2deg_GSWP3V1_lmb…
ekluzek Jul 7, 2020
82ed3c1
New tuned jmaxb1 value used in the clm50_ctsm10d089_2deg_GSWP3V1_lmbi…
ekluzek Jul 7, 2020
e49b155
Merge tag 'ctsm1.0.dev104' into lmbirch_wkattge
ekluzek Jul 7, 2020
83e8391
Point to file that also has new field on it season_decid_temperate
ekluzek Jul 17, 2020
97e5202
Add in new namelist items for cnphenology control: onset_thresh_depen…
ekluzek Jul 17, 2020
4ceab4d
Enable the namelist items, so that clm50 results can be identical to …
ekluzek Jul 17, 2020
401b797
Use clm45 and clm50 paramfile that just has the addition of seas_deci…
ekluzek Jul 17, 2020
0f4536d
Make 5 day snow default inactive so that history file field list will…
ekluzek Jul 17, 2020
3ebf16b
Merge tag 'ctsm1.0.dev113' into lmbirch_wkattge
ekluzek Sep 17, 2020
2f51932
Merge tag 'ctsm5.1.dev001' into lmbirch_wkattge
ekluzek Sep 24, 2020
85e0006
Set onset_thresh_depends_on_veg and min_crtical_dayl_depends_on_lat t…
ekluzek Sep 24, 2020
936f85d
Add test for onset_thresh_depends_on_veg set when use_cn is false and…
ekluzek Sep 24, 2020
7d97f5f
Merge tag 'ctsm5.1.dev006' into lmbirch_wkattge
ekluzek Oct 5, 2020
e169812
Merge tag 'ctsm5.1.dev010' into lmbirch_wkattge
ekluzek Oct 23, 2020
0f5472d
Merge tag 'ctsm5.1.dev025' into lmbirch_wkattge
ekluzek Mar 6, 2021
f5fd383
Merge tag 'ctsm5.1.dev030' into lmbirch_wkattge
ekluzek Apr 1, 2021
4182c17
Merge tag 'ctsm5.1.dev033' into lmbirch_wkattge
ekluzek Apr 15, 2021
3e40761
Turn reseed_dead_plants on for AD spinup mode fixes #1307
ekluzek Apr 16, 2021
620d9b2
Remove KO comments and commented out code
ekluzek Apr 16, 2021
8dbd8b5
Set upper_soil_layer with a function call at initialization so that i…
ekluzek Apr 19, 2021
0164f44
Add some comments and formatting, also remove hard-coded check that t…
ekluzek Apr 19, 2021
f78d4cf
Update change files
ekluzek Apr 19, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions bld/CLMBuildNamelist.pm
Original file line number Diff line number Diff line change
Expand Up @@ -1102,6 +1102,12 @@ sub setup_cmdl_spinup {
$nl_flags->{'bgc_spinup'} = "off";
$val = $defaults->get_value($var);
}
# For AD spinup mode by default reseed dead plants
if ( $nl_flags->{$var} ne "off" ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition,
$defaults, $nl, "reseed_dead_plants", clm_accelerated_spinup=>$nl_flags->{$var},
use_cn=>$nl_flags->{'use_cn'} );
}
} else {
if ( defined($nl->get_value("spinup_state")) ) {
$log->fatal_error("spinup_state is accelerated (=1 or 2) which is for a BGC mode of CN or BGC," .
Expand Down Expand Up @@ -1616,6 +1622,11 @@ sub process_namelist_inline_logic {
##################################
setup_logic_bgc_shared($opts, $nl_flags, $definition, $defaults, $nl, $physv);

##################################
# namelist group: cnphenology
##################################
setup_logic_cnphenology($opts, $nl_flags, $definition, $defaults, $nl, $physv);

#############################################
# namelist group: soilwater_movement_inparm #
#############################################
Expand Down Expand Up @@ -2685,6 +2696,24 @@ sub setup_logic_bgc_shared {

#-------------------------------------------------------------------------------

sub setup_logic_cnphenology {
my ($opts, $nl_flags, $definition, $defaults, $nl, $physv) = @_;

my @list = ( "onset_thresh_depends_on_veg", "min_crtical_dayl_depends_on_lat" );
foreach my $var ( @list ) {
if ( &value_is_true($nl_flags->{'use_cn'}) ) {
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, $var,
'phys'=>$physv->as_string(), 'use_cn'=>$nl_flags->{'use_cn'} );
} else {
if ( defined($nl->get_value($var)) ) {
$log->fatal_error("$var should only be set if use_cn is on");
}
}
}
}

#-------------------------------------------------------------------------------

sub setup_logic_supplemental_nitrogen {
#
# Supplemental Nitrogen for prognostic crop cases
Expand Down
15 changes: 12 additions & 3 deletions bld/namelist_files/namelist_defaults_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<spinup_state clm_accelerated_spinup="on" use_fates=".true." phys="clm4_5" >1</spinup_state>
<spinup_state clm_accelerated_spinup="off" >0</spinup_state>

<!-- Reseeding of dead plants normally only done for AD spinup -->
<reseed_dead_plants clm_accelerated_spinup="on" use_cn=".true.">.true.</reseed_dead_plants>
<reseed_dead_plants >.false.</reseed_dead_plants>

<for_testing_run_ncdiopio_tests>.false.</for_testing_run_ncdiopio_tests>

<!-- Set to .true. in namelist to write hist fields master list file -->
Expand Down Expand Up @@ -473,9 +477,9 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<!-- The default filenames are given relative to the root directory
for the CLM2 data in the CESM distribution -->
<!-- Plant function types (relative to {csmdata}) -->
<paramfile phys="clm5_1" >lnd/clm2/paramdata/ctsm51_params.c210208.nc</paramfile>
<paramfile phys="clm5_0" >lnd/clm2/paramdata/clm50_params.c210208.nc</paramfile>
<paramfile phys="clm4_5" >lnd/clm2/paramdata/clm45_params.c210208.nc</paramfile>
<paramfile phys="clm5_1" >lnd/clm2/paramdata/ctsm51_params.c210305.nc</paramfile>
<paramfile phys="clm5_0" >lnd/clm2/paramdata/clm50_params.c210217.nc</paramfile>
<paramfile phys="clm4_5" >lnd/clm2/paramdata/clm45_params.c210217.nc</paramfile>

<!-- ================================================================== -->
<!-- FATES default parameter file -->
Expand Down Expand Up @@ -549,6 +553,11 @@ attributes from the config_cache.xml file (with keys converted to upper-case).
<initial_seed_at_planting use_crop=".true." phys="clm5_0" >3.d00</initial_seed_at_planting>
<initial_seed_at_planting use_crop=".true." phys="clm4_5" >1.d00</initial_seed_at_planting>

<!-- CN Phenology -->
<onset_thresh_depends_on_veg use_cn=".true." phys="clm5_1" >.true.</onset_thresh_depends_on_veg>
<min_crtical_dayl_depends_on_lat use_cn=".true." phys="clm5_1" >.true.</min_crtical_dayl_depends_on_lat>
<onset_thresh_depends_on_veg >.false.</onset_thresh_depends_on_veg>
<min_crtical_dayl_depends_on_lat >.false.</min_crtical_dayl_depends_on_lat>

<!-- turnover time modifications -->
<decomp_depth_efolding phys="clm4_5" >0.5</decomp_depth_efolding>
Expand Down
12 changes: 12 additions & 0 deletions bld/namelist_files/namelist_definition_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1096,6 +1096,18 @@ Initial seed Carbon to use at planting
(only used when CN is on as well as crop)
</entry>

<entry id="onset_thresh_depends_on_veg" type="logical" category="physics"
group="cnphenology">
Phenology onset depends on the vegetation type
(only used when CN is on)
</entry>

<entry id="min_crtical_dayl_depends_on_lat" type="logical" category="physics"
group="cnphenology">
The minimum critical day length for onset depends on latitude
(only used when CN is on)
</entry>

<entry id="use_ozone" type="logical" category="physics"
group="clm_inparm" valid_values="" value=".false.">
Toggle to turn on ozone stress
Expand Down
7 changes: 6 additions & 1 deletion bld/unit_testers/build-namelist_test.pl
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ sub make_config_cache {
#
# Figure out number of tests that will run
#
my $ntests = 1551;
my $ntests = 1552;
if ( defined($opts{'compare'}) ) {
$ntests += 1044;
}
Expand Down Expand Up @@ -446,6 +446,11 @@ sub make_config_cache {
GLC_TWO_WAY_COUPLING=>"FALSE",
phys=>"clm5_0",
},
"onset_threh w SP" =>{ options=>" -envxml_dir . -bgc sp",
namelst=>"onset_thresh_depends_on_veg=.true.",
GLC_TWO_WAY_COUPLING=>"FALSE",
phys=>"clm5_1",
},
"dribble_crphrv w/o CN" =>{ options=>" -envxml_dir . -bgc sp",
namelst=>"dribble_crophrv_xsmrpool_2atm=.true.",
GLC_TWO_WAY_COUPLING=>"FALSE",
Expand Down
116 changes: 116 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,120 @@
===============================================================
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
Expand Down
1 change: 1 addition & 0 deletions doc/ChangeSum
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Tag Who Date Summary
============================================================================================================================
ctsm5.1.dev034 erik 04/19/2021 Bring in Arctic changes to LUNA from Leah Birch
ctsm5.1.dev033 mvertens 04/10/2021 Remove unnecessary settings of nextsw_cday
ctsm5.1.dev032 mvertens 04/10/2021 Fix bugs in co2 from atmosphere
ctsm5.1.dev031 jedwards 04/10/2021 Update externals and fixes for nuopc threading
Expand Down
Loading