Ug60 Model Namelist 1.4
Ug60 Model Namelist 1.4
Ug60 Model Namelist 1.4
October 2006
Table of Contents
Introduction ......................................................................................................... 3
Model Namelists.................................................................................................. 6
$MODEL_GRIDS Namelist .......................................................................................................6
$MODEL_FILE_INFO Namelist ..............................................................................................21
$MODEL_OPTIONS Namelist ................................................................................................37
$MODEL_SOUND Namelist....................................................................................................55
$MODEL_PRINT Namelist......................................................................................................57
Specifying values for each of the variables in the atmospheric model namelists is
the principal way that a user sets up the desired model configuration and selects
the many options available for a particular model run. The namelists have the
appearance of a standard FORTRAN namelist, and indeed they were patterned
after the FORTRAN format. However, there were several deficiencies in the
FORTRAN standard, especially in the past, concerning namelists. The biggest
deficiency was a complete lack of, or different formats for, comments. Therefore,
early in RAMS development, a replacement for the standard FORTRAN namelist
reading capability was developed.
These namelists are all contained in the data file called RAMSIN in the etc
directory. This is a default name; the input namelist name can be specified as a
command line argument. Each namelist in this file begins with one of the above
identifiers, and ends with the character string $END. All variables in these
namelists have sample values assigned to them in the RAMSIN file, but the user
will need to edit many of them for a specific simulation or forecast. In a separate
file, src/memory/grid_dims.f90, the user sets values of several different
parameters used in dimensioning the some of the memory of the atmospheric
model. However, the vast majority of the memory is dynamically-allocated.
Note as a matter of syntax that each value assigned to any namelist variable in
the RAMSIN file must be followed by a comma.
Model Configuration Parameters grid_dims.f90
The 9 parameters in the rams/6.0/src/memory/grid_dims.f90 file are used as
array dimensions for many variables in the atmospheric model global memory.
These parameters should be reviewed before compilation of the RAMS code.
Any time one of these parameters is changed, the entire model code should be
recompiled. The parameters set limits on maximum numbers of grid points,
grids, etc. Often, the model run is well within those limits. The parameters
should be set large enough for the required model space, and for convenience,
large enough to fit any anticipated expansions of required model space, but not
so large that excessive computer memory is wasted. Most significant memory
space is now dynamically allocated, so these parameters are not as important in
determining memory usage as in the past. The grid_dims.f90 parameters are
described in the following table.
MAXGRDS The maximum number of grids that may be used in a model run. The
integer number of grids actually used in a run is specified by the namelist variable
NGRIDS. NGRIDS may be changed from one model run to the next using
the same executable, as long as NGRIDS does not exceed the value of
MAXGRDS that was set when compiling the model. Thus, MAXGRDS
should be set to the largest number of grids that will be used in a series of
runs made from the same compiled code.
NXPMAX The maximum number of grid points in the x-direction to be used on any
integer grid. The actual numbers of grid points spanning the x-direction on
individual grids are specified in the multiple values of the namelist variable
NNXP. NXPMAX must be equal to or larger than each of the NNXP values.
NYPMAX The maximum number of grid points in the y-direction to be used on any
integer grid. The actual numbers of grid points spanning the y-direction on
individual grids are specified in the multiple values of the namelist variable
NNYP. NYPMAX must be equal to or larger than each of the NNYP values.
NZPMAX The maximum number of grid points in the z-direction to be used on any
integer grid. The actual numbers of grid points spanning the z-direction on
individual grids are specified in the multiple values of the namelist variable
NNZP. NZPMAX must be equal to or larger than each of the NNZP values.
NZGMAX The maximum number of vertical levels to be used for the soil model. The
integer actual numbers of levels are specified in the namelist variable NZG.
NZGMAX must be equal to or larger than NZG.
MAXSCLR The maximum number of scalars that may be automatically added to a
integer simulation. The actual number of added scalars is specified in namelist
parameter NADDSC. MAXSCLR must be equal to or larger than NADDSC.
MAXDIM MAXDIM must be set to the largest of the values in NXPMAX, NYPMAX,
integer NZPMAX+10, and NZGMAX.
MAXHP The maximum number of grid cells that overlap between the two
integer hemispheric grids of a global simulation. Each hemispheric grid is square in
polar stereographic space. The hemisphere of the earth projects onto the
circle inscribed in the square. The four corner regions of the square extend
into the opposite hemisphere. The points in these corner regions have their
prognostic fields interpolated from values prognosed in the opposite
hemispheric grid. The number of points in these corner regions depends on
the grid spacing of each hemispheric grid. MAXHP should be set to at least
30% of the square of NNXP for grid 1 if NNXP is larger than 100, and at
least 40% of the square of NNXP for smaller values of NNXP.
Note: the global simulation capabilities of RAMS is a deprecated function.
This parameter could be set to 1.
MAXMACH The maximum number of nodes that may be used for a parallel model run.
integer Applies only to running the model in parallel processing mode using MPI.
Model Namelists
The following sections will describe the input namelist parameters for the RAMS
atmospheric model and the RAMS/ISAN (ISentropic ANalysis) package.
$MODEL_GRIDS Namelist
Variable Description
name
EXPNME Character string of up to 64 characters into which the user may put any message (i.e.,
the experiment name) identifying the particular simulation or run. The character string
character is written in the standard output listing file and simply serves as a convenient means of
labeling the output for the user's own purposes.
RUNTYPE Specifies one of six ways in which the model is to be run.
character In many situations, a RUNTYPE = 'MAKESFC' should be the first run that is made.
This type of run will start the model and create surface characteristic files for all grids
that will be used during subsequent runs. These characteristics include topography,
soil textural class, sea surface temperature, vegetation class, and subgrid distribution
of soil textural class, water surface, vegetation type, and NDVI, all of which are
available in standard RAMS global datasets from which they can be interpolated onto
each model grid. These characteristics will be initialized on the model grids according
to the specifications of ITOPTFLG, ISSTFLG, IVEGTFLG, ISOILFLG, and NDVIFLG,
then surface files, one for each grid, be created. These surface files will be given a
name with a filename prefix specified by the variable SFCFILES and TOPFILES. SST
files, one for each grid and for each SST data time available, will be created with a
filename prefix specified by the variable SSTFPFX, while a similar set will be created
for NDVI using NDVIFILES. These files can then be quickly re-read on subsequent
runs of the model or ISAN. An important benefit of the MAKESFC option is that
topography for all grids can be defined with a fine grid present, and the fine grid can
then be excluded for the first part of the simulation, to be added later on a history
restart. This allows the model to utilize topography on its coarser grids that will be
consistent with the future addition of the fine grid.
If RUNTYPE = MAKESFC, the model run will stop immediately after the appropriate
files are generated and will not proceed with integration.
If RUNTYPE = 'MAKEVFILE', ISAN will perform a data analysis which can include an
objective analysis of one or more observational datasets, and produces one or more
resultant variable initialization files, or varfiles. The varfiles contain a set of
atmospheric fields defined on the model grids configured as specified by other
variables in the $MODEL_GRIDS namelist, and are to be used in a later run for
initializing a simulation, and optionally as 4-D assimilation data during the course of the
simulation. The MAKEVFILE option is used only if the model is to be initialized from a
complete 3-D objective analysis, (the INITIAL variable in the $MODEL_GRIDS
namelist set to 2), and is the means by which the observational data are processed
and interpolated to the model grid(s). The most common way to use this option is to
generate varfiles from the objective analysis package every 12 hours, since that is the
time interval at which upper-air data are normally collected, or every 6 hours to
correspond with the NCEP reanalysis data times. The total number of varfiles required
depends on the duration of the simulation to be performed and the particular grids
which will be initialized from them (and optionally will use them for 4DDA). The first
varfile must correspond to the starting time of the simulation, while the last varfile must
equal to or later than the end of the simulation.
Further details regarding the use of the initialization options are given in
descriptions of several variables in this Section.
NUD_TYPE Specifies what type of analysis nudging scheme to use in the 4-dimensional
data assimilation (4DDA). The term analysis nudging refers to a scheme where
integer all or a portion of the domain is nudged toward a gridded data analysis. This
can also be applied to nudging toward a previous simulation of RAMS or other
model output.
VWAITTOT Similar to VWAIT1 and likewise used only for automation of operational
real runs. Specifies the total amount of time to continue waiting for a completed
varfile before giving up altogether.
NUD_HFILE Analysis state files to be read for use in the history file nudging scheme
character (NUD_TYPE=1). The character string placed in this variable must be the
full name of the state header file, including the appropriate path if
applicable. However, only the prefix information is used to determine the
set of state files to be used. Further details on the standard syntax of the
analysis file names are given in the description of AFILOUT.
NUDLAT Parameters that control the option of four-dimensional data assimilation
integer (4DDA) by Newtonian relaxation (nudging). This is also termed analysis
nudging, since we will be nudging toward a gridded data analysis. This
TNUDLAT 4DDA option requires that the INITIAL variable is set to 2 or 3, so that the
model is initialized from varfiles or a previous RAMS run. The varfiles or
TNUDCENT history files contain time series of gridded horizontal wind, potential
TNUDTOP temperature, and total water mixing ratio values, usually analyzed from
observations or sometimes large-scale model forecasts. The atmospheric
ZNUDTOP model solution is relaxed toward the analyzed data during time integration.
real The strength of the nudging is given by (I-M)/T, where I is a varfile data
value at a particular location, M is the corresponding model value, and T is a
user-specified relaxation (e-folding) time scale. RAMS contains a 3-D array
of T values for each grid so that the nudging strength can be specified in a
customized way by modifying code. However standard distributions of T
may be easily defined through the namelist variables TNUDLAT,
TNUDTOP, and TNUDCENT, which define relaxation time scales at the
lateral boundary, top boundary, and center regions, respectively, of the
model domain. The influence of TNUDLAT extends inward from the lateral
boundary of the model domain (coarse grid) by a number of grid cells
specified by the user in namelist parameter NUDLAT. The influence
function (inverse time scale) increases outward parabolically beginning from
the parabola vertex located NUDLAT points in from the boundary. The
nudging time scale at that vertex and deeper in the interior of the grid is
defined by TNUDCENT. Thus, TNUDCENT can be used to specify a lower
bound on nudging strength throughout the domain. The influence of
TNUDTOP extends downward from the model domain top to a height
specified in namelist variable ZNUDTOP. The influence function increases
linearly between these two heights, reaching the minimum value defined by
TNUDCENT at and below ZNUDTOP. Note that as time scales are
inversely proportional to nudging strength, TNUDCENT should have a larger
value than TNUDLAT and TNUDTOP for nudging to strengthen toward the
lateral and top boundaries. Use of TNUDLAT and NUDLAT is a
replacement for the specification of the Davies lateral boundary nudging in
2c and earlier versions of RAMS. Use of TNUDTOP and ZNUDTOP
functions analogously to the Rayleigh friction top boundary condition (see
descriptions for DISTIM and NUPTS), but can be used for observational
data fields which are not horizontally homogeneous. This provides a means
for damping upward-propagating gravity waves which could otherwise
reflect off the top model boundary. TNUDCENT is a part of the data
assimilation capability in RAMS, and is definable in the namelist in order to
conveniently activate domain-wide nudging. Users of the nudging option
should experiment with all three nudging time scales to determine the
values which work best for a particular application. The only constraint for
numerical stability is that none of the time scales can be less than the model
timestep, except that setting TNUDLAT, TNUDTOP, and TNUDCENT to
zero turns off the nudging option. Experience has shown that values of
TNUDLAT should typically be in the range of 900-1800 seconds,
TNUDCENT = 3600 corresponds to very strong nudging and usually is
better in the 7200-14400 second range. TNUDTOP frequently does not
need to be used and should only be activated at levels well into the
stratosphere. Furthermore, if TNUDTOP is used, special care should be
taken to examine its impact on the model solution, because the impact can
be quite strong.
WT_NUDGE_GRID Relative weights applied to the nudging weights for each grid. The main intent
real array is to have user control over the 4DDA analysis nudging weights on individual
grids. The base weights are determined from the timescale TNUDCENT, then
multiplied by WT_NUDGE_GRID. A value of 2., for example, will double the
nudging strength on that grid. Care must be taken that all adjustments of
nudging strength fall with the numerical stability limits
WT_NUDGE_UV Relative weights applied to the nudging weights for specific variables. The
WT_NUDGE_TH main intent is to have user control over the 4DDA analysis nudging weights.
WT_NUDGE_PI The base weights are determined from the timescale TNUDCENT, then
WT_NUDGE_RT multiplied by WT_NUDGE_UV, etc. WT_NUDGE_UV is applied to the u and v
real components, WT_NUDGE_TH is applied to potential temperature,
WT_NUDGE_PI is applied to the Exner function, and WT_NUDGE_RT is
applied to total water mixing ratio.
The complete computation of the nudging weight for the analysis nudging
4DDA (in the center of the domain) is then computed by:
NUD_COND Flag to activate a condensate nudging 4DDA scheme. This scheme follows the
integer same types of procedures as the history nudging scheme (NUD_TYPE=1), but
only nudges total water mixing ratio at grid points where condensate exists.
This is an experimental scheme and intended primarily for assimilation
purposes in operational forecast cycles.
COND_HFILE Analysis state files to be read for use in the condensate nudging scheme
(NUD_COND=1). The character string placed in this variable must be the full
character name of the state header file, including the appropriate path if applicable.
However, only the prefix information is used to determine the set of history files
to be used. Further details on the standard syntax of the state file names are
given in the description of AFILOUT.
TCOND_BEG Beginning and ending model time (seconds) to start and stop the condensate
TCOND_END nudging scheme.
real
WT_NUDGEC_GRID Relative weight of the condensate nudging scheme for each grid
real array
T_NUDGE_RC Timescale for the condensate nudging scheme.
real
The complete computation of the condensate nudging weight is then computed
by:
WT_ODA_GRID Relative weights applied to the ODA nudging weights for each grid. See
TNUDODA.
real array
WT_ODA_UV Relative weights applied to the ODA nudging weights for specific variables.
WT_ODA_UV is applied to the u and v components, WT_ODA_TH is applied
WT_ODA_TH to potential temperature, WT_ODA_PI is applied to the Exner function, and
WT_ODA_PI WT_ODA_RT is applied to total water mixing ratio. See TNUDODA.
WT_ODA_RT
real
RODA_SFCE Radii (meters) for the kriging scheme to control the smoothness of the
analysis at the surface. SFC0 is the distance from an observation where the
RODA_SFC0 influence becomes zero, while SFCE is the distance where the influence
-2
real array drops by a factor of e . These values are grid-dependent.
RODA_UPAE Radii (meters) for the kriging scheme for the upper air observations to control
the smoothness of the analysis in the upper air. UPA0 is the distance from
RODA_UPA0 an observation where the influence becomes zero, while UPAE is the
-2
real array distance where the influence drops by a factor of e . These values are grid-
dependent.
RODA_HGT The height (meters) above the ground used to determine the vertical
structure of the kriging radii. RODA_SFC0 will apply at the ground, while
real array RODA_UPA0 will begin at a height of RODA_HGT. The radius will be held
constant at a value of RODA_UPA0 from RODA_HGT to the model top,
while a linear interpolation from the ground to RODA_HGT will be performed.
Typically, some height above the expected boundary layer depth would be
chosen. This value is grid-dependent.
RODA_ZFACT Vertical exaggeration factor to control smoothness in the kriging scheme.
This is somewhat related to the ratio of horizontal grid spacing and vertical
real grid spacing. A value of the order 100 is reasonable.
ODA_SFC_TIL Time interpolation limit (TIL) and time extrapolation limit (TEL) (both
seconds) for the surface data in the ODA scheme. These are used to
ODA_SFC_TEL determine the use of the observations at the time of the kriging scheme
real updates. At an update time, each station will be examined. A past and future
observation time (with non-missing data) relative to the update time will be
found. If the future minus the past time is less than the TIL, then the data
values will be interpolated to the update time for use in the data analysis. If
this condition is not true, then the past and future times will be checked to
see if it is less than the TEL. If, for example, the past time is less than the
TEL, then that data value will be used in the analysis. For hourly surface
observations, reasonable settings might be ODA_SFC_TIL=7200., and
ODA_SFC_TEL=900.
ODA_UPA_TIL Time interpolation limit (TIL) and time extrapolation limit (TEL) (both
seconds) for the upper air data in the ODA scheme. See ODA_SFC_TIL.
ODA_UPA_TEL For standard 12 hourly surface observations, reasonable settings might be
real ODA_UPA_TIL=43200. and ODA_UPA_TEL=3600.
IF_CUINV Flag to activate the reading and nudging toward heating and moistening
rates produced by the cumulus inversion scheme. This is a new experimental
integer feature where the convective rates are produced before the actual run by a
separate process that reads observed precipitation rates (from observations,
satellite, or radar) and produces the convective tendencies. Files for each
time corresponding to the availability of the precipitation rate data are
produced. The rates are further weighted with a typical nudging manner to
allow for control over the strength. This is an experimental scheme and
should be used with caution.
CU_PREFIX File name prefix (including path information) of the files produced from the
cumulus inversion program.
character
TNUDCU Main nudging CU timescale (seconds). This determines, along with
WT_CU_GRID, the strength of the nudging. The complete computation of the
real weight for the CU nudging is computed by:
WT_CU_GRID(ngrid) / TNUDCU
WT_CU_GRID Relative weights applied to the CU nudging weights for each grid. See
TNUDCU.
real
TCU_BEG Beginning and ending model times (seconds) to start and stop the CU
nudging scheme.
TCU_END
real
CU_TEL Time interpolation limit (TIL) and time extrapolation limit (TEL) (both
seconds) for the CU scheme. See ODA_SFC_TIL. Reasonable settings will
CU_TIL be dependent on the time resolution of the original precipitation rate data.
real
HFILIN Analysis state file to be read for initializing the current run
character (INITIAL=HISTORY,). The character string placed in this variable must be
the full name of the state header file, including the appropriate path if
applicable. Further details on the standard syntax of the history file name
are given in the description of AFILOUT.
IPASTIN Flag to activate a recycle feature, where certain fields from a previous
analysis file may be read upon initialization of the current run. Currently,
only the LEAF variables are included in this process. All soil and vegetation
variables are read and any default initialization values are replaced. The
grid structure of the previous run must exactly match the grid structure of
the current run.
PASTFN Analysis header file name, if IPASTIN=1, from which to read the recycle
fields. For flexibility, the file time does not necessarily have to match the
initialization time of the current run.
IOUTPUT Flag controlling whether the model will output any analysis files. If
integer IOUTPUT = 0, no files will be generated. Setting IOUTPUT = 1 causes the
model to generate output files in HDF5 format, dependent on other
parameters below.
The semantics for the output files has changed for v6.0. Previously, we had
history files and several types of analysis files. With the use of HDF5,
history files are no longer necessary.
RAMS now will produce several types of analysis files written in HDF5.
These types are:
State files files which have all information of the current model
state. These are analogous to a combination of the previous history
and analysis files (A and H files). Because of HDF5, these files are
now smaller than the previous analysis files and contain full
precision.
Mean files time-averaged files containing the same variables as
on the state files.
Lite files files which contain a user-defined subset of the model
fields.
Both files time-averaged, lite files
The output frequency and other parameters controlling these file types are
specified in the variables below.
AFILOUT Prefix for the analysis files output from the model. AFILOUT is used as a
character prefix to the one or more file names, making up the first part of each name,
including directory path information. The model itself appends the last part
of each analysis file name, according to the file type, the time during the
simulation when the file is written, and the grid number. Separate analysis
files are written for each grid number, as well as for each write time. In
addition, header files are written at each analysis file write time. As the
model appends both the time and the grid number onto the history file prefix
(given by AFILOUT), each file name written during a simulation has a
distinct name, but all still share the common prefix. AFILOUT is only
relevant if IOUTPUT = 1, indicating that files are to be created.
ICLOBBER Flag indicating what the model should do if various files already exist from a
integer prior run, and the model is about to write new files of the same name in the
same directory. If ICLOBBER = 0, the model will stop and not overwrite the
older files. If ICLOBBER = 1, the model will continue and will write new
files, overwriting the old ones.
FRQSTATE Time interval in seconds at which successive state files are to be output
real from the model. The model variable TIME begins at zero at the start of a
new simulation (and at the TIME value contained in HFILIN for a history
start) and counts up to the value of TIMMAX for each run. (see RUNTYPE,
TIMSTR, and TIMMAX). When TIME reaches a multiple of FRQSTATE, a
model state file is written. In addition, a state file is written out when a
model run terminates, even if TIMMAX is not set to an exact integer multiple
of FRQSTATE. A state file is also written out when a model run begins,
even if the TIME variable is not a multiple of FRQSTATE.
FRQSTATE can have a different value for each nested grid. There are
times when you may want less frequent output for the coarse grids as
compared to the nested grids. So for example, you can specify:
FRQSTATE =7200., 3600.,1800., for a three grid simulation.
If you do not specify a value for each grid, FRQSTATE will default to the
previous grids value (not the parent grid, but the previously specified nest).
So if you specify:
FRQSTATE =7200., for a three grid simulation, all three grids will use the
7200. second frequency.
Although not required, it is recommended to have the higher frequency grids
output be an exact multiple of the coarser grids, which should be an integer
multiple of the timestep length.
If IDELTAT is not zero, in which case the model will choose the timestep,
the model will take the value of FRQSTATE into account to make sure that
analysis files are written at regular intervals.
FRQSTATE_KEEP Frequency at which the state files are kept. The state files are written at the
frequency of FRQSTATE, but any files not written at the frequency of
real FRQSTATE_KEEP will be deleted after the subsequent file write. This
option would be used if more frequent checkpointing of model files are
desired.
For example, you may have FRQSTATE=900., and
FRQSTATE_KEEP=3600. RAMS will write the state files every 900
seconds. So a set of state files will be created at time=0. and time=900.
seconds. At time=1800 seconds, a new set of files will be created, then the
files that were written at time=900 seconds will be deleted.
It is intended that FRQSTATE_KEEP be an integer multiple of FRQSTATE,
as it makes no sense to have it smaller that FRQSTATE. If
FRQSTATE_KEEP=0., no files will be deleted.
FRQLITE Similar to FRQSTATE, but specifies the time interval between successive
real writes of lite analysis files. The lite files are intended for writing variables at
much more frequent intervals than analysis files, for use in post-processing
applications such as graphical display, but with much less information. For
example, a user may need surface variables to be output frequently, but not
three-dimensional upper air fields. Only the required fields would be
specified for output in the lite files. Alternatively, subsets of fields, rather
than the entire fields, may be output through use of namelist variables
XLITE, YLITE, and ZLITE (see below), although this option is not yet
available in RAMS version 6.0.
XLITE Specifies beginning and end of range of i-index values of a subset of any
character output field to be written to lite analysis files. See FRQLITE above.
Special syntax of the form /0:0/ is used where the two integer values, when
positive, indicate the actual starting and ending i-index values of the range
of values to be output, and when negative, specify the number of grid points
in from the left and right grid boundaries of the range limits. This option is
not yet implemented in RAMS so only the entire field may be written to lite
files.
YLITE Similar to XLITE but specifies the range of j-index values in the y-coordinate
character direction (usually approximately north-south). Not yet implemented so only
the entire field may be written to lite files.
ZLITE Similar to XLITE but specifies the range of k-index values in the vertical
character coordinate direction. Not yet implemented so only the entire field may be
written to lite files.
NLITE_VARS Number of variables to write to the lite analysis file. The actual variable
names are specified in the variable LITE_VARS.
integer
LITE_VARS Variable names of the fields that will be written to the lite analysis files.
The variable names correspond to the RAMS internal character ID strings,
char array which now can be found in the modules/mem_*.f90 files. For example, the
u-component is UP, potential temperature is THETA, etc. Any variable
that is in memory may be included, but care must be taken in parallel runs
to ensure that the field has been passed back to the master process.
AVGTIM Averaging time period for special time-averaged arrays that may be output
real to analysis file. Positive values for AVGTIM cause the file write time to be
centered in time within this averaging period, while negative values cause
the file write time to occur at the end of the averaging period.
FRQMEAN Similar to FRQSTATE, but applies to the output frequency of mean
real analysis files, which are one of the 4 standard types of analysis files that
RAMS can write (see FRQSTATE).
FRQBOTH Similar to FRQSTATE, but applies to the output frequency of both analysis
real files, which are one of the 4 standard types of analysis files that RAMS can
write (see FRQSTATE).
KWRITE Flag specifying whether to write horizontal and vertical turbulent mixing
integer coefficients for scalars to analysis files (0 = no, 1 = yes). If they are to be
written, two additional arrays are allocated, the mixing coefficients are
copied to these arrays when they are computed in the model, and the
values are saved in these arrays for when the analysis files are written. The
mixing coefficient values are sometimes needed for plotting, and they are
needed for the HYPACT model, which runs from RAMS output.
FRQPRT Time interval in seconds at which various field values are to be output from
real the model to the standard output file generated by a model run. The actual
fields or portions thereof to be output are specified via several variables in
the $MODEL_PRINT namelist. The relation between FRQPRT and the
model simulation time is the same as for FRQHIS.
INITFLD Flag specifying whether the field values indicated in the $MODEL_PRINT
integer namelist for output to the standard output file are to be output at the initial
time of the model run. A value of 0 will cause the values to not be output at
the initial time, while a value of 1 will cause them to be output at the initial
time.
SFCFILES Filename prefix (including path information) for the surface files used in a
character model simulation. These files contain topography, soil textural class,
vegetation type, and subgrid distribution of soil textural class, vegetation
type, and water surface areas defined on each model grid.
Surface files are always used in a model run. They are commonly made in
a separate model run that does not proceed with prognosing atmospheric
fields by setting RUNTYPE to MAKELAND or MAKESFC. However, if
RUNTYPE is instead set to MAKEVFILE or INITIAL, and if surface files do
not exist or are found to be inconsistent with model grid size, location, etc.,
new ones will be generated. If they already exist from a prior run, surface
data is read from them. A separate surface file is generated for each grid,
and the grid number is appended to each filename in the format of
SFCFILES.g01, SFCFILES.g02, etc.
SSTFPFX Filename prefix (including path information) for SST files used in a model
character simulation. These files contain sea surface temperature data defined on
each model grid, and usually for multiple times. This data type is available
on standard RAMS data files defined globally on a latitude-longitude grid
with climatological values for each month of the year. Data in surface files
may be interpolated from these standard files, from other data sources, or
may be defined by other means. These choices are controlled by ISSTFLG.
SST files are always used in a model run. They are commonly made in a
separate model run that does not proceed with prognosing atmospheric
fields by setting RUNTYPE to MAKESST or MAKESFC. If RUNTYPE is
instead set to MAKEVFILE or INITIAL, and if SST files do not exist or are
found to be inconsistent with model grid size, location, etc., new ones will be
generated. If they already exist from a prior run, surface data is read from
them. A separate SST file is generated for each grid and for each time
available in the files from which the data are interpolated.
ITOPTFLG Grid-dependent flag specifying how terrain height data is to be obtained or
integer array computed for each model grid.
ITOPTFLG = 0 - (allowed for a nested grid only), topography for that grid will
be interpolated from its parent grid. This will result in relatively smooth
topography on the nested grid, but is required if the nested grid is required
to move in time (see GRIDU and GRIDV).
ITOPTFLG = 1 - topography will be interpolated to the grid from a standard
RAMS topography dataset, currently available at 30 arc-second intervals of
latitude and longitude for all land areas of the globe. A prefix for all
filenames in this dataset is specified in ITOPTFN. This is by far the most
common way to initialize topography in RAMS unless the experiment
requires idealized or flat topography.
ITOPTFLG = 2 - the model will call subroutine TOPTINIT in the model file
mksfc_top.f90 to assign the terrain height, which by default sets it to zero.
To override any of these choices, subroutine TOPTINIT_USER in the file
mksfc_top.f90, which is always called but contains only commented out
executable lines in its standard form, may be modified. The ruser.f90 file is
specifically intended for user modification when such a need arises.
Subroutine TOPTINIT_USER is normally constructed with an IF block
checking for the grid number (NGRID). The terrain height values must be
assigned for the appropriate grid number. It must be pointed out that if
nested grids are used, it is required that the terrain heights be compatible
between different grids. The compatibility requirement is two-sided: Fine
grid values corresponding to a single coarse grid cell must locally average
to the coarse grid terrain height value in that cell, and the fine grid values
near the lateral boundary of the fine grid must be those which would result
from a bi-quadratic interpolation from coarse grid values, according to the
standard nesting procedure. The model is designed to make the terrain
heights compatible automatically, and will alter the values assigned to a grid
in subroutine TOPTINIT or TOPTINIT_USER if they are not already
compatible between grids. A special word of caution is in order here. If a
fine grid that is to contain fine resolution terrain height data is to be spawned
on a history start at a time after the initialization time of a simulation, the
terrain height data on the coarser grids must already have been compatible
with it in the preceding portion of the simulation. This may be done either by
simply initializing the topography of the spawned grid from its parent, or by
generating surface files for all grids, including the one to be spawned,
before the simulation started. The latter choice provides for the better-
resolved topography on the spawned grid, but will also result in very fine (at
the 2-delta-x scale) features on its parent grid. This may cause some model
noise problems during that earlier part of the simulation on the portion of the
coarser grids where the fine grid will be later inserted, but this is normally at
acceptable levels (see TOPTWVL).
ISSTFLG Grid-dependent flag specifying how the sea surface temperature variable is
integer array to be acquired or computed for a grid. Values of 0, 1, or 2 are applicable for
this flag, and have the same meaning as for ITOPTFLG and IPCTLFLG
described above. In contrast to the terrain height data controlled by
ITOPTFLG, however, the strict compatibility between coarse and fine grid
values of sea surface temperature is not required, although it would be
rather senseless for coarse and fine grid values to be grossly different. Sea
surface temperature is a variable defined for each surface grid cell in the
model, and indicates the temperature of any surface water in that cell. For
ISSTFLG set to 2, the model calls subroutine SSTINIT in model file rsurf.f90
that by default sets the sea surface temperature to the value of namelist
variable SEATMP. If for a fine grid ISSTFLG is set to 0, the sea surface
temperature values for that grid will by default be interpolated from its parent
grid. For ISSTFLG set to 1, values for sea surface temperature are
interpolated from standard RAMS SST data files. This latter option is used
in conjunction with namelist variables ISSTFN.
To override any of the above options, subroutine SFCINIT_USER in the file
ruser.f90 is called, and there a user may customize the sea surface
temperature field as described above for modifying TOPT in subroutine
TOPTININT_USER.
IVEGTFLG Grid-dependent flag specifying how the vegetation type variable is to be
integer array acquired or defined for a grid. Values of 0, 1, or 2 are applicable for this
flag.
IVEGTFLG = 0 - (permitted only for a nested grid), values of vegetation type
are directly assigned from the local grid cell of the parent grid. This applies
to each individual subgrid patch as well (see description of LEAF2 in
Section 1c).
IVEGTFLG = 1 - vegetation class data are obtained from a RAMS-specific
database which is defined globally at 30-arc-second intervals of latitude and
longitude, and whose filename prefix is specified in namelist variable
IVEGTFN. When this option is used, and when IVEGPAT is greater than 1,
multiple subgrid land patches are filled from the RAMS database according
to their relative prevalence in the grid cell.
IVEGTFLG = 2 - vegetation class values are defined in subroutine SFCINIT
in the rsurf.f90 file. In this latter case, the value specified in namelist
variable NVGCON is used by default for the entire domain.
To override any of the above options, subroutine SFCINIT_USER in the file
ruser.f90 is called, and there a user may customize the vegetation type field
as described above for modifying TOPT in subroutine TOPTINIT_USER.
ISOILFLG Flag specifying how soil textural class is to be initialized in RAMS.
integer array ISOILFLG = 0 - (only allowed for nested grids), soil class is specified from
the local value on its parent grid.
ISOILFLG = 1 - soil textural class is read from standard RAMS data files.
ISOILFLG = 2 - soil textural class for the grid is filled horizontally
homogeneously to the value specified by NSLCON.
As for vegetation class values described for IVEGTFLG, soil textural class
values may be customized in subroutine SFCINIT_USER in the file
ruser.f90.
NDVIFLG Flag specifying how NDVI (Normalized Difference Vegetation Index) is to be
initialized in RAMS.
integer array
NDVIFLG = 0 - (only allowed for nested grids), NDVI is specified from the
local value on its parent grid.
NDVIFLG = 1 - NDVI textural class is read from standard RAMS data files.
NDVIFLG = 2 - NDVI for the grid is filled horizontally homogeneously to the
value specified in leaf3_init.f90.
As for vegetation class values described for IVEGTFLG, NDVI values may
be customized in subroutine SFCINIT_USER in the file ruser.f90.
NOFILFLG Grid-dependent flag similar to ITOPTFLG, ISSTFLG, IVEGTFLG, and
integer array ISOILFKG, but applies to variables in LEAF2 (the soil, snowcover,
vegetation, and canopy air submodel of RAMS) that are not available on
standard RAMS data files. These variables are: soil temperature, soil
moisture content, snowcover (or temporary surface water) amount,
snowcover temperature, snowcover depth, vegetation temperature,
vegetation surface water, canopy air temperature, and canopy air vapor
mixing ratio.
NOFILFLG = 0 - (allowable only for nested grids) causes initial values of
these quantities to be copied from local values on the parent grid, while
setting
NOFILFLG = 2 - causes the values to be initialized in a default manner. For
default initialization of soil moisture and temperature, see SLMSTR and
STGOFF. Default initial values of vegetation and canopy air temperatures,
and canopy air vapor mixing ratio, are the values for the lowest model
atmospheric layer. Snowcover and vegetation surface moisture are
initialized to zero by default, although snowcover (ground surface water) is
set to a positive value in swamps, bogs, and marshes where such land
surface types are read from the standard RAMS files (see IVEGTFLG).
Note that any of these initial values may be overridden by modifying
subroutine SFCINIT_USER in the file ruser.f90. This subroutine is often
used, for example, to insert soil moisture and snowcover observational data.
IUPDNDVI Flag for specifying whether observed NDVI values are to be held constant in
time during a model run (IUPDNDVI = 0) or are to be continually linearly
integer interpolated in time between the observing times immediately before and
after the current model runtime (IUPDNDVI = 1).
IUPDSST Flag for specifying whether observed sea surface temperatures are to be
integer held constant in time during a model run (IUPDSST = 0) or are to be
continually linearly interpolated in time between the observing times
immediately before and after the current model runtime (IUPDSST = 1).
ITOPTFN Grid-dependent character variable specifying the name of the terrain height
character array data header file, with path names if applicable, to be read in conjunction
with namelist variable ITOPTFLG set to 1. These data files are named
according to a convention that identifies the latitude and longitude of their
southwest corners. The standard files prepared for RAMS each comprise
an area of 5 degrees of longitude by 5 degrees of latitude with values
defined at 30-arc-second intervals of latitude and longitude, and cover all
land areas of the earth.
These files have names such as EL35N115W, indicating a southwest corner
at 35 degrees north latitude and 115 degrees west longitude, with the
characters 'EL serving as a filename prefix for all files in the dataset. The
value specified for ITOPTFN would be 'EL' in this case, as the model
supplies the remainder of the file name according to the file(s) it needs to
read. These terrain height files are written in HDF5 format. In addition, the
older V-format files are still supported.
Sometimes in model applications, fine grids are located within the bounds of
a special limited-area terrain height dataset, such as the one described
above, and can obtain their terrain height information from that dataset,
while coarser grids extend outside the high resolution dataset, and utilize a
coarser-resolution dataset of global coverage, not needing the high
resolution data. This is why ITOPTFN is made grid-dependent.
ISSTFN Grid-dependent character variable indicating the filename prefix (with path
character array names if applicable) of the header file for the sea surface temperature data
for initializing each grid. It is similar to namelist variable ITOPTFN.
IVEGTFN Grid-dependent character variable indicating the name (with path names if
character array applicable) of the header file for the vegetation type data for initializing each
grid. It is similar to namelist variable ITOPTFN.
ISOILFN Grid-dependent character variable indicating the name (with path names if
character array applicable) of the header file for the soil textural class data for initializing
each grid. It is similar to namelist variable ITOPTFN..
NDVIFN Grid-dependent character variable indicating the name (with path names if
character array applicable) of the header file for the NDVI data for initializing each grid. It is
similar to namelist variable ITOPTFN.
ITOPSFLG Flag that controls the type of processing of topographic data from input files
real array that are specified in ITOPTFN to final values defined on a RAMS grid. This
is a 3-step process that involves topography information being defined
successively on 4 different grids, which we call the O, P, Q, and R grids.
First, a horizontal interpolation is carried out in order to transfer data from
the observed or O grid of the input file, to a polar stereographic grid of
comparable resolution, which is our P grid. The P grid uses the same
projection as the RAMS grid (the R grid) where the data will reside in its final
state, but is usually of much higher resolution.
Second, data is averaged from this P grid to a lower-resolution Q grid, which
is also polar stereographic and has a horizontal grid spacing that is an
integer multiple of that on the P grid. This step automatically filters out small
scale variations which are not desired on the model grid (see TOPENH). In
this second averaging step, a choice of averaging algorithms exists and
ITOPSFLG is the flag that selects the choice to be used.
ITOPSFLG = 0 - a conventional mean is used where terrain heights for all P
grid cells in a single Q grid cell are summed and divided by that number of P
values, to obtain the value for that Q cell.
ITOPSFLG = 1 - both the conventional mean and a silhouette average are
computed, and the value assigned to the Q grid cell is a weighted average
of these, with the weights controlled by TOPENH. The silhouette average
finds the mean height of the silhouette, as viewed from the east or west, of
the set of P grid terrain heights contained within a single Q grid cell, and a
separate silhouette height as viewed from the north or south and averages
the two silhouette heights together. This becomes the computed silhouette
height for that coarse-grid cell. While the conventional average preserves
total terrain volume above sea level, the silhouette average adds mass by
filling in valleys. It is used to maintain the effective mean barrier height that
air must rise to when crossing a topographic barrier such as a ridge. The
conventional average lowers this barrier height, particularly when the barrier
height is poorly resolved.
ITOPSFLG = 2 - an envelope topography scheme is used to obtain Q grid
values from P grid values. This scheme is an alternative method of
attempting to preserve barrier heights.
ITOPSFLG = 3 - a reflected envelope topography scheme is used which
aims to preserve both barrier heights and valley depths. Naturally, this
method leads to the steepest topography in RAMS, while still filtering the
shortest wavelengths. In the third and final step, topography is interpolated
from the Q grid to the R grid, and the R grid is usually of moderately higher
resolution than the Q grid (see TOPTWVL).
TOPENH Grid-dependent variable specifying the weight given to the silhouette
real array average of terrain height in topographic initialization when ITOPSFLG = 1
(see above), or an envelope orography enhancement factor when
ITOPSFLG = 2 or 3. (Also see TOPTWVL.)
TOPTWVL Grid-dependent variable specifying the wavelength, in grid-cell size units, of
real array the smallest horizontal modes of terrain height data which are to be present
on a given model grid. It is applicable only for namelist variable ITOPTFLG
set to 1. Referring to the description of namelist variable ITOPSFLG above,
the value of TOPTWVL controls the ratio of resolution between the Q and R
grids.
The shortest mode which any grid can resolve is that with a wavelength of
twice the grid cell size. In general, the Q grid will contain all wavelengths of
topographic data from its own 2 deltax scale and larger. Hence, if the
RAMS R grid, to which data is interpolated from the Q grid, has, for
example, half the cell size of the model grid, the smallest mode that it will
receive from the Q grid will be 4 deltax on the R grid. This smallest mode,
in deltax units of the R grid, is the number specified for TOPTWVL. In other
words, while the R grid spacing is set by the user (see DELTAX), the Q grid
spacing will be TOPTWVL / 2 times the R grid spacing.
This is how smoothing of topographic data is achieved in RAMS while
allowing the variety of enhancing schemes described for ITOPSFLG.
Because the numerical model does not properly handle the smallest modes
resolvable on a grid, it is generally important not to force these modes into
the meteorological fields through overly fine terrain height modes.
IZ0FLG A flag that controls how surface roughness length is computed for
integer array computing surface vertical fluxes of momentum, sensible heat, and latent
heat.
IZ0FLG = 0 - the standard roughness height evaluation of soil, snowcover,
and/or vegetation surfaces is computed in the LEAF submodel of RAMS.
IZ0FLG = 1 - roughness height is computed from the roughness of subgrid
scale topography, and may reach several meters. An upper limit to
roughness height may be imposed by the user (see Z0MAX).
The influence of rough topography on vertical turbulent transport is most
properly applied through several (lower) model layers, as well as the surface
itself, but in the current implementation, its effect is concentrated solely on
the surface fluxes. This tends to overestimate fluxes from the soil and
vegetation to the lowest atmospheric level, and this option in RAMS should
be used with caution (also see Z0FACT).
Z0MAX Upper bound (in meters) imposed on surface roughness height that is
real array evaluated from subgrid topography (see IZ0FLG and Z0MAX).
Z0FACT Roughness factor used in computing surface roughness height from subgrid
real array topography (see IZ0FLG and Z0MAX).
MKCOLTAB Flag indicating whether or not a collection table is to be created in the
integer present run. The collection table is required in the bulk microphysics
package, and contains terms derived from the stochastic collection
equation. These terms are computationally intensive to evaluate, and are
thus pre-computed and stored in the collection table where they are
efficiently accessed during model runtime. The values in the table depend
on two sets of parameters. One is the set of gamma distribution shape
parameters, defined in namelist variable GNU. The other is a list of
parameters defined in a data statement in subroutine MICINIT in the file
mic_init.f90, which describe the relation between mass and diameter, and
between fall velocity and diameter for the hydrometeor categories. These
latter parameters are not normally altered, unless a user has reason to
change these relationships. The gamma distribution shape parameters
defined in the namelist, however, are intended to be adjusted and
experimented with. Any change in any parameter of either set requires a
different collection table to be created and used. Setting MKCOLTAB to 1
causes the table to be created at the beginning of the present run, and to be
stored in a file of the name given in namelist variable COLTABFN. The
relevant parameters from both the namelist (the GNU variable) and the data
statement in the code) are written in the first lines of the collection table. If
MKCOLTAB is set to 0, the model will not create the table, but will instead
attempt to read the file specified in the variable COLTABFN. This option
avoids the need to generate the collection table each time a run is made.
When the collection table is read in, the list of parameters in its first few
lines will override the parameter settings in the namelist and the data
statement.
COLTABFN Is a single-valued character variable giving the name (and path, if any) of
character the collection table, described above.
$MODEL_OPTIONS Namelist
The $MODEL_OPTIONS namelist is where the majority of choices for specifying model
parameterization options are made.
Variable Description
name
NADDSC Grid dependent parameter specifying the number of prognostic scalar fields
integer array to be added to the model simulation. Such scalar fields might be desired by
the user for representing quantities such as chemical or aerosol pollutants.
The added scalar fields are automatically advected, diffused, and marched
forward in time, simply by setting NADDSC to a positive value. It is up to the
user to add routines in the code to compute any initialization, source or sink
terms required for the added scalars. The number of scalars that can be
added in this way is unlimited (provided computer memory is large enough),
but the value of the parameter MAXSCLR must be greater than or equal to
NADDSC.
ICORFLG Flag specifying whether the Coriolis force is to be activated, and, if the
integer simulation is 2-D, whether the v-component of velocity is to be activated
(0 = no, 1 = yes). In a 2-D simulation where only the u and w velocity
components are in the grid plane, since the v-component would be
uncoupled from u and w without Coriolis force, a value of 0 for ICORFLG
deactivates prognosis or use of the v-component.
It should be noted that in a 2-D simulation, which assumes that prognostic
fields are homogeneous in the y-direction, many factors that control the v-
component of wind are excluded from the equation set, and v can become
unrealistic, especially where significant terrain exists in the model domain.
Thus, 2d simulations should usually exclude consideration of the v-
component altogether and use ICORFLG = 0. If the simulation is
horizontally homogeneous (namelist variable INITIAL, set to 1), no
horizontal pressure gradients are initially available to balance the Coriolis
force, and it is useful to compute the Coriolis force only from the difference
between the current model winds and a reference state wind (normally the
initial model wind interpolated from the sounding). Then, the true horizontal
distribution of pressure would be regarded as the sum of the prognosed
model pressure and a gradient in geostrophic balance with the reference
state wind.
IBND Flag controlling the lateral boundary conditions (in the x-direction) that are
integer applied on only the coarse grid of a simulation.
IBND = 1 - this condition applies only to the normal velocity component (i.e.,
U at the east and west boundaries), and activates the Klemp-Wilhelmson
condition in which the normal velocity component specified at the lateral
boundary is effectively advected from the interior assuming a propagation
speed (intended to be similar to a dominant gravity wave phase speed).
This phase speed is specified in the namelist in the variable CPHAS. This
boundary condition is intended to allow most disturbances to propagate out
of the model domain without strongly reflecting back into the interior.
IBND = 4 - sets up a cyclic boundary condition between the two x-direction
boundaries wherein all prognostic variables in the model, not just the normal
velocity component (u), are assigned at the boundaries from values taken
from the model interior just inside the opposite boundary. This makes the
model periodic in the x-direction, effectively eliminating lateral boundaries
from the solution. The number of grid points in the x-direction comprising
one complete cycle in the periodic field is 3 less than NNXP for the coarse
grid, if the second-order advection scheme is used (see descriptions for
IADVL and IADVF in the ENGPARMS Section).
JBND Similar to IBND, but applies to the y-direction, rather than x-direction
integer boundaries. In a 2-D simulation, JBND is irrelevant.
CPHAS Used in conjunction with IBND and/or JBND set to 1, and specifies the
real characteristic propagation speed of internal gravity waves used in the
Klemp-Wilhelmson lateral boundary condition. A value of 20 m/s is a
common setting for this parameter. Use of larger values, even very much
larger, still allows propagation of gravity waves out of the domain reasonably
well, whereas much smaller values tend to lead to stronger reflection of the
waves back into the domain interior. A very large value of CPHAS is
equivalent to the zero-gradient boundary condition.
LSFLG Complements IBND and JBND as a lateral boundary condition flag, applying
integer to all variables other than the normal velocity component.
It deals with all these remaining variables in the same way. LSFLG applies
only for IBND = 1 and for JBND = 1.
LSFLG = 0 - sets the lateral boundary value of each variable to the value in
the field immediately adjacent to the boundary in the interior. This is a zero-
gradient condition. This option is the most commonly used for horizontally-
homogeneous simulations (the INITIAL variable, set to 1), and is
recommended as a first-try option. Occasionally at inflow boundaries, this
zero-gradient option has been found to cause a runaway trend to a field
variable, and must then be replaced by another option.
LSFLG = 1 - is very similar to the 0 value, using a zero-gradient condition at
inflow boundaries, but setting values at outflow boundaries such that the
second spatial derivative in the direction normal to the boundary is zero.
This is simply an extrapolation from two interior points. This condition is
superior for some cases to the simpler zero-gradient option at the outflow
boundary, but usually makes no significant difference.
LSFLG = 2 - identical with the value of 1 for the outflow boundary condition,
but holds variables constant in time at inflow boundaries. This is a possible
remedy to the runaway problem sometimes encountered at inflow
boundaries, as described above, but is not without its own shortcomings. In
cases where flow reverses in time at a lateral boundary, alternating between
inflow and outflow, option 2 for LSFLG will cause the boundary condition to
alternate between constant in time and time-variant. This may generate an
undesirable model response in some cases. Another problem with holding
the variables constant in time at an inflow boundary is that those constant
values are continuously advected into the model interior, and may become
incompatible with the evolving situation in the domain. For example, if a
boundary layer is growing in the model in response to solar heating, the
constant-in-time inflow condition will cause the initial cooler values of
temperature to flow into the model from the boundary, artificially cooling the
boundary layer. A good solution for this situation is to directly specify an
appropriate temporal evolution of the boundary value, still using the
LSFLG = 2 option. This is not presently a standard feature in the code, but
can easily be implemented by the user in subroutine LATSET, located in the
file rbnd.f90.
LSFLG = 3 - leaves values at all boundaries, inflow and outflow, unchanged
in time. This option should be used only for variable initialization simulations
(INITIAL = 2), and has sometimes, but not always, been found to give better
results than LSFLG = 0 for INITIAL = 2.
NFPT Number of grid levels on the coarse grid, starting from the top of the model
integer domain, in which the Rayleigh friction absorbing layer will be activated (also
see DISTIM). A value of 0 leaves Rayleigh friction inactive. Rayleigh friction
must be applied only in stable air, and thus requires the model domain to
extend sufficiently high, most commonly in the stratosphere. The bottom
layer of the Rayleigh friction zone should be above the top of whatever
meteorological system is important to the simulation, so as not to directly
interfere with its behavior. This normally requires adding more model levels
in the vertical than would otherwise be used in a simulation not employing
Rayleigh friction. Rayleigh friction is a relaxation of all three velocity
components and potential temperature toward the undisturbed, horizontally
homogeneous reference state values. Its purpose is to damp gravity wave
and other disturbances which approach the top model boundary, so that they
will not be reflected back downward. Because prognostic fields which are
not initialized horizontally homogeneously cannot sensibly be forced toward
a horizontally-homogeneous state, Rayleigh friction must not be used with
namelist variable INITIAL set to 2. However, top boundary nudging (which
damps gravity waves) for horizontally-inhomogeneous initialization may be
activated elsewhere (see TNUDTOP and ZNUDTOP.)
DISTIM Used in conjunction with namelist variable NFPT in activating Rayleigh
real friction in the upper region of the model. DISTIM specifies a dissipation time
scale in seconds, representing the e-folding decay time of a disturbance
being damped by the Rayleigh friction layer in the absence of any other
source or sink terms. This decay rate strictly applies at the top boundary of
the model only, and the strength of the damping decreases linearly with
height, reaching zero at the lowest of the NFPT levels in which the damping
is activated. DISTIM should be related to the rate at which the model is
generating upward propagating gravity waves, and normally ranges from 60
to 200 seconds. DISTIM must be at least twice the value of DTLONG for
numerical stability. The model solution proves to be rather insensitive to
DISTIM, provided it is in or near this range.
ISWRTYP Flag specifying options for evaluating shortwave radiative transfer in the
integer model (0 = no radiation, 1 = Chen and Cotton parameterization, 2 = Mahrer
and Pielke parameterization, 3 = two-stream parameterization developed by
Harrington).
The Mahrer and Pielke scheme is the simplest and by far the least
expensive computationally. The main reason for this is that it ignores liquid
and ice in the atmosphere, although it does account for water vapor. This
scheme should not be used, for example, if attenuation of solar radiation by
clouds is important to the simulation.
The Chen and Cotton scheme does account for condensate in the
atmosphere, but not whether it is cloud water, rain, or ice. This is a major
limitation.
The Harrington parameterization accounts for each form of condensate
(cloud water, rain, pristine ice, snow, aggregates, graupel, and hail) as well
as water vapor, and even utilizes information on ice crystal habit. In
addition, the scheme adds upper atmospheric levels for radiation
computation for cases where the model domain does not extend up to at
least 25 km (roughly the height of the ionosphere). This is the most
sophisticated parameterization and is recommended over the Chen and
Cotton scheme. It is, however, still the most computationally expensive
scheme, although work is planned to improve its performance. (See also
ILWRTYP and RADFRQ.)
ILWRTYP Similar to ISWRTYP, but applies to longwave, rather than shortwave,
integer radiation. The same values for ILWRTYP apply with the same meaning as
for ISWRTYP.
RADFRQ Specifies how often during a model run the radiative parameterization is to
real be exercised to compute updated values for the radiative contribution to
tendencies of both atmospheric and land surface temperatures. The
tendencies themselves are applied every timestep of the model integration,
but the tendencies are updated only at time intervals specified by RADFRQ.
Because computing the radiative contribution to temperature tendencies is a
relatively computationally expensive process, it is suggested that this
computation be done only at intervals of 600 to 1200 seconds (by specifying
such values for RADFRQ). In most situations, this is often enough to
account for changes in radiative transfer.
LONRAD Flag specifying whether the longitudinal variation of solar hour angle is to be
integer accounted for in the computation of shortwave solar radiation, or whether
these angles are to be assumed constant over the model domain. A value
of 0 for LONRAD assumes the hour angle is longitudinally constant, and a
value of 1 accounts for its longitudinal variation. The latter choice is the one
normally made in a simulation of a real event, while the former choice is
used when a certain level of idealism is required in a simulation, such as
horizontal homogeneity of external forcing.
NNQPARM Grid-dependent flag used to select the convective parameterization is to be
integer array activated or not.
NNQPARM = 0 no convective parameterization for the grid.
NNQPARM = 1 the Kuo-type parameterization will be run for the grid.
NNQPARM = 2 the Kain-Fritsch parameterization will be run for the grid
(requires LEVEL=3).
$MODEL_SOUND Namelist
The $MODEL_SOUND namelist consists of a set of variables for specifying a sounding to be
used in initializing a simulation. This method of initialization is performed horizontally
homogeneously, and is performed only when the flag INITIAL is set to 1. The variables in the
$MODEL_SOUND namelist consist mainly of (1) arrays containing the actual values of pressure
or height, velocity, temperature, and moisture, and (2) a set of flags specifying how the array
values are to be interpreted. An alternative form of specifying five of the variables in this
namelist, PS, TS, RTS, US, and VS, all described below, is to enter them into a file called
SOUND_IN in tabular form. This option is selected by setting the first value of PS to 0. In this
case, the model opens and reads the file SOUND_IN, which must reside in the same directory as
the model executable. The code that reads from this file is contained in the file rhhi.f90 in
subroutine ARRSND in the first DO loop. Free format is assumed with one sounding level per
record starting with the lowest sounding level at the top of the file, and the five variables are read
from each record in the order shown above.
Variable Description
name
IPSFLG Is a flag specifying how the values given for PS are to be interpreted. When
integer IPSFLG is set to 0, all values in PS are interpreted as pressures in millibars,
and when IPSFLG is set to 1, all values in PS are interpreted as heights in
meters. In either case, the PS values are used to define the heights in the
sounding at which all sounding data applies.
ITSFLG Is a flag specifying how the values given for TS are to be interpreted. When
integer ITSFLG is set to 0, all values in TS are interpreted as temperatures in
degrees C, when ITSFLG is set to 1, all values in TS are interpreted as
temperatures in degrees K, and when ITSFLG is set to 2, all values in TS
are interpreted as potential temperatures in degrees K. The options allow
the model to read sounding temperature data in any of these forms.
IRTSFLG Flag specifying how the values given for RTS are to be interpreted. When
integer IRTSFLG is set to 0, all values in RTS are interpreted as dew point
temperatures in degrees C, when IRTSFLG is set to 1, all values in RTS are
interpreted as dew point temperatures in degrees K, when IRTSFLG is set to
2, all values in RTS are interpreted as water mixing ratio values in grams per
kilogram, when IRTSFLG is set to 3, all values in RTS are interpreted as
relative humidities in percentage, and if IRTSFLG is set to 4, all values in
RTS are interpreted as dew point depressions in degrees K. The options
allow the model to read sounding moisture data in any of these forms.
IUSFLG Flag specifying how the values given for US and VS or for USNDG and
integer VSNDG are to be interpreted. When IUSFLG is set to 0, all values in US (or
USNDG) are interpreted as components of velocity in meters per second in
the x-direction, and all values in VS (or VSNDG) are interpreted as
components of velocity in meters per second in the y-direction. When
IUSFLG is set to 1, all values in US (or USNDG) are interpreted as wind
directions in degrees azimuth clockwise from true north, and all values in VS
(or VSNDG) are interpreted as wind speeds in meters per second.
HS Sounding heights, but only the first value is read from the namelist. This first
real array value indicates the absolute height (relative to sea level) of the first or lowest
sounding level. It must be at or below the lowest topography height in the
RAMS model domain. This may require adding one or more levels to the
bottom of a real sounding.
PS Pressures in millibars or the heights in meters of the sounding levels starting
real array at the ground and proceeding upward. The choice of meaning is controlled
by the value of IPSFLG. If PS represents heights, the first value of PS is still
specified as a pressure in millibars, and its corresponding height is read from
namelist variable HS. The primary requirement of the sounding data is that
it extend to a height greater than the top of the model domain, and at least
as low as the lowest topography in the domain. Thus, the top sounding level
must contain either a height or a pressure higher in the atmosphere than the
model domain top, which is itself determined by the combination of namelist
parameters NNZP, DELTAZ, DZRAT, and DZMAX, or by ZZ. A maximum
of 200 values may be specified for PS, although with code modification this
number could be increased if necessary. The values given for PS will
determine the vertical spatial resolution of the sounding, and should be
chosen to properly represent any important significant levels. Note the
special option of setting the first value of PS to 0., as described at the
beginning of this Section.
TS Sounding temperature values. The way in which the values are interpreted
real array is specified by namelist variable ITSFLG. The number of values specified
for TS must equal the number of values specified for PS. The user should
use caution in specifying sounding temperatures. Superadiabatic profiles in
the sounding are strongly discouraged (which does not mean that the model
simulation may not successfully develop superadiabatic regions after
initialization). High vertical resolution is sometimes desirable in a sounding
because the model fields of temperature and moisture mixing ratio are
interpolated linearly from it in the vertical direction, and relative humidity is a
very nonlinear function of these two interpolated fields. This can result in
supersaturated layers in the model initial fields where none exist in the
sounding.
RTS Sounding moisture values. The way in which the values are interpreted is
real array specified by namelist variable IRTSFLG. The number of values specified for
RTS must equal the number of values specified for PS. (Also see TS.)
US Sounding wind values. The way in which the values are interpreted is
real array specified by namelist variable IUSFLG. The number of values specified for
US must equal the number of values specified for PS.
VS Sounding winds values. The way in which the values are interpreted is
real array specified by namelist variable IUSFLG. The number of values specified for
VS must equal the number of values specified for PS.
$MODEL_PRINT Namelist
The $MODEL_PRINT namelist provides a means for obtaining a quick look at model fields. It is
used to specify selected data from the model to be written to the standard output file generated
with a model run. This data is then examined by displaying the contents of the standard output
file.
Variable Description
name
NPLT Total number of data subsets to be written to the standard output file. Most
integer of these data subsets consist of a 2-D cross section of values from a 3-D
model field. Different cross sections from the same model field are
considered as separate data subsets. (If the model itself is run in 2-D, the 2-
D cross section normally encompasses the entire model domain.) The exact
specification of the cross section to be output is made in namelist variables
IPLFLD, IXSCTN, and ISBVAL. Fields from the LEAF2 submodel of RAMS
are output in their entirety rather than as a specified 2-D slab.
IPLFLD Variables to be written to the standard output file. Each value specified for
character IPLFLD must be followed by a comma, and the total number of values
array specified must be at least the value specified for NPLT. The authentic
complete list of character strings that can be used as values for IPLFLD is
provided in FUNCTION OPTLIB and in subroutine SFCPRT located in the
file rprnt.f90. Other choices are easily added to OPTLIB.
PLFMT FORTRAN format to be used in writing a data subset (see NPLT) to the
character standard output file. Although a default format exists in the model for every
array field variable, defining alternative formats in PLFMT is a way of overriding
the default when necessary. Any element of PLFMT that the user wishes to
define a value for is listed individually. We illustrate the use of this variable
by means of the following example: PLFMT(2) = '3PF6.1'. The subscript 2,
denoting the second element in the PLFMT array, corresponds to the
second element specified in the IPLFLD array. The character string
assigned to PLFMT(2) denotes the format to be used in writing that second
field in IPLFLD. The format statement itself contains the F6.1 part referring
to the well-known floating point format, and the less-well-known 3P part
which scales (multiplies) each value by 10**3 before writing it. This latter
feature is sometimes necessary when values in a given field become
unusually large or small, and are thus incompatible with the default format.
For example, the default format for vertical velocity involves a multiplication
of the model values by 100 so that output values are expressed in cm/sec.
This is usually best for mesoscale simulations, but not appropriate for
simulations of deep convection which generate vertical velocities of tens of
meters per second.
IXSCTN Controls the orientation of the 2-D cross section extracted from the given
integer array model field for writing to the standard output file. A value of 1 for IXSCTN
specifies the data subset to be an X-Z cross section, a value of 2 denotes a
Y-Z cross section, and a value of 3 denotes an X-Y cross section. Fields
from the LEAF2 submodel of RAMS (IPLFLD = TGP, TGPT, WGP,
SCHAR, or GSF) are output in their entirety. Each element in the IXSCTN
array refers to the corresponding element in the IPLFLD and ISBVAL
arrays. A number of values equal to or greater than NPLT must be
specified.
ISBVAL Selects a specific 2-D slab from a 3-D model field among all slabs having the
integer array orientation specified by IXSCTN. Each number specified for IXSCTN refers
to the grid location index in the direction perpendicular to the slab, with the
value 1 denoting either the westernmost, the southernmost, or the lowest
slab, depending on the orientation. Each element in the IXSCTN array
refers to the corresponding element in the IPLFLD and IXSCTN arrays. A
number of values equal to or greater than NPLT must be specified.
MAXY Maximum number of grid points (in the "y'' or north-south direction) in any of the
integer RAMS or pressure grids.
MAXTIMES Maximum number of data analysis times that can be processed in a single run.
integer
MAXAGRDS Maximum number of RAMS grids that can have varfiles generated.
integer
MAXSIGZ Maximum number of vertical levels that can be used in the _z analysis.
integer
MAXLEV Maximum number of levels in an input rawinsonde.
integer
MAXSNAME Maximum number of input observations
z Stage
$ISAN_ISENTROPIC Namelist - ISAN Isentropic/
Variable Description
name
NISN Number of isentropic levels on which to perform objective analysis. A value
integer around 40 is suggested for NISN to provide adequate vertical resolution.
LEVTH Isentropic levels in integer degrees Kelvin of the isentropic grid on which
integer array objective analysis is performed. The spacing that normally provides
sufficient vertical resolution is 1-2 K near the ground, 3-5 K in the remainder
of the troposphere, 20-30 K in the lower stratosphere, and 50 K in the middle
stratosphere. It is now common practice in RAMS to use the NCEP
reanalysis pressure level data as the first guess field in RAMS, and the top
level of this dataset is 10 mb. Thus, isentropic levels may be specified to
values as high as 800 K, in case the model domain is unusually high.
NIGRIDS Number of RAMS grids to analyze. This must be less than or equal to
integer NGRIDS in the $MODEL_GRIDS namelist. Although the ability exists to
analyze atmospheric data and generate a varfile independently for each
RAMS grid, this sometimes does not produce analyses that match smoothly
across nested grid boundaries. Thus, care should be taken when using
varfiles for nested grids for 4DDA (Newtonian nudging during model runtime)
(see TNUDCENT). Gradients of prognostic variables initialized at grid
boundaries will usually weaken with time if they are not continuously
restored by strong nudging.
TOPSIGZ z analysis will be done to all model levels under this height (in meters).
real
HYBBOT The hybrid analysis between the isentropic and z datasets is accomplished
real in this version of ISAN by a weighted blending of the data over a specified,
terrain-following layer using a linear (in height above the surface) weighting
profile. At the bottom of the layer, the data is completely from the z
analysis; at the top of the layer, the data is completely from the isentropic
analysis. HYBBOT is the approximate height above the surface of the
bottom of this layer. The actual bottom is found as the closest model level to
HYBBOT.
HYBTOP Approximate height above the surface of the top of the isentropic/ z
real blending layer (see HYBBOT above). The actual height of the top is found
as the closest model level to HYBTOP.
SFCINF In addition to the blending of the isentropic and z analysis in the creation of
real the varfile, the surface data analysis is also blended in a layer near the
ground. This only occurs if there are actual surface observations close
enough to a grid point and the model level is within a certain vertical
distance from the actual station height. This distance is SFCINF (meters).
The actual weight given to the surface analysis varies from a full weight if the
difference between the model level and station height is 0. to no weight for
the surface (full weight for the upper air data) when the difference reaches
SFCINF.
SIGZWT Optional weight given to the z analysis in the blending process. If SIGZWT
real is set to 0., then the varfile will only contain information from the isentropic
analysis. If SIGZWT is set to 1., then the varfile will contain full information
from the z analysis under HYBBOT. Any value between 0. and 1. may be
used. For most applications, this should be set to 1.
NFEEDVAR In the creation of the varfiles when more than one grid is analyzed, the data
integer can optionally go through the nesting "feed back'' process. The feed back
must be done if the 4-dimensional data assimilation options are to be used.
Set NFEEDVAR to 1 to do the feed back. Set NFEEDVAR to 0 usually only
if you are doing a data analysis on different grid resolutions, will not be
running the model, and you want to see the unmodified results of the
different resolution analyses. Normally, leave this set to 1.
MAXSTA Maximum number of rawinsondes expected in the data access. Memory will
integer be allocated using this number, so don't set it too big.
MAXSFC Maximum number of surface observations expected in the data access.
integer Memory will be allocated using this number, so don't set it too big.
NOTSTA Number of stations in the domain area to be excluded if they are found. The
integer specific stations to be excluded are indicated by NOTID (see below).
Excluding stations in this way is the means for eliminating stations with bad
data.
NOTID Station IDs to be excluded from any further processing (see NOTSTA
character above). Prefix the station ID with an 'r' for rawinsonde or an 's' for surface
array observation.
STASEP Surface observations will be objectively analyzed with the Barnes scheme
real that assumes uniform data coverage. Frequently, there are 2 surface
stations reporting in the same city. As the surface stations are processed,
any station within a distance STASEP (in degrees of latitude) of a previously
processed station will be discarded unless the new one has less missing
data than the previous one, in which case the other previous station will be
discarded.
IOBSWIN To define the variables:
integer
obssecs - absolute time of an observation (in seconds)
nasecs - absolute time of the data analysis (in seconds)
- If IOBSWIN equals zero, then obssecs must exactly equal nasecs. Otherwise,
the observation will not be used.
- If IOBSWIN is less than zero, then the time of the observation must be in the
window from (nasecs-abs(iobswin)) to nasecs.
- If IOBSWIN is greater than zero, then the time of the observation must be in
the window from (nasecs-iobswin) to (nasecs+iobswin).