diff --git a/bld/namelist_files/namelist_defaults_clm4_5.xml b/bld/namelist_files/namelist_defaults_clm4_5.xml index 69463518b3..01384e9e6f 100644 --- a/bld/namelist_files/namelist_defaults_clm4_5.xml +++ b/bld/namelist_files/namelist_defaults_clm4_5.xml @@ -1098,7 +1098,7 @@ lnd/clm2/surfdata_map/landuse.timeseries_ne30np4_hist_16pfts_Irrig_CMIP6_simyr18 1997 1997 -lnd/clm2/prescribed_data/LFMIP-pdLC-SST.H2OSOI.0.9x1.25.20levsoi.natveg.climo1980-2014.MONS_c190709.nc +lnd/clm2/prescribed_data/LFMIP-pdLC-SST.H2OSOI.0.9x1.25.20levsoi.natveg.1980-2014.MONS_climo.c190716.nc linear 0 @@ -1211,24 +1211,40 @@ lnd/clm2/surfdata_map/landuse.timeseries_ne30np4_hist_16pfts_Irrig_CMIP6_simyr18 2106 2015 -2000 -2000 +2015 +2106 +2015 2000 2000 +2000 +2000 + 1850 1850 +1850 +1850 + 2000 2000 +2000 +2000 + 2000 2000 2000 2000 +2000 +2000 + +2000 +2000 + lnd/clm2/urbandata/CLM50_tbuildmax_Oleson_2016_0.9x1.25_simyr1849-2106_c160923.nc lnd/clm2/urbandata/CLM45_tbuildmax_Oleson_2016_0.9x1.25_simyr1849-2106_c160923.nc diff --git a/bld/namelist_files/use_cases/1850_control.xml b/bld/namelist_files/use_cases/1850_control.xml index 18c5959c78..31d3b3eb3d 100644 --- a/bld/namelist_files/use_cases/1850_control.xml +++ b/bld/namelist_files/use_cases/1850_control.xml @@ -32,9 +32,15 @@ 1850 1850 +1850 +1850 + lnd/clm2/ndepdata/fndep_clm_WACCM6_CMIP6piControl001_y21-50avg_1850monthly_0.95x1.25_c180802.nc + +lnd/clm2/ndepdata/fndep_clm_WACCM6_CMIP6piControl001_y21-50avg_1850monthly_0.95x1.25_c180802.nc cycle diff --git a/bld/namelist_files/use_cases/1850_noanthro_control.xml b/bld/namelist_files/use_cases/1850_noanthro_control.xml index bba281aee6..971b0cf410 100644 --- a/bld/namelist_files/use_cases/1850_noanthro_control.xml +++ b/bld/namelist_files/use_cases/1850_noanthro_control.xml @@ -42,6 +42,9 @@ 1850 1850 +1850 +1850 + NONE diff --git a/bld/namelist_files/use_cases/2000_control.xml b/bld/namelist_files/use_cases/2000_control.xml index ca7c1ac5cd..31a7eb1a50 100644 --- a/bld/namelist_files/use_cases/2000_control.xml +++ b/bld/namelist_files/use_cases/2000_control.xml @@ -33,4 +33,7 @@ 2000 2000 +2000 +2000 + diff --git a/bld/namelist_files/use_cases/2010_control.xml b/bld/namelist_files/use_cases/2010_control.xml index e61ac4dd4b..244009df02 100644 --- a/bld/namelist_files/use_cases/2010_control.xml +++ b/bld/namelist_files/use_cases/2010_control.xml @@ -33,4 +33,7 @@ 2010 2010 +2010 +2010 + diff --git a/bld/namelist_files/use_cases/20thC_transient.xml b/bld/namelist_files/use_cases/20thC_transient.xml index e8970b59bf..c9de2a1f58 100644 --- a/bld/namelist_files/use_cases/20thC_transient.xml +++ b/bld/namelist_files/use_cases/20thC_transient.xml @@ -49,4 +49,8 @@ 2106 1850 +1850 +2106 +1850 + diff --git a/cime_config/testdefs/ExpectedTestFails.xml b/cime_config/testdefs/ExpectedTestFails.xml index ca1fa904fa..9be3edee3b 100644 --- a/cime_config/testdefs/ExpectedTestFails.xml +++ b/cime_config/testdefs/ExpectedTestFails.xml @@ -14,5 +14,7 @@ FAIL ERS_D_Ld5.1x1_brazil.I2000Clm50FatesCruGs.cheyenne_intel.clm-FatesHydro COMPARE_base_rest FAIL ERS_D_Ld5.1x1_brazil.I2000Clm50FatesCruGs.hobart_nag.clm-FatesHydro RUN FAIL SMS_Lm3_D_Mmpi-serial.1x1_brazil.I2000Clm50FatesCruGs.hobart_nag.clm-FatesHydro MEMLEAK + FAIL ERS_D_Ld5.1x1_brazil.I2000Clm50FatesCruGs.izumi_nag.clm-FatesHydro RUN + FAIL SMS_Lm3_D_Mmpi-serial.1x1_brazil.I2000Clm50FatesCruGs.izumi_nag.clm-FatesHydro MEMLEAK diff --git a/cime_config/testdefs/testmods_dirs/clm/prescribed/user_nl_clm b/cime_config/testdefs/testmods_dirs/clm/prescribed/user_nl_clm index 635c2f9562..c2290397dd 100644 --- a/cime_config/testdefs/testmods_dirs/clm/prescribed/user_nl_clm +++ b/cime_config/testdefs/testmods_dirs/clm/prescribed/user_nl_clm @@ -1,3 +1,6 @@ use_soil_moisture_streams = .true. use_lai_streams = .true. hist_fincl1 += 'H2OSOI_PRESCRIBED_GRC' + soilm_tintalgo = 'lower' ! set time interpolation to use lower value, so can compare to input dataset + lai_tintalgo = 'lower' ! set time interpolation to use lower value, so can compare more directly to input dataset + soilm_ignore_data_if_missing = .true. diff --git a/doc/ChangeSum b/doc/ChangeSum index 39801fcae5..9f24b313a4 100644 --- a/doc/ChangeSum +++ b/doc/ChangeSum @@ -1,5 +1,6 @@ Tag Who Date Summary ============================================================================================================================ +release-clm5.0.29 erik 11/19/2019 Some answer changes needed for prescribed soil-moisture and clm4_5 defaults (1850-ndep, and urbantv settings) release-clm5.0.28 erik 11/14/2019 Several bit-for-bit fixes especially around soil-moisture streams release-clm5.0.27 erik 08/13/2019 Add presoribed soil moisture streams as an option, and a few fixes release-clm5.0.26 sacks 07/29/2019 Add a CN precision control call to fix problems related to small negative values diff --git a/doc/release-clm5.0.ChangeLog b/doc/release-clm5.0.ChangeLog index fdf02512f8..06e77c0a1d 100644 --- a/doc/release-clm5.0.ChangeLog +++ b/doc/release-clm5.0.ChangeLog @@ -1,4 +1,118 @@ =============================================================== +Tag name: release-clm5.0.29 +Originator(s): erik (Erik Kluzek,UCAR/TSS,303-497-1326) +Date: Tue Nov 19 12:14:02 MST 2019 +One-line Summary: Some answer changes needed for prescribed soil-moisture and clm4_5 defaults (1850-ndep, and urbantv settings) + +Purpose of this version: +------------------------ + +Some answer changes needed for prescribed soil-moisture. And clm4_5 defaults for 1850 Nitrogen deposition and or urbantv +settings were made to be consistent with clm5_0. + + +CTSM Master Tag This Corresponds To: ctsm1.0.dev025 (with many other changes) + +Summary of changes: +------------------- + +Issues fixed (include CTSM Issue #): #175, #817, #832 #833 + + Fixes #817 -- Have clm4_5 use the same ndep file as clm5_0 for 1850 + Fixes #175 -- Have clm4_5 use the same settings for urbantv years as clm5_0 + Fixes #832 -- don't override with missing value, let the model set it + Fixes #833 -- time interpolation of soilm causes bad values for some missing points + +Science changes since: release-clm5.0.28 + + Defaults for clm4_5, prescribed soil-moisture + + Some defaults were changed for clm4_5 to be consistent with clm5_0 (use of the same 1850-ndep file, + and changes in the urbantv year settings) + + Prescribed soil-moisture was changes so that if time-interpolation produces large values, they + will be marked as missing (spval). Also points where the input prescribed soil moisture is missing + are now ignored (and run normally). + +Software changes since: release-clm5.0.28 + + +Changes to User Interface since: release-clm5.0.28 + + Behavior of soilm_ignore_data_if_missing changes! + + Behavior of soilm_ignore_data_if_missing changes. Now if true will ignore any points + where the prescribed soil moisture dataset is missing. So for these points the model + will run normally (as if prescribed soil moisture was off). Before it would mark them + as missing, but modify h2osoi_ice/liq in an odd fashion. + +Testing: +-------- + + [PASS means all tests PASS and OK means tests PASS other than expected fails.] + + build-namelist tests: + + cheyenne - PASS (10 tests are different) + + unit-tests (components/clm/src): + + cheyenne - PASS + hobart --- PASS + + tools-tests (components/clm/test/tools): + + cheyenne - NOT run + hobart --- NOT run + + PTCLM testing (components/clm/tools/shared/PTCLM/test): + + cheyenne - NOT run + hobart --- NOT run + + regular tests (aux_clm): + + cheyenne_intel ---- OK + cheyenne_gnu ------ OK + izumi_nag --------- OK + izumi_pgi --------- OK + izumi_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: Yes for some! prescribed soil-moisture and clm4_5 (1850-ndep, and urbantv settings) + + Summarize any changes to answers, i.e., + - what code configurations: prescribed soil-moisture, or clm4_5 due to default changes in 1850-ndep and urbantv + - what platforms/compilers: all + - nature of change: similar climate + + Will new REFCASES need to be made for cesm and/or CAM?: No + +Detailed list of changes: +------------------------ + +Externals being used: No changes + + cism: release-cesm2.0.04 + rtm: release-cesm2.0.03 + mosart: release-cesm2.0.03 + cime: cim5.6.25 + 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): #841 +(https://github.com/ESCOMP/ctsm/pull) + + #841 -- Some answer changes for release branch + +=============================================================== +=============================================================== Tag name: release-clm5.0.28 Originator(s): erik (Erik Kluzek) Date: Thu Nov 14 23:03:39 MST 2019 diff --git a/src/biogeophys/SoilMoistureStreamMod.F90 b/src/biogeophys/SoilMoistureStreamMod.F90 index 6a6f2fa3b5..6f625c52a4 100644 --- a/src/biogeophys/SoilMoistureStreamMod.F90 +++ b/src/biogeophys/SoilMoistureStreamMod.F90 @@ -344,9 +344,9 @@ subroutine PrescribedSoilMoistureInterp(bounds, soilstate_inst, & ! If soil moiture is being interpolated in time and the result is ! large that probably means one of the two data points is missing (set to spval) - !if ( h2osoi_vol_prs(g,j) > 10.0_r8 .and. (h2osoi_vol_prs(g,j) /= spval) )then - !h2osoi_vol_prs(g,j) = spval - !end if + if ( h2osoi_vol_prs(g,j) > 10.0_r8 .and. (h2osoi_vol_prs(g,j) /= spval) )then + h2osoi_vol_prs(g,j) = spval + end if end do end do @@ -358,8 +358,7 @@ subroutine PrescribedSoilMoistureInterp(bounds, soilstate_inst, & g = col%gridcell(c) ig = g_to_ig(g) - if (lun%itype(col%landunit(c)) == istsoil ) then - !if ( (lun%itype(col%landunit(c)) == istsoil) .or. (lun%itype(col%landunit(c)) == istcrop) ) then + if ( (lun%itype(col%landunit(c)) == istsoil) .or. (lun%itype(col%landunit(c)) == istcrop) ) then ! this is a 2d field (gridcell/nlevsoi) ! do j = 1, nlevsoi @@ -375,7 +374,7 @@ subroutine PrescribedSoilMoistureInterp(bounds, soilstate_inst, & ! file is different if ( (h2osoi_vol_prs(g,j) == spval) .and. (h2osoi_vol_initial /= spval) )then if ( soilm_ignore_data_if_missing )then - !cycle + cycle else write(iulog,*) 'Input soil moisture dataset is not vegetated as expected: gridcell=', & g, ' active = ', col%active(c)