Skip to content

Commit

Permalink
Merge pull request #720 from ekluzek/rel2degwndepend
Browse files Browse the repository at this point in the history
Fix a couple small issues, 2-degree no-ciso for WACCMDECK and ndep end year 2101
  • Loading branch information
ekluzek authored May 22, 2019
2 parents 02f8258 + 9fe5429 commit 8041457
Show file tree
Hide file tree
Showing 14 changed files with 236 additions and 128 deletions.
2 changes: 1 addition & 1 deletion Externals.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ required = True
local_path = cime
protocol = git
repo_url = https://github.com/ESMCI/cime
tag = branch_tags/cime5.6.15_a01
tag = cime5.6.16
required = True

[externals_description]
Expand Down
155 changes: 49 additions & 106 deletions bld/namelist_files/namelist_defaults_clm4_5.xml

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions bld/namelist_files/namelist_definition_clm4_5.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1781,9 +1781,9 @@ CLM run type.
<entry id="res" type="char*30" category="default_settings"
group="default_settings"
valid_values=
"conus_30_x8,512x1024,360x720cru,128x256,64x128,48x96,32x64,8x16,94x192,0.23x0.31,0.47x0.63,0.9x1.25,1.9x2.5,2.5x3.33,4x5,10x15,5x5_amazon,1x1_camdenNJ,1x1_vancouverCAN,1x1_mexicocityMEX,1x1_asphaltjungleNJ,1x1_brazil,1x1_urbanc_alpha,1x1_numaIA,1x1_smallvilleIA,0.1x0.1,0.25x0.25,0.5x0.5,3x3min,5x5min,10x10min,0.33x0.33,0.125x0.125,ne4np4,ne16np4,ne30np4,ne60np4,ne120np4,ne240np4,1km-merge-10min">
"conus_30_x8,512x1024,360x720cru,128x256,64x128,48x96,94x192,0.23x0.31,0.47x0.63,0.9x1.25,1.9x2.5,2.5x3.33,4x5,10x15,5x5_amazon,1x1_camdenNJ,1x1_vancouverCAN,1x1_mexicocityMEX,1x1_asphaltjungleNJ,1x1_brazil,1x1_urbanc_alpha,1x1_numaIA,1x1_smallvilleIA,0.1x0.1,0.25x0.25,0.5x0.5,3x3min,5x5min,10x10min,0.33x0.33,0.125x0.125,ne4np4,ne16np4,ne30np4,ne60np4,ne120np4,ne240np4,1km-merge-10min">
Horizontal resolutions
Note: 0.1x0.1, 0.25x0.25, 0.5x0.5, 5x5min, 10x10min, 3x3min and 0.33x0.33 are only used for CLM tools
Note: 0.1x0.1, 0.25x0.25, 0.5x0.5, 5x5min, 10x10min, 3x3min, 1km-merge-10min and 0.33x0.33 are only used for CLM tools
</entry>

