Known Limitations in CLM4/CESM1.1.0 Nov/08/2012 As opposed to the KnownBugs file where we expect that eventually we will find a fix, these are limitations that we do NOT have plans to fix. They are simply known limitations that we describe workarounds for below. In the course of doing other work they may be resolved, but we do not plan on addressing them directly. We reference "bug numbers" in this list, but these are things where those "bugs" were closed out with a "will-not-fix". ==================================================================================== Bug Number: 1355 tlai is zero for first two time-steps in CLMSP tlai is zero for time-steps 0, and 1 when doing a startup simulation. For CLMSP EcosystemDyn is only done when doalb is true, and it's NOT called at initialization. At initialization for CLMSP it doesn't setup tlai, and only does a barebones setting of vars. In contrast CLMCN calls it's EcosystemDyn every time step (and not just when doalb is true), and at initalization it calls CNAllocation and CNPhenology, so it's got at least something going. With an initialization more similar to CN it would at least make sure tlai is set. ==================================================================================== Bug Number: 1310 Difference in restart files for differing number of tasks/threads This is from Bill Sacks... With Mariana's help, I believe I have uncovered a minor bug in the urban model; this came up while testing the new CLM multi-instance code that I have been working on. This appears as a difference in the lnd restart files depending on the number of processors. It's possible that this is unimportant, but I thought I'd let you know anyway. In particular, the two variables albgrd and albgri differ in some urban landunits in the CLM restart files. I have confirmed this with the latest clm tag (clm4_0_26), doing a 5-day run with resolution f19_g16, and comparing results using 64 vs. 16 tasks for the land model. You can see the output of cprnc in /ptmp/sacks/archive/clm4_0_26.init.quarterPEs/rest/0001-01-06-00000/cprnc.out I believe that what is going on is the following: (1) In UrbanMod.F90: UrbanAlbedo: A count is made of the number of urban landunits with coszen > 0 (num_solar); note that this count is just of the number of landunits that this processor is responsible for; thus, this is where the # PE-dependence comes in, I think. (2) Later in that subroutine, a bunch of calculations are done if num_solar > 0 -- i.e., if this PE is responsible for at least one urban landunit with coszen > 0. Note that many of these calculations are done for all landunits, even ones for which coszen = 0. This introduces the possibility for different results depending on the decomposition. (3) The particular difference that I am seeing is in albgrd & albgri. These are initialized to 0 at the start of the subroutine, and so remain 0 on any PE for which num_solar = 0. However, for PEs with num_solar > 0, landunits that have coszen = 0 end up getting albgrd = albgri = 1. This is because the calculation of albgrd & albgri depends on the values of the sref_* variables, which are initialized to 1 (and stay at 1 for any landunit for which coszen = 0). ==================================================================================== Bug Number: 1147 mkgriddata regional grids can't straddle over Greenwich mkgriddata is not able to run for any domain that has Eastern edge > Western edge, because it straddles across the 0 degree longitude line. The workaround is to divide the domain into two and run two regional grids. ==================================================================================== Bug Number: 1110 dtlimit error with datm8 when a full year isn't available datm8 dies with a dtlimit error as follows when your atm forcing data doesn't include an entire year (such as the MexicoCity and Vancouver urban test sites). (shr_dmodel_readLBUB) reading file: /fs/cgd/csm/inputdata/atm/datm7/CLM1PT_data/mexicocityMEX.c080124/clm1pt-1993-12.nc 160 (datm_comp_run) atm: model date 19931207 57600s (shr_dmodel_readLBUB) reading file: /fs/cgd/csm/inputdata/atm/datm7/CLM1PT_data/mexicocityMEX.c080124/clm1pt-1993-12.nc 1 (shr_strdata_advance) ERROR: dt limit1 358.375011574074051 0.416666666666666297E-01 1.50000000000000000 (shr_strdata_advance) ERROR: dt limit2 19931207 61199 19941201 7200 (shr_sys_abort) ERROR: (shr_strdata_advance) ERROR dt limit (shr_sys_abort) WARNING: calling shr_mpi_abort() and stopping This is because the model runs out of data and loops around to the beginning of the year, and hence has a large time-step difference to the rest of the data when it loops around. You can remove this problem if you increase dtlimit (normally 1.5 and represents the ratio of the largest allowed relative difference in time intervals for the data). Or you just make sure that your input data doesn't have these type of abnormal jumps of missing data. ==================================================================================== Bug Number: 1100 Trouble compiling with pgi7 The model does NOT compile using PGI7.2.2. It DOES compile with later versions of the PGI compiler, such as 9.0.4. The workaround is to use a later version of the PGI compilers. ==================================================================================== Bug Number: 1017 and 1025 PTS_MODE can NOT restart or use a global finidat file Single column mode (or PTS_MODE turned on using the -pts_lat and -pts_lon options in scripts/create_newcase) can NOT read restart files or global finidat initial condition files. The workaround is to use the models/lnd/clm/tools/ncl_scripts/getregional_datasets.pl script to create datasets from the global datasets. See the CLM User's Guide and the README documentation in the ncl_scripts directory as well as in the script itself. Here's the message that happens when you try to run from a restart file. (OPNFIL): Successfully opened file ./rpointer.lnd on unit= 14 Reading restart data..... ------------------------------------------------------------ (GETFIL): attempting to find local file c40b19+.I.pts.01.clm2.r.0001-01-06-00000.nc (GETFIL): using c40b19+.I.pts.01.clm2.r.0001-01-06-00000.nc in current working directory Reading restart dataset ERROR - setlatlon.F:Cant get variable dim for lat or lsmlat ENDRUN: called without a message string ==================================================================================== Bug number: 896 CLM won't run at T62 We aren't quite sure why. But we've found that CLM currently won't run at T62 resolution the same resolution as the input CLM-Qian atmosphere forcing data. ==================================================================================== Bug number: 652 Output different for different number of threads PGF90 PGI Version 6.1.6, and NetCDF Version 3.6.2. Works on other platforms/compilers and also works with PGI-7.0-7. The workaround is to use another compiler or a later version of the PGI compiler. ==================================================================================== Bug Number: 452 Problem with support of number of soil-colors NOT equal to 8 or 20 The mksurfdata tools file mksoicol.F90 sets nsoicol to the max value found in the input soilcolor file: nsoicol = maxval(soil_color_i) However, the code will fail if nsoicol does not equal 20 or 8 (which it might in paleo cases). perhaps the code should be extended to handle a case where nsoicol is not 20 or 8. ====================================================================================