Known Problems in CESM1.1.1
CESM1.1.1 is now supported on machines Yellowstone and Titan. CESM1.1.1 has the flexibility to configure cases with many different combinations of component models, grids, and models settings. We are in the process of scientifically validating more resolutions and component sets, primarily targeted to CAM5 component sets. Validated CESM1.1.1 model results and diagnostics are posted under Experiments & Diagnostics.
Component Sets (COMPSETS)
The entry CICE_NAMELIST_OPTS in the env_run.xml file should have value cam5=.true. in cesm1_1, cesm1_1_1, and cesm1_2 beta01 through beta03. It does not. This results in an incorrect cice albedo setting. The workaround is to run the following command in your case directory:
./xmlchange -file env_run.xml -id CICE_NAMELIST_OPTS -val "cam5=.true."
This problem also pertains to release CESM1.1, and development tags cesm1_2_beta01 and cesm1_2_beta02 and cesm1_2_beta03.
BG1850CN at f09 resolution currently has initial conditions that are incompatible with the run configuration, for both CLM and CISM. Thus, this compset-resolution combination should only be used if you provide your own initial conditions for CLM and CISM.
- Download your own copy of CESM1.1 from the CESM website. The location where you download the code is called your $CCSMROOT directory. In what follows $DIN_LOC_ROOT refers your input data directory root.
- Create a new directory $DIN_LOC_ROOT/ocn/iaf.
- Download the interannual data (COREv2) from the GFDL website (http://data1.gfdl.noaa.gov/nomads/forms/mom4/COREv2.html) into $DIN_LOC_ROOT/ocn/iaf. You want to download the "un-Corrected" data. When using the CESM, corrections to the data are made within the data atmosphere, so please be sure to get the uncorrected data. To learn more about this data, see the GFDL website.
- Bug Fix for CESM1_1 - Modify $CCSMROOT/models/ice/dice/bld/namelist_files/namelist_defaults_dice.xml to have the following change:
This is due to mkDepends not being able to find modules with a name different from the file name (in this case, mod_cosp in cosp.F90). This didn't affect testing with standalone CAM, because that was before I merged CAM's mkDepends into the CESM version, and CAM's mkDepends was a little smarter at that time.
I believe that the changes in Machines_130304 and Machines_130304b fixed this, so maybe backporting those will serve to fix this for CESM 1.1.2.
For now, the workaround I'm recommending is for users to simply copy the CAM version of mkDepends ($CCSMROOT/models/atm/cam/bld/mkDepends) into either the Machines directory ($CCSMROOT/scripts/ccsm_utils/Machines) or into the Tools directory of all COSP cases.
This leak can be avoided by setting
collect_column_output=.true.,.true.,.true.,.true.,.true.,.true.,.true.,.true.or by adding
deallocate(ldof)in file models/atm/cam/src/utils/cam_pio_utils.F90 just before the endif statement at the end of routine get_phys_decomp_mdnd.
Some CAM5 cloud and aerosol processes have not been properly limited to prevent them from operating in the higher levels of WACCM, and this is most likely the source of the crash. This WACCM5 configuration is provided only as a preview of model development, and should not be relied upon for scientific runs.
FWSC compset hangs on janus and jaguarpf with threading when using the ifort compiler. It also fails on Yellowstone with threading and the Intel 13.0.1 compiler.
This will be fixed in the next tag update. To around this problem for some resolutions, the user can set ROF_GRID in env_run.xml to "r05". However, not all CAM resolutions will work with this new setting to ROF_GRID.
This is due to a bug in the dynamics-physics coupling, and is known to affect cases with DEBUG = TRUE. Cases with DEBUG = FALSE may also be affected, but there are no known cases where this has occurred. WACCM-X cases should set NTHRDS_ATM to 1 in this CESM version.
CESM allows different coupling frequencies for different models. However, there are some limitations. The coupling frequencies are set via the env_run.xml variables *_NCPL. Generally, the atmosphere, land, and ice model coupling frequencies should match. The ocean model coupling frequency should be equal to or less than the atm coupling frequency. And the runoff model coupling frequency should be greater or equal to the atm coupling frequency and less than or equal to the ocean coupling frequency. The known problem is that there are no checks at setup or run-time that these constraints are met. If they are not met, there can be problems with the simulation. In summary, users should ensure that the following is true,
ATM_NCPL = LND_NCPL = ICE_NCPL >= ROF_NCPL >= OCN_NCPL
especially for fully active configurations.
See the bugzilla report for detailed information and a suggested work around.
When pnetcdf is the ocn output method and the model is stopped on other than a month boundary, the contents of the ocn daily history file may be incomplete. The workaround is to edit models/utils/pio/piolib_mod.F90 and add a call to darray_write_complete in subroutine syncfile:
subroutine syncfile(file) + use piodarray, only : darray_write_complete implicit none type (file_desc_t), target :: file integer :: ierr, msg @@ -2699,6 +2700,7 @@ select case(file%iotype) case( pio_iotype_pnetcdf, pio_iotype_netcdf) + call darray_write_complete(file)
This is fixed in the CESM 1.2 release. To fix the problem in CESM 1.1 or CESM 1.1.1, copy this version of io_netcdf.F90 into $CASEROOT/SourceMods/src.pop2/
Machines / scripts
Currently in env_build.xml we have
<entry id="EXEROOT" value="/blah/$CCSMUSER/$CASE/bld" />
and in env_run.xml
<entry id="RUNDIR" value="/blah/$CCSMUSER/$CASE/run" />
In many cases you may want to change both of these variables, but you cannot currently reference one variable in the other file - that is you cannot set:
<entry id="RUNDIR" value="$EXEROOT/../run" />
The workaround is not to use $EXEROOT in env_run.xml but rather to set it individually
The Machines tag in CESM1.1.1 has updated pleiades support, but the scripts tag still has an older taskmaster.pl, so all cases will produce a bad *.run script.
A workaround is to copy in the taskmaster.pl from a newer scripts tag. A fix will be included in CESM1.2.
This bug also exists in the original CESM 1.1 release. To fix this problem, copy this version of Makefile into $CASEROOT/Tools/
check_maps/ESMF_RegridWeightGenCheckutility used by the
check_map.shscript assume you are building on bluefire, not yellowstone. On yellowstone, the needed environment variable ($ESMFMKFILE) is set automatically when you load the proper ESMF module. For example, run
$ module load esmf $ module load esmf-6.1.1-ncdfio-uni-ONote that this requires the intel module to be loaded already, and will build the executable using the serial (intel) compiler so you can run the utility from the yellowstone login node.
gen_mapping_files/gen_ESMF_mapping_file/create_ESMF_map.shpoint to a directory that does not exist. Replace that script with this version.