<entry id="ssp_rcp" type="char*8" category="default_settings"
Expand Down
8 changes: 6 additions & 2 deletions bld/unit_testers/build-namelist_test.pl
Original file line number Diff line number Diff line change
Expand Up @@ -123,9 +123,9 @@ sub make_env_run {
#
# Figure out number of tests that will run
#
my $ntests = 828;
my $ntests = 820;
if ( defined($opts{'compare'}) ) {
$ntests += 504;
$ntests += 498;
}
plan( tests=>$ntests );

Expand Down Expand Up @@ -1087,6 +1087,10 @@ sub make_env_run {
$res eq "360x720cru" ||
$res eq "512x1024" ) {
next;
# Resolutions not supported on release branch
} elsif ( $res eq "ne120np4" ||
$res eq "conus_30_x8" ) {
next;
}

&make_env_run();
Expand Down
1 change: 1 addition & 0 deletions cime_config/config_component.xml
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,7 @@
<value compset="_CLM50%[^_]*CMIP6DECK[%_]" >$COMP_ROOT_DIR_LND/cime_config/usermods_dirs/cmip6_deck</value>
<value grid="l%1.9x2.5" compset="_CLM50%[^_]*CMIP6DECK[%_]" >$COMP_ROOT_DIR_LND/cime_config/usermods_dirs/cmip6_nociso_deck</value>
<value compset="_CLM50%[^_]*CMIP6WACCMDECK[%_]">$COMP_ROOT_DIR_LND/cime_config/usermods_dirs/cmip6_waccm_deck</value>
<value grid="l%1.9x2.5" compset="_CLM50%[^_]*CMIP6WACCMDECK[%_]">$COMP_ROOT_DIR_LND/cime_config/usermods_dirs/cmip6_waccm_nociso_deck</value>
</values>
<group>run_component_clm</group>
<file>env_case.xml</file>
Expand Down
19 changes: 19 additions & 0 deletions cime_config/config_compsets.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,15 @@
<lname>2000_DATM%GSWP3v1_CLM50%BGC-CROP_SICE_SOCN_MOSART_SGLC_SWAV</lname>
</compset>

<!-- Primarily for testing (stub glc needed for single-point tests); uses Qian
atmospheric forcing simply to give faster datm throughput, which is
particularly relevant for single-point cases (where datm dominates the
runtime) -->
<compset>
<alias>I2000Clm50BgcCropQianGs</alias>
<lname>2000_DATM%QIA_CLM50%BGC-CROP_SICE_SOCN_MOSART_SGLC_SWAV</lname>
</compset>

<compset>
<alias>I2000Clm50BgcCruGs</alias>
<lname>2000_DATM%CRUv7_CLM50%BGC_SICE_SOCN_MOSART_SGLC_SWAV</lname>
Expand Down Expand Up @@ -208,6 +217,16 @@
<lname>HIST_DATM%QIA_CLM50%BGC_SICE_SOCN_MOSART_SGLC_SWAV</lname>
</compset>


<!-- Primarily for testing (stub glc needed for single-point tests); uses Qian
atmospheric forcing simply to give faster datm throughput, which is
particularly relevant for single-point cases (where datm dominates the
runtime) -->
<compset>
<alias>IHistClm50BgcCropQianGs</alias>
<lname>HIST_DATM%QIA_CLM50%BGC-CROP_SICE_SOCN_MOSART_SGLC_SWAV</lname>
</compset>

<!-- Primarily for testing (stub glc needed for single-point tests) -->
<compset>
<alias>IHistClm50BgcCropGs</alias>
Expand Down
9 changes: 2 additions & 7 deletions cime_config/testdefs/ExpectedTestFails.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,15 @@

<expectedFails>
<category name="aux_clm">
<entry issue="#158" >FAIL ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropGs.cheyenne_gnu.clm-monthly RUN</entry>
<entry issue="#158" >FAIL ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropGs.cheyenne_intel.clm-monthly RUN</entry>
<entry issue="#158" >FAIL ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianGs.cheyenne_gnu.clm-monthly RUN</entry>
<entry issue="#158" >FAIL ERS_Lm20_Mmpi-serial.1x1_smallvilleIA.I2000Clm50BgcCropQianGs.cheyenne_intel.clm-monthly RUN</entry>
<entry issue="#384" >FAIL ERP_D_Ld5.f09_g17.I2000Clm50Vic.cheyenne_intel.clm-vrtlay RUN</entry>
<entry issue="#442" >FAIL SMS.f10_f10_musgs.I2000Clm50BgcCrop.hobart_pgi.clm-crop RUN</entry>
<entry issue="#442" >FAIL SMS_D.f10_f10_musgs.I2000Clm50BgcCrop.hobart_pgi.clm-crop RUN</entry>
</category>
<category name="fates">
<entry issue="667" >FAIL ERS_D_Ld5.1x1_brazil.I2000Clm50FatesCruGs.cheyenne_intel.clm-FatesHydro COMPARE_base_rest</entry>
<entry issue="667" >FAIL ERS_D_Ld5.1x1_brazil.I2000Clm50FatesCruGs.hobart_nag.clm-FatesHydro RUN</entry>
<entry issue="714" >PEND ERS_Lm40_Mmpi-serial.1x1_numaIA.I2000Clm50BgcCropGs.cheyenne_gnu.clm-monthly RUN</entry>
<entry issue="714" >PEND ERS_Lm54_Mmpi-serial.1x1_numaIA.I2000Clm50BgcCropGs.cheyenne_gnu.clm-cropMonthOutput RUN</entry>
<entry issue="714" >PEND ERS_Ly3_Mmpi-serial.1x1_smallvilleIA.IHistClm50BgcCropGs.cheyenne_gnu.clm-cropMonthOutput RUN</entry>
<entry issue="714" >PEND ERS_Ly6_Mmpi-serial.1x1_smallvilleIA.IHistClm50BgcCropGs.cheyenne_gnu.clm-cropMonthOutput RUN</entry>
<entry issue="714" >PEND ERS_Ly20_Mmpi-serial.1x1_numaIA.I2000Clm50BgcDvCropQianGs.cheyenne_gnu.clm-cropMonthOutput RUN</entry>
<entry issue="NGEET/fates/#510" >FAIL SMS_Lm3_D_Mmpi-serial.1x1_brazil.I2000Clm50FatesCruGs.hobart_nag.clm-FatesHydro MEMLEAK</entry>
</category>
</expectedFails>
23 changes: 15 additions & 8 deletions cime_config/testdefs/testlist_clm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -961,7 +961,7 @@
<option name="wallclock">00:20:00</option>
</options>
</test>
<test name="ERS_Lm20_Mmpi-serial" grid="1x1_smallvilleIA" compset="I2000Clm50BgcCropGs" testmods="clm/monthly">
<test name="ERS_Lm20_Mmpi-serial" grid="1x1_smallvilleIA" compset="I2000Clm50BgcCropQianGs" testmods="clm/monthly">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
Expand All @@ -971,7 +971,7 @@
<option name="comment" >tests mid-year restart, with the restart file being written in the middle of the first year; 12-15-2017: now that we generally use init_interp, this test needs to be changed to point to a blank finidat file to truly test mid-year restart in the first year</option>
</options>
</test>
<test name="ERS_Lm40_Mmpi-serial" grid="1x1_numaIA" compset="I2000Clm50BgcCropGs" testmods="clm/monthly">
<test name="ERS_Lm40_Mmpi-serial" grid="1x1_numaIA" compset="I2000Clm50BgcCropQianGs" testmods="clm/monthly">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
Expand All @@ -981,10 +981,9 @@
<option name="comment" >tests mid-year restart, with the restart file being written in the middle of the second year</option>
</options>
</test>
<test name="ERS_Lm54_Mmpi-serial" grid="1x1_numaIA" compset="I2000Clm50BgcCropGs" testmods="clm/cropMonthOutput">
<test name="ERS_Lm54_Mmpi-serial" grid="1x1_numaIA" compset="I2000Clm50BgcCropQianGs" testmods="clm/cropMonthOutput">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
</machines>
<options>
<option name="wallclock">01:40:00</option>
Expand All @@ -994,7 +993,6 @@
<test name="ERS_Ly20_Mmpi-serial" grid="1x1_numaIA" compset="I2000Clm50BgcDvCropQianGs" testmods="clm/cropMonthOutput">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
</machines>
<options>
<option name="wallclock">01:40:00</option>
Expand All @@ -1018,7 +1016,7 @@
<option name="wallclock">01:40:00</option>
</options>
</test>
<test name="ERS_Ly3_Mmpi-serial" grid="1x1_smallvilleIA" compset="IHistClm50BgcCropGs" testmods="clm/cropMonthOutput">
<test name="ERS_Ly3_Mmpi-serial" grid="1x1_smallvilleIA" compset="IHistClm50BgcCropQianGs" testmods="clm/cropMonthOutput">
<machines>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
Expand Down Expand Up @@ -1063,9 +1061,8 @@
<option name="comment" >include a long Clm45 test, and include a production intel test of Clm45</option>
</options>
</test>
<test name="ERS_Ly6_Mmpi-serial" grid="1x1_smallvilleIA" compset="IHistClm50BgcCropGs" testmods="clm/cropMonthOutput">
<test name="ERS_Ly6_Mmpi-serial" grid="1x1_smallvilleIA" compset="IHistClm50BgcCropQianGs" testmods="clm/cropMonthOutput">
<machines>
<machine name="cheyenne" compiler="gnu" category="aux_clm"/>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
</machines>
<options>
Expand Down Expand Up @@ -2045,6 +2042,16 @@
<option name="comment" >The main point of this test is simply to make sure that the CMIP6WACCMDECK moifierd works. (This configuration is basically the same as I1850Clm50BgcCropCmip6, but without cmip6_glaciers_virtual_antarctica - so we don't need huge coverage of this.) Month-long so that we actually get some history output (because this test exercises a usermods directory with only monthly and yearly output).</option>
</options>
</test>
<test name="SMS_Lm1" grid="f19_g17" compset="I1850Clm50BgcCropCmip6waccm" testmods="clm/basic">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm"/>
</machines>
<options>
<option name="wallclock">00:20:00</option>
<option name="comment" >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 </option>
</options>
</test>
<test name="SMS_Lm1_D" grid="f10_f10_musgs" compset="I1850Clm50BgcCrop" testmods="clm/output_crop_highfreq">
<machines>
<machine name="cheyenne" compiler="intel" category="aux_clm">
Expand Down
17 changes: 17 additions & 0 deletions cime_config/usermods_dirs/cmip6_waccm_nociso_deck/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
WACCM DECK runs should be configured similarly to CAM DECK runs, but
without virtual elevation classes over Antarctica. At 2-degree we
+also decided to NOT turn on Carbon isotopes.

(2018-10-22) In discussions between Bill Sacks and Bill Lipscomb: We
have decided NOT to turn on virtual Antarctica columns for any of the
WACCM simulations (DECK or ScenarioMIP): these weren't turned on in the
WACCM PI-Control or historical runs (either by accident or
intentionally: I'm not sure which, and can't find emails describing this
decision). Since this setting needs to be compatible with the REFCASE,
it's simpler if we keep it consistent for all WACCM runs, and there
seems to be only limited value in turning on virtual Antarctica columns
in the remaining WACCM runs (1% CO2, 4xCO2 and ScenarioMIP) when they
weren't on in the WACCM PI-Control or Historical runs. And Mike Mills
says that there won't be any more sharing of initial conditions between
CAM and WACCM CMIP6 runs, so it's fine if the two sets remain different
in this respect.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
../_includes/cmip6_glaciers_cplhist
../output_crop
2 changes: 1 addition & 1 deletion doc/.release-ChangeLog_template
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ Testing:
Summary of Answer changes:
-------------------------

Baseline version for comparison:
If the tag used for baseline comparisons was NOT the previous tag, note that here: previous

Changes answers relative to baseline:

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
============================================================================================================================
release-clm5.0.24 erik 05/22/2019 Correct ndep end year for SSPs, 2-degree CMIP6WACCMDECK with C-isotopes off, fixes mksurfdata for high resolution
release-clm5.0.23 erik 05/15/2019 Update cime to bring in CO2 transient files for the CMIP6 SSP's as well as presaero for three of them
release-clm5.0.22 erik 05/08/2019 Fix carbon isotope bug that caused wrong answers for isotopes under transient land-use change
release-clm5.0.21 erik 05/03/2019 New ndep files, update fates, fix some issues
Expand Down
99 changes: 99 additions & 0 deletions doc/release-clm5.0.ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,103 @@
===============================================================
Tag name: release-clm5.0.24
Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326)
Date: Wed May 22 13:33:48 MDT 2019
One-line Summary: Correct ndep end year for SSPs, 2-degree CMIP6WACCMDECK with C-isotopes off, fixes mksurfdata for high resolution

Purpose of this version:
------------------------

Fix a couple small issues. Correct end year for ndep for SSP's so can run to the end of 2100. Some fixes to mksurfdata_map for high
resolution surface datasets. Have 2-degree WACCM-CMIP6DECK match a user-mod directory without carbon isotopes on. Remove the
ne120np4 and conus_30_x8 surface dataset files, as they can't be used (see #673).

Remove 8x16, 32x64 resolutions as they are no longer needed and there are problems with them. Add in the mapping files needed for
94x192. Check that special landunit percent area's is not less than 0.0, and don't let PCT_WET be less than zero for areas with
ocean (see #673).

Change some of the longer single point tests to use Qian forcing (as faster, less memory, less problems). Add compsets for this.
This change was also done on master.

CTSM Master Tag This Corresponds To: ctsm1.0.dev025 (with many other changes)

Summary of changes:
-------------------

Issues fixed (include CTSM Issue #): #673, #714, #716, #717, #726

Fixes #726 -- Some resolutions fail in mksurfdata_map
Fixes #717 -- Change end year for ndep to 2101 for SSP's
Fixes #716 -- 2 degree CMIP6WACCMDECK needs Carbon isotopes off
Fixes #714 -- Fails on cheyenne for some longer single point simulations
Fixes #673 -- Ice shelf wetland fix in mksurfdata_map can lead to glacier+lake > 100% on surface datasets

Science changes since: release-clm5.0.23
Turn Carbon isotopes off for 2-degree CMIP6WACCMDECK

Software changes since: release-clm5.0.23
End year for ndep is now 2101, so will run to end of 2100
Fixes to mksurfdata_map for high resolutions

Changes to User Interface since: release-clm5.0.23
Remove ne120np, conus_30_x8 surface datasets
Remove 8x16, and 32x64 resolutions
Add 94x192 mapping files, so can work in mksurfdata_map

Testinw:
--------

[PASS means all tests PASS and OK means tests PASS other than expected fails.]

build-namelist tests:

cheyenne - PASS (15 SSP tests are different as expected)

unit-tests (components/clm/src):

cheyenne - PASS
hobart ---PASS

tools-tests (components/clm/test/tools):

cheyenne - PASS
hobart --- PASS

regular tests (aux_clm):

cheyenne_intel ---- OK
cheyenne_gnu ------ OK
hobart_nag -------- OK
hobart_pgi -------- OK
hobart_intel ------ OK

Summary of Answer changes:
-------------------------

If the tag used for baseline comparisons was NOT the previous tag, note that here: previous

Changes answers relative to baseline: No

Detailed list of changes:
------------------------

Externals being used: (cime goes from branch to full tag)

cism: release-cesm2.0.04
rtm: release-cesm2.0.02
mosart: release-cesm2.0.03
cime: cim5.6.16
FATES: fates_s1.21.0_a7.0.0_br_rev2
PTCLM: PTCLM2_180611

CTSM Tag versions pulled over from master development branch: None

Pull Requests that document the changes (include PR ids): #720
(https://github.com/ESCOMP/ctsm/pull)

#720 -- Fix a couple small issues, 2-degree no-ciso for WACCMDECK and ndep end year 2101

===============================================================
===============================================================
Tag name: release-clm5.0.23
Originator(s): erik (Erik Kluzek)
Date: Wed May 15 15:31:15 MDT 2019
Expand Down
22 changes: 21 additions & 1 deletion tools/mksurfdata_map/src/mksurfdat.F90
Original file line number Diff line number Diff line change
Expand Up @@ -705,7 +705,7 @@ program mksurfdat
pctwet(n) = 100._r8 - pctlak(n)
pctgla(n) = 0._r8
else
pctwet(n) = 100._r8 - pctgla(n) - pctlak(n)
pctwet(n) = max(100._r8 - pctgla(n) - pctlak(n), 0.0_r8)
end if
pcturb(n) = 0._r8
call pctnatpft(n)%set_pct_l2g(0._r8)
Expand Down Expand Up @@ -1319,6 +1319,26 @@ subroutine normalizencheck_landuse(ldomain)
do n = 1,ns_o

! Check preconditions
if ( pctlak(n) < 0.0_r8 )then
write(6,*) subname, ' ERROR: pctlak is negative!'
write(6,*) 'n, pctlak = ', n, pctlak(n)
call abort()
end if
if ( pctwet(n) < 0.0_r8 )then
write(6,*) subname, ' ERROR: pctwet is negative!'
write(6,*) 'n, pctwet = ', n, pctwet(n)
call abort()
end if
if ( pcturb(n) < 0.0_r8 )then
write(6,*) subname, ' ERROR: pcturb is negative!'
write(6,*) 'n, pcturb = ', n, pcturb(n)
call abort()
end if
if ( pctgla(n) < 0.0_r8 )then
write(6,*) subname, ' ERROR: pctgla is negative!'
write(6,*) 'n, pctgla = ', n, pctgla(n)
call abort()
end if

suma = pctlak(n) + pctwet(n) + pcturb(n) + pctgla(n)
if (suma > (100._r8 + tol_loose)) then
Expand Down

0 comments on commit 8041457

Please sign in to comment.