The namelist.input file is used for both the real.exe and wrf.exe executables. Within the file, multiple columns are used for multiple domains (nests) and the "max_dom" parameter determines the number of domains (and nests) to use. So, for example, if you define 3 columns for parameter in the namelist but set max_dom = 2, the last column will be ignored. Note that not all parameters have multiple columns.
<WRF INSTALL DIR>/run/README.namelist contains descriptions of all the namelist variables as well as variables that can be added to the namelist for special model setups.
<WRF INSTALL DIR>/test/em_real directory contains several sample namelist.input files.
| Name |
Value |
Description |
| |
|
|
&time_control |
|
Time control |
| run_days |
1 |
run time in days |
| run_hours |
0 |
run time in hours
Note: if it is more than 1 day, one may use both run_days and run_hours or just run_hours. e.g. if the total run length is 36 hrs, you may set run_days = 1, and run_hours = 12, or run_days = 0, and run_hours 36 |
| run_minutes |
0 |
run time in minutes |
run_seconds |
0 |
run time in seconds |
start_year (max_dom) |
2001 |
Four digit year of starting time |
start_month (max_dom) |
06 |
Two digit month of starting time |
start_day (max_dom) |
11 |
Two digit day of starting time |
start_hour (max_dom) |
12 |
Two digit hour of starting time |
start_minute (max_dom) |
00 |
Two digit minute of starting time |
start_second (max_dom) |
00 |
Two digit second of starting time.
Note: the start time is used to name the first wrfout file. It also controls the start time for nest domains, and the time to restart |
| tstart (max_dom) |
00 |
NMM--starting hour of forecast |
end_year (max_dom) |
2001 |
Four digit year of ending time |
end_month (max_dom) |
06 |
Two digit month of ending time |
end_day (max_dom) |
12 |
Two digit day of ending time |
end_hour (max_dom) |
12 |
Two digit hour of ending time |
end_minute (max_dom) |
00 |
Two digit minute of ending time |
end_second (max_dom) |
00 |
Two digit second of ending time.
Note all end times also control when the nest domain integrations end. All start and end times are used by real.exe. One may use either run_days/run_hours etc. or end_year/month/day/hour etc. to control the length of model integration. But run_days/run_hours takes precedence over the end times. Program real.exe uses start and end times only. |
interval_seconds |
10800 |
time interval between incoming real data, which will be the interval between the lateral boundary condition file (for real only) |
input_from_file (max_dom) |
.true. |
logical; whether nested run will have input files for domains other than 1 |
fine_input_stream (max_dom) |
|
selected fields from nest input |
|
0 |
all fields from nest input are used |
|
2 |
only nest input specified from input stream 2 (defined in the Registry) are used |
history_interval (max_dom) |
60 |
history output file interval in minutes (integer only) |
history_interval_mo (max_dom) |
1 |
history output file interval in months (integer); used as alternative to history_interval |
history_interval_d (max_dom) |
1 |
history output file interval in days (integer); used as alternative to history_interval |
history_interval_h (max_dom) |
1 |
history output file interval in hours (integer); used as alternative to history_interval |
history_interval_m (max_dom) |
1 |
history output file interval in minutes (integer); used as alternative to history_interval and is equivalent to history_interval |
history_interval_s (max_dom) |
1 |
history output file interval in seconds (integer); used as alternative to history_interval |
frames_per_outfile (max_dom) |
1 |
output times per history output file, used to split output files into smaller pieces |
restart |
|
whether this run is a restart run
.false. = not a restart |
| cycling |
.false. |
whether this run is a cycling run, if so, initializes look-up table for Thompson schemes only |
restart_interval |
1440 |
restart output file interval in minutes |
| reset_simulation_start |
.false. |
whether to overwrite simulation_start_date with forecast start time |
Auxinput1_inname |
|
input from WPS (this is the default):
“met_em.d<domain>_<date>”
input from SI:
“wrf_real_input_em.d<domain>_<date>”
|
io_form_history |
2 |
1 = binary format (no supported post-processing software available)
2 = netCDF
4 = PHDF5 format (no supported post-processing software available)
5 = GRIB 1
10 = GRIB 2
102 = split netCDF files one per processor (no supported post-processing software for split files) |
io_form_restart |
2 |
2 = netCDF; 102 = split netCDF files one per processor (must restart with the same number of processors) |
io_form_input |
2 |
2 = NetCDF |
io_form_boundary |
2 |
1 = binary format (no supported post-processing software)
2 = netCDF
4 = PHDF5 format (no supported post-processing software)
5 = GRIB1 format (no supported post-processing software) |
| frames_per_emissfile |
12 |
Number of times in each chemistry emission file. |
| io_style_emiss |
1 |
Style to use for the chemistry emission files. 0 = Do not read emissions from files,
1 = Cycle between two 12 hour files (set frames_per_emissfile=12), 2 = Dated files with length set by frames_per_emissfile |
debug_level |
0 |
0,50,100,200,300 values give increasing prints |
| auxinput1_inname |
|
EM Core:
Input to real from WPS: "met_em.d<domain>.<date>", to Input to real from SI: "wrf_real_input_em.d<domain>.<date>"
NMM Core:
Input to real from WPS: "met_nm.d<domain>.<date>"
Input to real from SI: "wrf_real_input_nm.d<domain>.<date>" |
auxhist2_outname |
|
"rainfall_d<domain>"--file name for extra output; if not specified, auxhist2_d<domain>_<date> will be used. Also note that to write variables in output other than the history file requires Registry.EM file change |
auxhist2_interval |
10 |
interval in minutes |
io_form_auxhist2 |
2 |
output in netCDF |
| auxinput4_inname |
|
"wrflowinp_d<domain>" |
| auxinput4_interval |
360 |
minutes generally matches time given by interval_seconds |
nocolons |
.false. |
replace : with _ in output file names |
write_input |
.true. |
write input-formatted data as output for 3DVAR application |
inputout_interval |
180 |
interval in minutes when writing input-formatted data |
input_outname |
|
Output file name from 3DVAR
“wrf_3dvar_input_d<domain>_<date>” |
inputout_begin_y |
0 |
beginning year to write 3DVAR data |
inputout_begin_mo |
0 |
beginning month to write 3DVAR data |
inputout_begin_d |
0 |
beginning day to write 3DVAR data |
inputout_begin_h |
3 |
beginning hour to write 3DVAR data |
Inputout_begin_m |
0 |
beginning minute to write 3DVAR data |
inputout_begin_s |
0 |
beginning second to write 3DVAR data |
inputout_end_y |
0 |
ending year to write 3DVAR data |
inputout_end_mo |
0 |
ending month to write 3DVAR data |
inputout_end_d |
0 |
ending day to write 3DVAR data |
inputout_end_h |
12 |
ending hour to write 3DVAR data |
Inputout_end_m |
0 |
ending minute to write 3DVAR data |
inputout_end_s |
0 |
ending second to write 3DVAR data. |
|
|
The above example shows that the input-formatted data are output starting from hour 3 to hour 12 in 180 min interval. |
&domains |
|
domain def: dimensions, nesting params |
time_step |
60 |
time step for integration in integer seconds (recommended 6*dx in km for a typical case) |
time_step_fract_num |
0 |
numerator for fractional time step |
time_step_fract_den |
1 |
denominator for fractional time step Example, if you want to use 60.3 sec as your time step, set time_step = 60, time_step_fract_num = 3, and time_step_fract_den = 10 |
max_dom |
1 |
number of domains - set it to > 1 if it is a nested run |
s_we (max_dom) |
1 |
start index in x (west-east) direction (leave as is) |
e_we (max_dom) |
91 |
end index in x (west-east) direction (staggered dimension) |
s_sn (max_dom) |
1 |
start index in y (south-north) direction (leave as is) |
e_sn (max_dom) |
82 |
end index in y (south-north) direction (staggered dimension) |
s_vert (max_dom) |
1 |
start index in z (vertical) direction (leave as is) |
e_vert (max_dom) |
28 |
number of vertical eta levels. end index in z (vertical) direction. Same value for all nests. |
| num_metgrid_soil_levels |
4 |
number of vertical soil levels or layers input. from WPS metgrid program |
num_metgrid_levels |
27 |
number of vertical levels in the incoming data: type ncdump –h to find out
(WPS data only) |
eta_levels |
1.0..0.0 |
model eta levels (WPS data only). If a user does not specify this, real will provide a set of levels |
force_sfc_in_vinterp |
1 |
use surface data as lower boundary when interpolating through this many eta levels |
p_top_requested |
5000 |
p_top to use in the model |
| ptsgm |
42000 |
FOR NMM: defines the pressure interface dividing
; the terrain following portion of the hybrid vertical
; coordinate (p > ptsgm) and the purely
; isobaric portion of the vertical coordinate (p < ptsgm) |
| vert_refine_fact |
1 |
vertical refinement factor for ndown |
| sfcp_to_sfcp |
.false. |
Optional method to compute model's surface pressure when incoming
; data only has surface pressure and terrain, but not SLP |
| smooth_cg_topo |
.false. |
Smooth the outer rows and columns of domain 1's topography w.r.t.
; the input data |
| use_tavg_for_tsk |
.false. |
whether to use diurnally averaged surface temp as skin temp. The
diurnall averaged surface temp can be computed using WPS utility
avg_tsfc.exe. May use this option when SKINTEMP is not present. |
| extrap_type |
2 |
vertical extrapolation of non-temperature fields. 1 = extrapolate using the two lowest levels. 2 = use lowest level as constant below ground |
| t_extrap_type |
2 |
vertical extrapolation for potential temperature. 1 = isothermal
; 2 = -6.5 K/km lapse rate for temperature
; 3 = constant theta |
| use_levels_below_ground |
.true. |
in vertical interpolation, use levels below input surface level
; T = use input isobaric levels below input surface
; F = extrapolate when WRF location is below input surface value |
| use_surface |
.true. |
use the input surface level data in the vertical interp and extrap
; T = use the input surface data
; F = do not use the input surface data |
| zap_close_levels |
500 |
ignore isobaric level above surface if delta p (Pa) < zap_close_levels |
interp_type |
2 |
vertical interpolation; 1: linear in pressure; 2: linear in log (pressure) |
lagrange_order |
1 |
vertical interpolation order; 1: linear; 2: quadratic |
lowest_lev_from_sfc |
.false. |
T = use surface values for the lowest eta (u,v,t,q); F = use traditional interpolation |
dx (max_dom) |
10000 |
grid length in x direction, unit in meters |
dy (max_dom) |
10000 |
grid length in y direction, unit in meters |
ztop (max_dom) |
19000. |
used in mass model for idealized cases |
grid_id (max_dom) |
1 |
domain identifier |
parent_id (max_dom) |
0 |
id of the parent domain |
i_parent_start (max_dom) |
0 |
starting LLC I-indices from the parent domain |
j_parent_start (max_dom) |
0 |
starting LLC J-indices from the parent domain |
parent_grid_ratio (max_dom) |
1 |
parent-to-nest domain grid size ratio: for real-data cases the ratio has to be odd; for idealized cases, the ratio can be even if feedback is set to 0. |
parent_time_step_ratio (max_dom) |
1 |
parent-to-nest time step ratio; it can be different from the parent_grid_ratio |
feedback |
1 |
feedback from nest to its parent domain; 0 = no feedback |
smooth_option |
0 |
smoothing option for parent domain, used only with feedback option on.
0 = no smoothing
1 = 1-2-1 smoothing
2 = smoothing-desmoothing |
|
|
Namelist variables for controlling the moving nest option:
Note that moving nest needs to be activated at the compile time by adding -DMOVE_NESTS to the ARCHFLAGS. The maximum number of moves, max_moves, is set to be 50, but can be modified in source code file frame/module_driver_constants.F |
num_moves |
4 |
total number of moves for all domains |
move_id (max_moves) |
2,2,2,2 |
a list of nest domain id's, one per move |
move_interval (max_moves) |
60,120,150,180 |
time in minutes since the start of this domain |
move_cd_x (max_moves) |
1,1,0-1, |
the number of parent domain grid cells to move in i direction |
move_cd_y (max_moves) |
1,0,-1,1 |
the number of parent domain grid cells to move in j direction (positive in increasing i/j directions, and negative in decreasing i/j directions. The limitation now is to move only 1 grid cell at each move. |
vortex_interval (max_dom) |
15 |
how often the new vortex position is computed |
max_vortex_speed (max_dom) |
40 |
used to compute the search radius for the new vortex position |
corral_dist (max_dom) |
8 |
how many coarse grid cells the moving nest is allowed to get near the coarse grid boundary |
| track_level |
50000 |
pressure value in Pa where the vortex is tracked |
| time_to_move (max_dom) |
0 |
time (in minutes) to start the moving nests |
tile_sz_x |
0 |
number of points in tile x direction |
tile_sz_y |
0 |
number of points in tile y direction can be determined automatically |
numtiles |
1 |
number of tiles per patch (alternative to above two items) |
nproc_x |
-1 |
number of processors in x for decomposition |
nproc_y |
-1 |
number of processors in y for decomposition -1: code will do automatic decomposition >1: for both: will be used for decomposition |
| ARW Core Only: Adaptive time step option |
| use_adaptive_time_step |
.false. |
T/F use adaptive time stepping, ARW only |
| step_to_output_time |
.true. |
if adaptive time stepping, T/F modify the
time steps so that the exact history time is reached |
| target_cfl (max_dom) |
1.2,1.2 |
vertical and horizontal CFL <= to this value implies
no reason to reduce the time step, and to increase it |
| max_step_increase_pct (max_dom) |
5,51 |
percentage of previous time step to increase, if the
max(vert cfl, horiz cfl) <= target_cfl, then the time
will increase by max_step_increase_pct. Use something |
| starting_time_step (max_dom) |
-1,-1 |
flag = -1 implies use 6 * dx (defined in start_em),
starting_time_step = 100 means the starting time step |
| max_time_step (max_dom) |
-1,-1 |
flag = -1 implies max time step is 3 * starting_time_step,
max_time_step = 100 means that the time step will not |
| min_time_step (max_dom) |
-1,-1 |
flag = -1 implies max time step is 0.5 * starting_time_step,
min_time_step = 100 means that the time step will not |
| adaptation_domain |
1 |
default, all fine grid domains adaptive dt driven by coarse-grid
; 2 = Fine grid domain #2 determines the fundamental adaptive dt. |
&physics |
|
physics options |
| chem_opt |
0 |
chemistry option - use WRF-Chem |
mp_physics (max_dom) |
|
microphysics option |
|
0 |
no microphysics |
|
1 |
Kessler scheme: : A warm-rain (i.e. no ice) scheme used commonly in idealized cloud modeling studies. |
|
2 |
Lin et al. scheme: a sophisticated scheme that has ice, snow and graupel processes, suitable for real-data high-resolution simulations. |
|
3 |
WRF Single-Moment (WSM) 3-class simple ice scheme: A simple efficient scheme with ice and snow processes suitable for mesoscale grid sizes. |
|
4 |
WRF Single-Moment (WSM) 5-class scheme. A slightly more sophisticated version of option 3 that allows for mixed-phase processes and super-cooled water. This scheme has been preliminarily tested for WRF-NMM. |
|
5 |
Ferrier scheme: A scheme that includes prognostic mixed-phase processes. This scheme was recently changed so that ice saturation is assumed at temperatures colder than -30C rather than -10C as in the original implementation. This scheme is well tested for WRF-NMM, used operationally at NCEP. |
|
6 |
WSM 6-class graupel scheme: A new scheme with ice, snow and graupel processes suitable for high-resolution simulations. This scheme has been preliminarily tested for WRF-NMM. |
| |
7 |
Goddard GCE scheme (also uses gsfcgce_hail, gsfcgce_2ice) |
|
8 |
Thompson graupel scheme: a scheme with six classes of moisture species plus number concentration for ice as prognostic variables. This scheme has been preliminarily tested for WRF-NMM. |
|
10 |
Morrison 2-moment scheme |
| |
14 |
WDM 5-class scheme |
| |
16 |
WDM 6-class scheme |
| |
98 |
Thompson scheme (version from V3.0) |
mp_zero_out |
|
For non-zero mp_physics options, to keep Qv >= 0, and to set the other moisture fields < a threshold value to zero |
|
0 |
no action taken, no adjustment to any moist field |
|
1 |
except for Qv, all other moist arrays are set to zero if they fall below a critical value |
|
2 |
Qv is >= 0, all other moist arrays are set to zero if they fall below a critical value |
mp_zero_out_thresh |
1.e-8 |
critical value for moisture variable threshold, below which moist arrays (except for Qv) are set to zero (unit: kg/kg) |
ra_lw_physics (max_dom) |
|
longwave radiation option |
| gsfcgce_hail |
0 |
0= for running gsfcgce microphysics with graupel, 1 =for running gsfcgce microphysics with hail |
| gsfcgce_2ice |
0 |
0=for running with snow, ice and graupel/hail, 1=for running with only ice and snow, 2=for running with only ice and graupel (only used in very extreme situation). gsfcgce_hail is ignored if gsfcgce_2ice is set to 1 or 2. |
| no_mp_heating |
0 |
0=normal, 1=turn off latent heating from a microphysics scheme |
| ra_lw_physics (max_dom) |
|
longwave radiation option |
|
0 |
no longwave radiation |
|
1 |
RRTM scheme: Rapid Radiative Transfer Model. An accurate scheme using look-up tables for efficiency. Accounts for multiple bands, trace gases, and microphysics species. This scheme has been preliminarily tested for WRF-NMM. |
|
3 |
CAM scheme |
| |
4 |
rrtmg scheme |
| |
31 |
Earth Held-Suarez forcing |
|
99 |
GFDL scheme: Geophysical Fluid Dynamics Laboratory (GFDL) longwave. An older version multi-band, transmission table look-up scheme with carbon dioxide, ozone and water vapor absorptions. Cloud microphysics effects are included. This scheme is well tested for WRF-NMM, used operationally at NCEP.
Note: If it is desired to run GFDL with a microphysics scheme other than Ferrier, a modification to module_ra_gfdleta.F is needed to comment out (!) #define FERRIER_GFDL. |
ra_sw_physics (max_dom) |
|
shortwave radiation option |
|
0 |
no shortwave radiation |
|
1 |
Dudhia scheme: Simple downward integration allowing for efficient cloud and clear-sky absorption and scattering. This scheme has been preliminarily tested for WRF-NMM. |
|
2 |
Goddard Shortwave scheme: Two-stream multi-band scheme with ozone from climatology and cloud effects. |
|
3 |
CAM scheme -also must set levsiz, paerlev, cam_abs_dim1/2 (see below) |
| |
4 |
rrtmg scheme |
|
99 |
GFDL scheme: Geophysical Fluid Dynamics Laboratory (GFDL) shortwave. A two spectral bands, k-distribution scheme with ozone and water vapor as the main absorbing gases. Cloud microphysics effects are included. This scheme is well-tested for WRF-NMM, used operationally at NCEP.
Note: If it is desired to run GFDL with a microphysics scheme other than Ferrier, a modification to module_ra_gfdleta.F is needed to comment out (!) #define FERRIER_GFDL. |
radt (max_dom) |
30 |
minutes between radiation physics calls. Recommend 1 minute per km of dx (e.g. 10 for 10 km grid) |
| nrads (max_dom) |
|
NMM only - number of fundamental timesteps between
calls to shortwave radiation; the value
is set in Registry.NMM but is overridden
by namelist value; radt will be computed
from this. |
| nradl (max_dom) |
|
NMM only - number of fundamental timesteps between
calls to longwave radiation; the value
is set in Registry.NMM but is overridden
by namelist value. |
co2tf |
1 |
CO2 transmission function flag for GFDL radiation only. Set it to 1 for ARW, which allows generation of CO2 function internally |
| ra_call_offset |
0 |
radiation call offset. 0 (no offset), =-1 (old offset) |
cam_abs_freq_s |
21600 |
CAM clearsky longwave absorption calculation frequency (recommended minimum value to speed scheme up) |
levsiz |
59 |
for CAM radiation input ozone levels |
paerlev |
29 |
for CAM radiation input aerosol levels |
cam_abs_dim1 |
4 |
for CAM absorption save array |
cam_abs_dim2 |
|
for CAM 2nd absorption save array
(same as e_vert) |
sf_sfclay_physics (max_dom) |
|
surface-layer option |
| |
0 = no surface-layer
1 = Monin-Obukhov Similarity scheme: Based on Monin-Obukhov with Carslon-Boland viscous sub-layer and standard similarity functions from look-up tables
2 = Monin-Obukhov (Janjic Eta) Similarity scheme: Based on similarity theory with viscous sublayers both over solid surfaces and water points. This scheme is well tested for WRF-NMM, used operationally at NCEP
3 = NCEP GFS scheme (NMM only)
7 = Pleim-Xu (ARW only), only tested with Pleim-Xu surface and ACM2 PBL |
sf_surface_physics (max_dom) |
|
land-surface option (set before running real; also set correct num_soil_layers) |
|
0 |
0 = no surface temp prediction |
|
1 |
Thermal Diffusion scheme: soil temperature only scheme, using five layers. |
|
2 |
Noah Land-Surface Model: Unified NCEP/NCAR/AFWA scheme with soil temperature and moisture in four layers, fractional snow cover and frozen soil physics. This scheme has been preliminarily tested for WRF-NMM. |
|
3 |
RUC Land-Surface Model: Rapid Update Cycle operational scheme with soil temperature and moisture in six layers, multi-layer snow and frozen soil physics. This scheme has been preliminarily tested for WRF-NMM. |
| |
7 |
Pleim-Xu scheme (ARW only) |
| sf_urban_physics (max_dom) |
0 |
0 activate urban canopy model (in Noah LSM only) |
| |
1 |
Single-layer, UCM |
| |
2 |
Multi-layer, BEP scheme (works only with MYJ and BouLac PBL) |
bl_pbl_physics (max_dom) |
|
boundary-layer option |
|
|
0 = no boundary-layer
1 = YSU scheme
2 = Mellor-Yamada-Janjic (Eta) TKE scheme
3 = NCEP GFS scheme (NMM only)
4=
Quasi-Normal Scale Elimination PBL
5=
MYNN 2.5 level TKE scheme, works with
sf_sfclay_physics=1 or 2 as well as 5
6=
MYNN 3rd level TKE scheme, works only
MYNNSFC (sf_sfclay_physics = 5)
7 = ACM2 (Pleim) scheme
8= Bougeault and Lacarrere (BouLac) PBL
99 = MRF scheme |
bldt (max_dom) |
0 |
minutes between boundary-layer physics calls
0 = call every time step |
| grav_settling |
0 |
MYNN PBL only; gravitational settling of fog/cloud droplets (1=yes) |
| nphs (max_dom) |
|
NMM only: number of fundamental timesteps between calls to turbulence and microphysics; the value is set in Registry.NMM but is overridden by namelist value; bldt will be computed from this. |
cu_physics (max_dom) |
|
cumulus option |
|
0 |
no cumulus |
|
1 |
Kain-Fritsch (new Eta) scheme: deep and shallow sub-grid scheme using a mass flux approach with downdrafts and CAPE removal time scale |
|
2 |
Betts-Miller-Janjic scheme: adjustment scheme for deep and shallow convection relaxing towards variable temperature and humidity profiles determined from thermodynamic considerations. |
|
3 |
Grell-Devenyi ensemble scheme: Multi-closure, multi-parameter, ensemble method with typically 144 sub-grid members |
|
4 |
Simplied Arakawa-Schubert (NMM only). Penetrative convection is simulated following Pan and Wu (1995), which is based on Arakawa and Schubert (1974) as simplified by Grell (1993) and with a saturated downdraft. |
|
5 |
Grell 3D ensemble scheme |
|
99 |
previous Kain-Fritsch scheme |
| ishallow |
1 |
Shallow convection used with Grell 3D ensemble scheme (cu_physics = 5) |
cudt |
0 |
minutes between cumulus physics calls. For example, 10.0 minutes. 0 = call every time step |
| cugd_avedx |
1 |
number of grid boxes over which subsidence is spread. Default is 1 |
| |
1 |
default, for large grid distances |
| |
3 |
for small grid distances (DX < 5 km) |
| ncnvc (max_dom) |
|
NMM only: number of fundamental timesteps between
calls to convection; the value is set in Registry.NMM
but is overridden by namelist value; cudt will be
computed from this. |
| tprec (max_dom) |
|
FOR NMM: number of hours in precipitation bucket |
| theat (max_dom) |
|
FOR NMM: number of hours in latent heating bucket |
| tclod (max_dom) |
|
FOR NMM: number of hours in cloud fraction average |
| trdsw (max_dom) |
|
FOR NMM: number of hours in short wave buckets |
| trdlw (max_dom) |
|
FOR NMM: number of hours in long wave buckets |
| tsrfc (max_dom) |
|
FOR NMM: number of hours in surface flux buckets |
| pcpflg |
|
FOR NMM: logical switch for precipitation assimilation |
isfflx |
1 |
heat and moisture fluxes from the surface
1 = with fluxes from the surface
0 = no flux from the surface (not for sf_surface_sfclay = 2).
If diff_opt=2, km_opt=2 or 3 then
0 = constant fluxes defind by tke_drag_coefficient, tke_heat_flux;
1 = use model computed u*, and heat and moisture fluxes;
2 = use model computed u*, and specified heat flux by tke_heat_flux |
ifsnow |
0 |
snow-cover effects (only works for sf_surface_physics = 1)
0 = without snow-cover effect
1 = with snow-cover effect |
icloud |
1 |
cloud effect to the optical depth in radiation (only works for ra_sw_physics = 1 and ra_lw_physics = 1)
0 = without cloud effect
1 = with cloud effect |
swrat_scat |
1. |
Scattering tuning parameter (default 1 is 1.e-5 m2/kg) |
surface_input_source |
1,2 |
where landuse and soil category data come from
1 = WPS/geogrid
2 = GRIB data from another model (only if arrays VEGCAT/SOILCAT exist) |
num_soil_layers |
|
number of soil layers in land surface model (set in real)
2 = Pleim-Xu land-surface model
4 = Noah land-surface model
5 = thermal diffusion scheme for temp only
6 = RUC land-surface model |
| num_land_cat |
24 |
number of land categories in input data |
| num_soil_cat |
16 |
number of soil categories in input data |
| pxlsm_smois_init (max_dom) |
1 |
PXLSM Soil moisture initialization option
0 - From analysis, 1 - From MAVAIL |
maxiens |
1 |
Grell-Devenyi only |
maxens |
3 |
G-D only |
maxens2 |
3 |
G-D only |
maxens3 |
16 |
G-D only |
ensdim |
144 |
G-D only. These are recommended numbers. If you would like to use any other number, consult the code, know what you are doing. |
seaice_threshold |
271. |
tsk < seaice_threshold, if water point and 5-layer slab scheme, set to land point and permanent ice; if water point and Noah scheme, set to land point, permanent ice, set temps from 3 m to surface, and set smois and sh2o |
sst_update |
|
option to use time-varying SST during a model simulation (set in real) |
|
0 |
no SST update |
|
1 |
real.exe will create wrflowinp_d01 file at the same time interval as the available input data. To use it in wrf.exe, add auxinput5_inname = "wrflowinp_d01", auxinput5_interval, and auxinput5_end_h in namelist section &time_control |
| usemonalb |
.true. |
use monthly albedo map instead of table value
; (must be used for NMM and recommended for sst_update=1) |
| rdmaxalb |
.true. |
use snow albedo from geogrid; false means using values from table |
| rdlai2d |
.false. |
use LAI from input; false means using values from table |
| bucket_mm |
-1. |
bucket reset value for water accumulations (value in mm, -1.=inactive) |
| bucket_J |
-1. |
bucket reset value for energy accumulations (value in J, -1.=inactive) |
| tmn_update |
0 |
update deep soil temperature (1, yes; 0, no) |
| lagday |
150 |
days over which tmn is computed using skin temperature |
| sst_skin |
0 |
calculate skin SST |
| slope_rad (max_dom) |
0 |
slope effects for ra_sw_physics=1 (1=on, 0=off) |
| topo_shading (max_dom) |
0 |
neighboring-point shadow effects for ra_sw_physics=1 (1=on, 0=off) |
| shadlen |
25000 |
max shadow length in meters for topo_shading=1 |
| omlcall |
0 |
activate simple ocean mixed layer model (0=no, 1=yes); works with
sf_surface_physics = 1 only |
| oml_hml0 |
50 |
oml model can be initialized with a constant depth everywhere (m) |
| oml_gamma |
0.14 |
oml deep water lapse rate (K m-1) |
| isftcflx |
0 |
alternative Ck, Cd formulation for tropical storm application (0=default, 1=new) |
| fractional_seaice |
0 |
treat sea-ice as fractional field (1) or ice/no-ice flag (0) |
| iz0tlnd |
0 |
thermal roughness length for sfclay and myjsfc (0 - old, 1 - veg dependent Czil) |
| mp_tend_lim |
10 |
limit on temp tendency from mp latent heating from radar data assimilation |
| prec_acc_dt (max_dom) |
0 |
number of minutes in precipitation bucket (ARW only) - will add three
new 2d output fields: prec_acc_c, prec_acc_nc and snow_acc_nc |
&fdda (grid nudging) |
|
for grid and obs nudging |
grid_fdda (max_dom) |
1 |
grid-nudging on (=0 off) for each domain |
gfdda_inname |
|
Defined name in real
“wrffdda_d<domain>” |
gfdda_interval_m (max_dom) |
360 |
Time interval (min) between analysis times |
gfdda_end_h (max_dom) |
6 |
Time (in hours) to stop nudging after start of forecast |
io_form_gfdda |
2 |
Analysis format (2 = netcdf) |
fgdt (max_dom) |
0 |
Calculation frequency (in minutes) for analysis nudging.
0 = every time step, recommended |
if_no_pbl_nudging_uv (max_dom) |
0 |
0 = nudging in the pbl
1 = no nudging of u and v in the pbl |
if_no_pbl_nudging_t (max_dom) |
0 |
1= no nudging of temp in the pbl,
0=nudging in the pbl |
if_no_pbl_nudging_q (max_dom) |
0 |
1= no nudging of qvapor in the pbl,
0=nudging in the pbl |
if_zfac_uv (max_dom) |
0 |
0 = nudge u and v all layers
1 = limit nudging to levels above k_zfac_uv |
k_zfac_uv |
10 |
10 = model level below which nudging is switched off for u and v |
if_zfac_t (max_dom) |
0 |
|
k_zfac_t |
10 |
10 = model level below which nudging is switched off for temp |
if_zfac_q (max_dom) |
0 |
|
k_zfac_q |
10 |
10 = model level below which nudging is switched off for water qvapor |
guv (max_dom) |
0.0003 |
nudging coefficient for u and v (sec-1) |
gt (max_dom) |
0.0003 |
nudging coefficient for temp (sec-1) |
gq (max_dom) |
0.0003 |
nudging coefficient for qvapor (sec-1) |
if_ramping |
0 |
0= nudging ends as a step function, 1= ramping nudging down at end of period |
dtramp_min |
60. |
time (min) for ramping function, 60.0=ramping starts at last analysis time,
-60.0=ramping ends at last analysis time |
| grid_sfdda (max_dom) |
0 |
surface fdda switch (1, on; 0, off) |
| sgfdda_inname |
|
"wrfsfdda_d<domain>" ; defined name for sfc nudgingi in input file (from program obsgrid) |
| sgfdda_end_h (max_dom) |
6 |
time (in hours) to stop sfc nudging after start of forecast |
| sgfdda_interval_m (max_dom) |
180 |
time interval (in min) between sfc analysis times (must use minutes) |
| io_form_sgfdda |
2 |
sfc analysis data io format (2 = netCDF) |
| guv_sfc (max_dom) |
0.0003 |
nudging coefficient for sfc u and v (sec-1) |
| gt_sfc (max_dom) |
0.0003 |
nudging coefficient for sfc temp (sec-1) |
| gq_sfc (max_dom) |
0.0003 |
nudging coefficient for sfc qvapor (sec-1) |
| rinblw |
250.0 |
radius of influence used to determine the confidence (or weights) for
the analysis, which is based on the distance between the grid point to the nearest
obs. The analysis without nearby observation is used at a reduced weight. |
(for spectral nudging) |
|
|
| fgdtzero (max_dom) |
0 |
nudging tendencies are set to zero in between fdda calls |
| if_no_pbl_nudging_ph |
0 |
1= no nudging of ph in the pbl, 0= nuding in the pbl |
| if_zfac_ph (max_dom) |
0 |
0= nudge ph in all layers, 1= limit nudging to levels above k_zfac_ph |
| k_zfac_ph (max_dom) |
10 |
10= model level below which nudging is switched off for ph |
| dk_zfac_uv (max_dom) |
1 |
depth in k between k_zfac_X to dk_zfac_X where nudging increases
linearly to full strength |
| dk_zfac_t (max_dom) |
1 |
|
| dk_zfac_ph (max_dom) |
1 |
|
| gph (max_dom) |
0.0003 |
|
| xwavenum (max_dom) |
3 |
top wave number to nudge in x direction |
| ywavenum (max_dom) |
3 |
top wave number to nudge in y direction |
(for obs nudging) |
|
Observation nudging |
obs_nudge_opt (max_dom) |
1 |
0 = obs-nudging fdda off
1 = obs-nudging fdda on
for each domain: also need to set auxinput11_interval and auxinput11_end_h in time_control namelist |
max_obs |
150000 |
max number of observations used on a domain during any given time window |
fdda_start |
0. |
obs nudging start time in minutes |
fdda_end |
180. |
obs nudging end time in minutes |
obs_nudge_wind (max_dom) |
1 |
whether to nudge wind: (=0 off) |
obs_coef_wind (max_dom) |
6.e-4 |
nudging coefficient for wind, unit: s-1 |
obs_nudge_temp (max_dom) |
1 |
whether to nudge temperature: (=0 off) |
obs_coef_temp (max_dom) |
6.e-4 |
nudging coefficient for temp, unit: s-1 |
obs_nudge_mois (max_dom) |
1 |
whether to nudge water vapor mixing ratio: (=0 off) |
obs_coef_mois (max_dom) |
6.e-4 |
nudging coefficient for water vapor mixing ratio, unit: s-1 |
obs_nudge_pstr (max_dom) |
0 |
whether to nudge surface pressure (not used) |
obs_coef_pstr (max_dom) |
0. |
nudging coefficient for surface pressure, unit: s-1 (not used) |
obs_rinxy |
200. |
horizontal radius of influence in km |
obs_rinsig |
0.1 |
vertical radius of influence in eta |
obs_twindo |
0.6667 |
half-period time window over which an observation will be used for nudging; the unit is in hours |
obs_npfi |
10 |
freq in coarse grid timesteps for diag prints |
obs_ionf |
2 |
freq in coarse grid timesteps for obs input and err calc |
obs_idynin |
0 |
for dynamic initialization using a ramp-down function to gradually turn off the FDDA before the pure forecast (=1 on) |
obs_dtramp |
40. |
time period in minutes over which the nudging is ramped down from one to zero. |
| obs_nobs_prt (max_dom) |
10 |
Number of current obs to print grid coord. info. |
obs_ipf_in4dob |
.true. |
print obs input diagnostics (=.false. off) |
obs_ipf_errob |
.true. |
.false. = don't print obs error diagnostics
.true. = print obs error diagnostics |
obs_ipf_nudob |
.true. |
.false. = don't print obs nudge diagnostics
.true. = print obs nudge diagnostics |
| obs_ipf_init |
.true. |
Enable obs init warning messages |
| obs_no_pbl_nudge_uv (max_dom) |
0 |
1=no wind-nudging within pbl |
| obs_no_pbl_nudge_t (max_dom) |
0 |
1=no temperature-nudging within pbl |
| obs_no_pbl_nudge_q (max_dom) |
0 |
1=no moisture-nudging within pbl |
| obs_nudgezfullr1_uv |
50 |
Vert infl full weight height for lowest model level (LML) ; obs, regime 1, winds |
| obs_nudgezrampr1_uv |
50 |
Vert infl ramp-to-zero height for LML obs, regime 1, winds |
| obs_nudgezfullr2_uv |
50 |
Vert infl full weight height for LML obs, regime 2, winds |
| obs_nudgezrampr2_uv |
50 |
Vert infl ramp-to-zero height for LML obs, regime 2, winds |
| obs_nudgezfullr4_uv |
-5000 |
Vert infl full weight height for LML obs, regime 4, winds |
| obs_nudgezrampr4_uv |
50 |
Vert infl ramp-to-zero height for LML obs, regime 4, winds |
| obs_nudgezfullr1_t |
50 |
Vert infl full weight height for LML obs, regime 1, temperature |
| obs_nudgezrampr1_t |
50 |
Vert infl ramp-to-zero height for LML obs, regime 1, temperature |
| obs_nudgezfullr2_t |
50 |
Vert infl full weight height for LML obs, regime 2, temperature |
| ]obs_nudgezrampr2_t |
50 |
Vert infl ramp-to-zero height for LML obs, regime 2, temperature |
| obs_nudgezfullr4_t |
-5000 |
Vert infl full weight height for LML obs, regime 4, temperature |
| obs_nudgezrampr4_t |
50 |
Vert infl ramp-to-zero height for LML obs, regime 4, temperature |
| obs_nudgezfullr1_q |
50 |
Vert infl full weight height for LML obs, regime 1, moisture |
| obs_nudgezrampr1_q |
50 |
Vert infl ramp-to-zero height for LML obs, regime 1, moisture |
| obs_nudgezfullr2_q |
50 |
Vert infl full weight height for LML obs, regime 2, moisture |
| obs_nudgezrampr2_q |
50 |
Vert infl ramp-to-zero height for LML obs, regime 2, moisture |
| obs_nudgezfullr4_q |
-5000 |
Vert infl full weight height for LML obs, regime 4, moisture |
| obs_nudgezrampr4_q |
50 |
Vert infl ramp-to-zero height for LML obs, regime 4, moisture |
| obs_nudgezfullmin |
50 |
Min depth through which vertical infl fcn remains 1.0 |
| obs_nudgezrampmin |
50 |
Min depth (m) through which vert infl fcn decreases from 1 to 0 |
| obs_nudgezmax |
3000 |
Max depth (m) in which vert infl function is nonzero |
| obs_sfcfact |
1.0 |
Scale factor applied to time window for surface obs |
| obs_sfcfacr |
1.0 |
Scale factor applied to horiz radius of influence for surface obs |
| obs_dpsmx |
7.5 |
Max pressure change (cb) allowed within horiz radius of influence |
&dynamics |
|
Diffusion, damping, advection options |
rk_ord |
3 |
time-integration scheme option:
2 = Runge-Kutta 2nd order
3 = Runge-Kutta 3rd order (recommended) |
diff_opt |
|
turbulence and mixing option: |
|
0 |
No turbulence or explicit spatial numerical filters (km_opt IS IGNORED). |
|
1 |
1 = evaluates 2nd order diffusion term on coordinate surfaces.
uses kvdif for vertical diff unless PBL option is used. may be used with km_opt = 1 and 4. (= 1, recommended for real-data cases) |
|
2 |
evaluates mixing terms in physical space (stress form) (x,y,z). turbulence parameterization is chosen by specifying km_opt. |
km_opt |
|
eddy coefficient option |
|
1 |
Constant: K is specified by namelist values for horizontal and vertical diffusion.(use khdif and kvdif) |
|
2 |
1.5 order TKE closure (3D) |
|
3 |
Smagorinsky first order closure (3D) Note: option 2 and 3 are not recommended for DX > 2 km |
|
4 |
Horizontal Smagorinsky first order closure (recommended for real-data case). K for horizontal diffusion is diagnosed from just horizontal deformation. The vertical diffusion is assumed to be done by the PBL scheme (2D) |
diff_6th_opt (max_dom) |
0 |
6th-order numerical diffusion
0 = no 6th-order diffusion (default)
1 = 6th-order numerical diffusion
2 = 6th-order numerical diffusion but prohibit up-gradient diffusion |
diff_6th_factor (max_dom) |
0.12 |
6th-order numerical diffusion non-dimensional rate (max value 1.0 corresponds to complete removal of 2dx wave in one timestep) |
damp_opt |
|
upper level damping flag |
|
0 |
without damping |
|
1 |
with diffusive damping (dampcoef nondimensional ~ 0.01 - 0.1. May be used for real-data runs) |
|
2 |
with Rayleigh damping (dampcoef inverse time scale [1/s], e.g. 0.003) |
|
3 |
with w-Rayleigh damping (dampcoef inverse time scale [1/s] e.g. 0.2; for real-data cases) |
zdamp (max_dom) |
5000 |
damping depth (m) from model top |
dampcoef (max_dom) |
0. |
damping coefficient (see damp_opt) |
w_damping |
|
vertical velocity damping flag (for operational use) |
|
0 |
without damping |
|
1 |
with damping |
base_pres |
100000. |
Base state surface pressure (Pa), real only. Do not change. |
base_temp |
290. |
Base state sea level temperature (K), real only. |
base_lapse |
50. |
real-data ONLY, lapse rate (K), DO NOT CHANGE. |
| iso_temp |
0 |
real-data, em ONLY, reference temp in stratosphere |
khdif (max_dom) |
0 |
horizontal diffusion constant (m^2/s) |
kvdif (max_dom) |
0 |
vertical diffusion constant (m^2/s) |
smdiv (max_dom) |
0.1 |
divergence damping (0.1 is typical) |
emdiv (max_dom) |
0.01 |
external-mode filter coef for mass coordinate model (0.01 is typical for real-data cases) |
epssm (max_dom) |
.1 |
time off-centering for vertical sound waves |
non_hydrostatic (max_dom) |
.true. |
whether running the model in hydrostatic or non-hydro mode |
pert_coriolis (max_dom) |
.false. |
Coriolis only acts on wind perturbation (idealized) |
| top_lid (max_dom) |
.false. |
Zero vertical motion at top of domain |
mix_full_fields (max_dom) |
.false. |
For diff_opt=2 only, vertical diffusion acts on full fields (not just on perturbation from 1D base_ profile) (idealized) |
| mix_isotropic (max_dom) |
0 |
0=anistropic vertical/horizontal diffusion coeffs, 1=isotropic |
| mix_upper_bound (max_dom) |
0.1 |
non-dimensional upper limit for diffusion coeffs |
h_mom_adv_order (max_dom) |
5 |
horizontal momentum advection order (5=5th, etc.) |
v_mom_adv_order (max_dom) |
3 |
vertical momentum advection order |
h_sca_adv_order (max_dom) |
5 |
horizontal scalar advection order |
v_sca_adv_order (max_dom) |
3 |
vertical scalar advection order |
time_step_sound (max_dom) |
4 |
number of sound steps per time-step (if using a time_step much larger than 6*dx (in km), increase number of sound steps). = 0: the value computed automatically |
| ---advection options for scalar variables: 0=simple, 1=positive definite, 2=monotonic |
moist_adv_opt (max_dom) |
1 |
for moisture |
scalar_adv_opt (max_dom) |
1 |
for scalars |
chem_adv_opt (max_dom) |
1 |
for chem variables |
tracer_adv_opt (max_dom) |
1 |
for tracer variables (WRF-Chem activated) |
| tke_adv_opt (max_dom) |
1 |
for tke |
| time_step_sound (max_dom) |
|
4 divided by number of sound steps per time-step (0=set automatically) (if using a time_step much larger than 6*dx (in km),
proportionally increase number of sound steps - also best to use even numbers) |
| do_avgflx_em (max_dom) |
0 |
whether to output time-averaged mass-coupled advective velocities
0 = no (default) 1 = yes |
| do_avgflx_cugd (max_dom) |
0 |
whether to output time-averaged convective mass-fluxes from Grell-Devenyi ensemble scheme
0 = no (default)
1 = yes (only takes effect if do_avgflx_em=1 and cu_physics= 3 |
| do_coriolis (max_dom) |
.true. |
whether to do Coriolis calculations (idealized) (inactive) |
| do_curvature (max_dom) |
.true. |
whether to do curvature calculations (idealized) (inactive) |
| do_gradp (max_dom) |
.true. |
whether to do horizontal pressure gradient calculations (idealized) (inactive) |
| fft_filter_lat |
45 |
the latitude above which the polar filter is turned on |
| gwd_opt |
0 |
for running without gravity wave drag |
| |
1 |
for running the WRF-ARW with its gravity wave drag |
| |
2 |
for running the WRF-NMM with its gravity wave drag |
| sfs_opt (max_dom) |
0 |
nonlinear backscatter and anisotropy (NBA) off |
| |
1 |
NBA1 using diagnostic stress terms (km_opt=2,3 for scalars) |
| |
2 |
NBA2 using tke-based stress terms (km_opt=2 needed) |
| m_opt (max_dom) |
0 |
no added output |
| |
1 |
adds output of Mij stress terms when NBA is not used |
| tracer_opt (max_dom) |
0 |
|