Bill Sacks 12-26-14 This file documents the procedure used to generate the following files, with date-stamp 141226: clmi.I1850CRUCLM45BGC.0241-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc clmi.I1850CRUCLM45BGC.0241-01-01.1.9x2.5_g1v6_simyr1850_c141226.nc clmi.I1850CRUCLM45BGC.0241-01-01.360x720cru_hcru_simyr1850_c141226.nc clmi.I1850CRUCLM45BGC.0241-01-01.ne30np4_g1v6_simyr1850_c141226.nc clmi.I1850CRUCLM45BGCDV.0241-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc clmi.I1850CRUCLM45SP.0521-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc clmi.I2000CLM45CRUBGC.2000-01-01.0.9x1.25_gx1v6_simyr2000_c141226.nc clmi.ICRUCLM45BGCCROPmp24.0241-01-01.1.9x2.5_g1v6_simyr2000_c141226.nc clmi.ICRUCLM45BGCCROPmp24Irrig.0241-01-01.10x15_USGS_simyr2000_c141226.nc clmi.ICRUCLM45SP.2000-01-01.0.9x1.25_g1v6_simyr2000_c141226.nc --- PURPOSE --- I have created all new surface datasets, which just differ from the old surface datasets by roundoff in some of the PCT fields. However, this causes problems in the consistency checks in the code (which try to ensure that your initial conditions file is compatible with your surface dataset). In particular, two consistency checks were violated: (1) checks of the surface_dataset metadata on the initial conditions files, and (2) checks to ensure that patch%wtlunit agrees between the initial conditions file and the surface dataset (#2 was violated for a number of points where the natveg landunit has 0 weight, but the new mksurfdata_map changed the breakdown of the individual PFTs on that 0-weight landunit). I first tried simply interpinic'ing the old initial conditions (140111), using the first part of the procedure documented below. However, in comparing runs done with those datasets with runs done with the datasets described here, I found differences. This made me wonder if the interpinic process introduced some unknown differences into the initial conditions. To be safe, I'm using the one-off initial conditions files described here, whose differences from the originals are well-understood. Specifically, the compare_hist for this run failed: FAIL SMS_Ld5.f19_g16.IRCP45CLM45BGC.yellowstone_pgi.clm-decStart.compare_hist.clm4_5_1_r102 although this one passed: PASS SMS.f09_g16.ICRUCLM45.yellowstone_intel.clm-af_bias_v5.compare_hist.clm4_5_1_r102 making me suspect one or more BGC-related fields as the culprit here. --- PROCEDURE --- (1) I first created initial conditions files using the online interpinic, in order to have files with the correct weights, based on the new surface datasets. This was done by introducing the following source code diffs: Index: src/main/controlMod.F90 =================================================================== --- src/main/controlMod.F90 (revision 66512) +++ src/main/controlMod.F90 (working copy) @@ -460,6 +460,10 @@ call mpi_bcast (use_noio, 1, MPI_LOGICAL, 0, mpicom, ier) ! initial file variables + finidat_interp_source = finidat + finidat_interp_dest = finidat + finidat_interp_dest((len_trim(finidat) - 9):len_trim(finidat)) = 'c141224.nc' + finidat = ' ' call mpi_bcast (nrevsn, len(nrevsn), MPI_CHARACTER, 0, mpicom, ier) call mpi_bcast (finidat, len(finidat), MPI_CHARACTER, 0, mpicom, ier) call mpi_bcast (finidat_interp_source, len(finidat_interp_source), MPI_CHARACTER, 0, mpicom, ier) and then running this test list: SMS_Ln3.f09_g16.I1850CLM45.yellowstone_intel SMS_Ln3.f09_g16.I1850CLM45BGC.yellowstone_intel SMS_Ln3.f09_g16.ICLM45.yellowstone_intel SMS_Ln3.f09_g16.ICLM45BGC.yellowstone_intel SMS_Ln3.f19_g16.I1850CLM45BGC.yellowstone_intel SMS_Ln3.hcru_hcru.I1850CLM45BGC.yellowstone_intel SMS_Ln3.ne30_g16.I1850CLM45BGC.yellowstone_intel SMS_Ln3.f09_g16.I1850CRUCLM45BGCDV.yellowstone_intel SMS_Ln3.f19_g16.ICLM45BGCCROP.yellowstone_intel SMS_Ln3.f10_f10.ICLM45BGCCROP.yellowstone_intel.clm-irrigOn_reduceOutput This step created files with a date stamp of c141224. However, as noted above, I did not use these files as is, because this led to inexplicable additional differences. Hence the following steps: (2) I then created a version of the initial conditions files that were identical to the originals (i.e., the 140111 versions), except that the various subgrid weights were taken from the 141224 files, so that the subgrid weights would be consistent with the new surface datasets: for fl in *c140111.nc; do echo $fl; cp $fl ${fl/140111/141226}; ncks -A -v land1d_wtxy,cols1d_wtxy,cols1d_wtlnd,pfts1d_wtxy,pfts1d_wtlnd,pfts1d_wtcol ${fl/140111/141224} ${fl/140111/141226}; done (3) Then, in order to prevent a failure of the consistency check that checks the surface_dataset metadata on the initial conditions files, I overwrote the surface_dataset attribute in the new initial conditions files: ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_0.9x1.25_simyr1850_c141219.nc" clmi.I1850CRUCLM45BGC.0241-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_1.9x2.5_simyr1850_c141219.nc" clmi.I1850CRUCLM45BGC.0241-01-01.1.9x2.5_g1v6_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_360x720cru_simyr1850_c141219.nc" clmi.I1850CRUCLM45BGC.0241-01-01.360x720cru_hcru_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_ne30np4_simyr1850_c141219.nc" clmi.I1850CRUCLM45BGC.0241-01-01.ne30np4_g1v6_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_0.9x1.25_simyr1850_c141219.nc" clmi.I1850CRUCLM45BGCDV.0241-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_0.9x1.25_simyr1850_c141219.nc" clmi.I1850CRUCLM45SP.0521-01-01.0.9x1.25_g1v6_simyr1850_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_0.9x1.25_simyr2000_c141219.nc" clmi.I2000CLM45CRUBGC.2000-01-01.0.9x1.25_gx1v6_simyr2000_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_1.9x2.5_mp24_simyr2000_c141219.nc" clmi.ICRUCLM45BGCCROPmp24.0241-01-01.1.9x2.5_g1v6_simyr2000_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_10x15_mp24_simyr2000_c141219.nc" clmi.ICRUCLM45BGCCROPmp24Irrig.0241-01-01.10x15_USGS_simyr2000_c141226.nc ncatted -a surface_dataset,global,o,c,"/glade/p/cesmdata/cseg/inputdata/lnd/clm2/surfdata_map/surfdata_0.9x1.25_simyr2000_c141219.nc" clmi.ICRUCLM45SP.2000-01-01.0.9x1.25_g1v6_simyr2000_c141226.nc