The following examples illustrate different namelist options that can be used to run CLM3.0 in offline mode.
When the model is run in offline mode using a pre-existing surface dataset, the minimum namelist parameters are: CASEID, NSREST, NESTEP or NELAPSE, FSURDAT, FPFTCON, OFFLINE_ATMDIR, START_YMD, and DTIME. If FSURDAT is blank, a surface dataset will be generated at run time and additional variables need to be specified (see section 4.2 and Examples 5 and 6). Namelist parameters not specified will be set to default values. The following gives an example of a simple namelist.
&clmexp CASEID = 'test01' NSREST = 0 NESTEP = -1 FSURDAT = '$CSMDATA/srfdata/clms_64x128_USGS_c030605.nc' FINIDAT = ' ' FPFTCON = '$CSMDATA/pftdata/pft-physiology' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' START_YMD = 19971231 DTIME = 1800 HIST_NHTFRQ = -24 /
CASEID = 'test01'
Case identifier which distinguishes this
particular simulation from another. The string in CASEID shows
up in the names of history, restart, and initial files, in the restart
pointer file name (see Example 2) and in the Mass Store pathname where
history, restart, and initial files are placed if the Mass Store is used.
NSREST = 0
Requests an initial run, as opposed to a restart
or a branch run. An initial run does not require the use of an initial
input datafile (FINIDAT). If none is provided, the model uses
non spun-up initialization provided in the code (see
src/main/iniTimeVar.F90).
NESTEP = -1
Specifies the run's ending time to be at the end of day 1.
FSURDAT = '$CSMDATA/srfdata/clms_64x128_USGS_c030605.nc'
Specifies the name of the surface data input file. This particular
T42 surface dataset can be used both in cam and offline mode. The model
resolution (i.e. parameters LSMLON and LSMLAT) must be
compatible with the resolution of FSURDAT. If the filename
appeared without a path specifying its exact location, the file would
be expected in the executable directory, defined by the environment
variable $MODEL_EXEDIR.
FINIDAT = ' '
Specifies the initial file to be used to prescribe initial values
for time-dependent variables. Since no file is specified in this
case, the model will be internally initialized to non spun-up values
(arbitrary initialization).
FPFTCON = '$CSMDATA/pftdata/pft-physiology'
Specifies a file with PFT (Plant Functional Type) parameters.
FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05'
Specifies the input file required for the operation of RTM (River
Transport Model). By default, RTM will operate at
half degree horizontal resolution and will be invoked every 3 hours,
where the fluxes input to RTM (i.e., runoff) are averaged over the 3
hour period. If the user wants the
RTM scheme to operate at a different frequency than once every 3
hours, RTM_NSTEPS should be set to the desired value of timesteps.
Use of RTM is
activated in the jobscript.csh with the C pre-processor (cpp) directive
#define RTM in the header file preproc.h (see section 3.1.3).
OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA'
Specifies the location of the atmospheric driver data set. Such a data
set is required for the model to run in offline mode.
START_YMD = 19971231
Specifies the base date of the simulation and must be compatible with
the atmospheric input data. For example, START_YMD = 19971231
will use the atmospheric input file 1997-12.nc. In a restart or branch
run, START_YMD need not be changed, as long as it refers to a
date earlier than the date of restart or branch.
DTIME = 1800
Specifies the simulation's timestep in seconds. In offline mode, the
model can handle a timestep of up to 3600 seconds.
HIST_NHTFRQ = -24
Primary history files and restart files will be produced in the
executable directory and will be written every 24 hours.
The following namelist generates a restart run which continues the run in Example 1.
&clmexp CASEID = 'test01' NSREST = 1 NELAPSE = -1 FSURDAT = '$CSMDATA/srfdata/clms_64x128_USGS_c030605.nc' FINIDAT = ' ' FPFTCON = '$CSMDATA/pftdata/pft-physiology' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' START_YMD = 19971231 DTIME = 1800 HIST_NHTFRQ = -24 /
NSREST = 1
Requests a restart run. A restart run finds the name of the
appropriate restart file automatically by reading the file, lnd.CASEID.rpointer found by default in the user's home directory.
In this example, the pointer file will be
lnd.test01.rpointer. Restart runs are meant to be 'seamless',
producing the same output as runs which continued without a restart.
NELAPSE = -1
Specifies the run's ending time to be one day after the point of
restart. This is equivalent to entering NESTEP = -2,
since the previous run stopped at the end of day 1. If NESTEP were
used in this namelist, it would override the value given to NELAPSE.
All other namelist variables remain the same to ensure a 'seamless'
restart (for information, see example 1). Also, for a seamless
restart, the user should generally execute the code with the same
executable used in the initial run (ie, without compiling the code
again). The jobscript will not recompile the code unless the user has made
changes to the code or files have been removed from the bld directory.
The following namelist generates a branch run starting from restart files generated by Example 1. The user may branch a run with the same executable used in the initial run (i.e., without recompiling the code) unless branching is used to test changes in the code (for debugging or sensitivity purposes).
&clmexp CASEID = 'branch_run' NSREST = 3 NREVSN = 'test01.clm2.r.1998-01-01-00000' NELAPSE = -1 FSURDAT = '$CSMDATA/srfdata/clms_64x128_USGS_c030605.nc' FINIDAT = ' ' FPFTCON = '$CSMDATA/pftdata/pft-physiology' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' START_YMD = 19971231 DTIME = 1800 HIST_FINCL2 = 'TV:I' HIST_NHTFRQ = -3,5 HIST_MFILT = 2,3 /
See Example 1 for explanations of namelist variables which remain
unchanged.
NSREST = 3
Requests a branch run.
NREVSN = 'test01.clm2.r.1998-01-01-00000'
Supplies the name of the restart file which will initialize this run.
(This file can be produced by running Example 1 above).
NELAPSE = -1
Specifies the run's ending time to be one day after the
point of branching.
HIST_FINCL2 = 'TV:I'
Add an auxiliary history file with the field ``TV'' that is output instantaneously.
HIST_NHTFRQ = -3,5
Changes the frequency of primary history writes to every 3
hours. The write frequency of the auxiliary file is every 5 time
steps. This is an example of a change which a user may wish to test
in a branch run.
HIST_MFILT = 2,3
The primary history file will have 2 time samples on every tape. The
auxiliary history file will have 3 time samples on every tape.
This example covers the addition of an auxiliary history file, the removal of a field from the primary history file and the change of field type in a history file. A variety of other namelist options are also illustrated.
&CLMEXP CASEID = 'rtm_run' NSREST = 0 NESTEP = -31 FSURDAT = '$CSMDATA/srfdata/clms_64x128_USGS_c030605.nc' FINIDAT = ' ' FPFTCON = '$CSMDATA/pftdata/pft-physiology' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' START_YMD = 19980101 DTIME = 1800 HIST_FEXCL1 = 'TSNOW' HIST_FINCL2 = 'TV','TG:I' HIST_DOV2XY = .true.,.false. HIST_NHTFRQ = -24,-12 HIST_MFILT = 4,2 MSS_IRT = 365 WRTDIA = .true. /
For namelist variables which are repeated, refer to Examples 1, 2, and 3.
HIST_FEXCL1 = 'TSNOW'
The field 'TSNOW' will be excluded from the primary tape.
HIST_FINCL2 = 'TV','TG:I'
Specifies the two fields to be added to the auxiliary history output.
The first field, 'TV', will have the default time averaging done,
whereas the second field, 'TG', will have instantaneous output.
HIST_DOV2XY = .true.,.false.
History output will appear in gridded two-dimensional format for the
primary file and in one-dimensional subgrid format for the auxiliary file.
HIST_NHTFRQ = -24,-12
History output will be directed to the primary history file every 24
model hours and to the auxiliary history file every 12 hours.
HIST_MFILT = 4,2
Each primary history file will contain 4 time slices of output, while
each auxiliary history file will contain 2 time slices of output.
MSS_IRT = 365
Output files will be archived on the NCAR Mass Storage System with a
retention time of 365 days.
WRTDIA = .true.
A global average of land surface air temperature as diagnostic will
appear in the standard output file of the simulation.
A regular grid surface dataset can be generated at run time for a
single gridcell or for gridcells comprising a regional or
global domain. In all cases, the
cpp tokens LSMLON and LSMLAT must be set to the desired
resolution (e.g., LSMLON=1, LSMLAT=1 for a single gridcell
simulation or LSMLON=120, LSMLAT=60 for a 3 degree by 3 degree
global simulation). To generate a surface dataset for a regional run, the
variables MKSRF_OFFLINE_EDGES, MKSRF_OFFLINE_EDGEN, MKSRF_OFFLINE_EDGEE, and MKSRF_OFFLINE_EDGEW and their values need to be added to the
namelist. A surface dataset will be created with the name
surface-data.LSMLONxLSMLAT.nc (e.g., for a single point simulation the
file name will be surface-data.001x001.nc). The model can then be run
by following Example 1 where FSURDAT points to the new surface dataset.
In the following example, a regional grid is created over the Amazon basin. LSMLON and LSMLAT should be set to 15 and 11, respectively, for 3 degree by 3 degree horizontal resolution.
&clmexp CASEID = 'create_regional_surfdat' NSREST = 0 NESTEP = 2 START_YMD = 19971231 DTIME = 1800 FSURDAT = ' ' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' FPFTCON = '$CSMDATA/pftdata/pft-physiology' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' MKSRF_OFFLINE_FNAVYORO = '$CSMDATA/rawdata/mksrf_navyoro_20min.nc' MKSRF_FVEGTYP = '$CSMDATA/rawdata/mksrf_pft.nc' MKSRF_FSOITEX = '$CSMDATA/rawdata/mksrf_soitex.10level.nc' MKSRF_FSOICOL = '$CSMDATA/rawdata/mksrf_soicol_clm2.nc' MKSRF_FLANWAT = '$CSMDATA/rawdata/mksrf_lanwat.nc' MKSRF_FGLACIER = '$CSMDATA/rawdata/mksrf_glacier.nc' MKSRF_FURBAN = '$CSMDATA/rawdata/mksrf_urban.nc' MKSRF_FLAI = '$CSMDATA/rawdata/mksrf_lai.nc' MKSRF_OFFLINE_EDGEN = 12 MKSRF_OFFLINE_EDGES = -21 MKSRF_OFFLINE_EDGEE = -36 MKSRF_OFFLINE_EDGEW = -81 /
FSURDAT = ' '
A surface dataset named surface-data.LSMLONxLSMLAT.nc will be created
in the model executable directory. LSMLON and LSMLAT are defined in
jobscript.csh (see section 3.1.3).
MKSRF_OFFLINE_FNAVYORO = '$CSMDATA/rawdata/mksrf_navyoro_20min.nc'
Points to the orography dataset used to derive the model's land mask
in offline mode. The environment variable $CSMDATA is
explained in 3.1.1.
MKSRF_FVEGTYP, MKSRF_FSOITEX, MKSRF_FSOICOL, MKSRF_FLANWAT, MKSRF_FGLACIER, MKSRF_FURBAN, and MKSRF_FLAI
Specify the raw (usually high resolution) input datasets used to
create the model surface dataset.
MKSRF_OFFLINE_EDGES, MKSRF_OFFLINE_EDGEN, MKSRF_OFFLINE_EDGEE, and MKSRF_OFFLINE_EDGEW
Must be defined for the desired model regional domain because the default
values assume a global domain. The units are
degrees north for EDGES and EDGEN and degrees east for EDGEE and EDGEW.
Only global surface datasets can be created on a non-regular grid,
such as a gaussian grid. To generate a surface dataset on a gaussian
grid, the cpp tokens LSMLON and LSMLAT must be set to the
desired resolution (e.g., LSMLON=128, LSMLAT=64 for a T42
grid), and MKSRF_OFFLINE_FGRID must be set to the appropriate
dataset in $CSMDATA/srfdata specifying the model grid, land
mask and land fraction for the model grid. At T42 resolution, a
surface dataset, ``surface-data.128x064.nc'', will be created in the
model executable directory. This dataset may be renamed by the user to
be more self-explanatory. For example, the surface dataset created using
this example was clms_64x128_USGS_c030605.nc in $CSMDATA/srfdata.
And with the addition of MKSRF_ALL_PFTS=.true. to this namelist, we created
clms_64x128_allpfts_c040426.nc.
The following namelist will result in the generation of a surface
dataset on a global gaussian grid.
&clmexp CASEID = 'create_global_surfdat' NSREST = 0 NESTEP = 2 START_YMD = 19971231 DTIME = 1800 FSURDAT = ' ' FRIVINP_RTM = '$CSMDATA/rtmdata/rdirc.05' FPFTCON = '$CSMDATA/pftdata/pft-physiology' OFFLINE_ATMDIR = '$CSMDATA/NCEPDATA' MKSRF_OFFLINE_FGRID = '$CSMDATA/srfdata/fgrid.clms_64x128_USGS_c030605.nc' MKSRF_FVEGTYP = '$CSMDATA/rawdata/mksrf_pft.nc' MKSRF_FSOITEX = '$CSMDATA/rawdata/mksrf_soitex.10level.nc' MKSRF_FSOICOL = '$CSMDATA/rawdata/mksrf_soicol_clm2.nc' MKSRF_FLANWAT = '$CSMDATA/rawdata/mksrf_lanwat.nc' MKSRF_FGLACIER = '$CSMDATA/rawdata/mksrf_glacier.nc' MKSRF_FURBAN = '$CSMDATA/rawdata/mksrf_urban.nc' MKSRF_FLAI = '$CSMDATA/rawdata/mksrf_lai.nc' /
FSURDAT = ' '
A surface dataset named surface-data.128x064.nc will be created at run
time in the model executable directory.
MKSRF_OFFLINE_FGRID = '$CSMDATA/srfdata/fgrid.clms_64x128_USGS_c030605.nc'
Points to the dataset containing the model grid, land mask and
fractional land for the surface dataset.
MKSRF_FVEGTYP, MKSRF_FSOITEX, MKSRF_FSOICOL, MKSRF_FLANWAT, MKSRF_FGLACIER, MKSRF_FURBAN, and MKSRF_FLAI
Same as Example 5.