Known Limitations in CLM4.5/CESM1.2.0 May/31/2013 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: 1641 RCP6 used old bad wood harvest for 2006 and 2007 for CLM40 ==================================================================================== 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: 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 and 652 Trouble compiling/running with early versions of pgi Earlier versions of The model do NOT compile using PGI7.2.2. It DOES compile with later versions of the PGI compiler, such as 9.0.4. Also PGI Version 6.1.6, and NetCDF Version 3.6.2 has trouble with threading. Works on other platforms/compilers and also works with later versions of PGI. 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. It was upgraded to read in global finidat files -- but there is a bug when it does this. 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: 669 Y10K problem for clm CESM can't use negative years or years > 9999. Having dates of Y10K or more is sometimes useful for paleo simulations. For clm to get past the Y10K barrier -- it needs the subroutines set_hist_filename restFile_filename set_dgvm_filename changed to allow 5 or 6 digit years rather than just 4-digit ones. scripts, drv, and csm_share also have problems with Y10K as well. ==================================================================================== 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. ====================================================================================