Best Practices for namelist.input Settings¶
See below the default namelist.input file used for running the WRF model (which includes real.exe, wrf.exe, tc.exe, and ndown.exe). Further below are namelist parameter descriptions and suggested practices, along with some additional options that could be useful.
In the below file, some parameters are domain-dependent and therefore expect a setting for each domain, and others only expect a single entry. The number of domains used is determined by max_dom, whose settings tells WRF how many domains to process. It will only read the entries for the number of columns that match max_dom.
Important
Do not remove information in additional columns and Do not add multiple settings for single setting parameters. Doing so will create a running error.
&time_control
run_days = 0,
run_hours = 36,
run_minutes = 0,
run_seconds = 0,
start_year = 2019, 2019,
start_month = 09, 09,
start_day = 04, 04,
start_hour = 12, 12,
end_year = 2019, 2019,
end_month = 09, 09,
end_day = 06, 06,
end_hour = 00, 00,
interval_seconds = 10800
input_from_file = .true.,.true.,
history_interval = 60, 60,
frames_per_outfile = 1, 1,
restart = .false.,
restart_interval = 7200,
io_form_history = 2
io_form_restart = 2
io_form_input = 2
io_form_boundary = 2
/
&domains
time_step = 90,
time_step_fract_num = 0,
time_step_fract_den = 1,
max_dom = 2,
e_we = 150, 220,
e_sn = 130, 214,
e_vert = 45, 45,
dzstretch_s = 1.1
p_top_requested = 5000,
num_metgrid_levels = 34,
num_metgrid_soil_levels = 4,
dx = 15000,
dy = 15000,
grid_id = 1, 2,
parent_id = 0, 1,
i_parent_start = 1, 53,
j_parent_start = 1, 25,
parent_grid_ratio = 1, 3,
parent_time_step_ratio = 1, 3,
feedback = 1,
smooth_option = 0
/
&physics
physics_suite = 'CONUS'
mp_physics = -1, -1,
cu_physics = -1, -1,
ra_lw_physics = -1, -1,
ra_sw_physics = -1, -1,
bl_pbl_physics = -1, -1,
sf_sfclay_physics = -1, -1,
sf_surface_physics = -1, -1,
radt = 15, 15,
bldt = 0, 0,
cudt = 0, 0,
icloud = 1,
num_land_cat = 21,
sf_urban_physics = 0, 0,
fractional_seaice = 1,
/
&fdda
/
&dynamics
hybrid_opt = 2,
w_damping = 0,
diff_opt = 2, 2,
km_opt = 4, 4,
diff_6th_opt = 0, 0,
diff_6th_factor = 0.12, 0.12,
base_temp = 290.
damp_opt = 3,
zdamp = 5000., 5000.,
dampcoef = 0.2, 0.2,
khdif = 0, 0,
kvdif = 0, 0,
non_hydrostatic = .true., .true.,
moist_adv_opt = 1, 1,
scalar_adv_opt = 1, 1,
gwd_opt = 1, 0,
/
&bdy_control
spec_bdy_width = 5,
specified = .true.
/
&grib2
/
&namelist_quilt
nio_tasks_per_group = 0,
nio_groups = 1,
/
&time_control Namelist Record¶
parameter name |
Description |
Notes & Best Practice(s) |
---|---|---|
run_days |
The duration for which the simulation should run |
These parameters are ignored when running real.exe - only the beginning/ending date/time are used. |
start_year |
The starting date and time for each model domain |
These settings will override the run_ settings during real.exe. |
end_year |
The ending date and time for each model domain |
These settings will override the run_ settings during real.exe. |
interval_seconds |
The periodic frequency of incoming data (from WPS) in seconds |
met_em files must be available for all times being processed |
input_from_files |
A logical that determines whether a nested run will have input files for domains other than d01 |
Setting this to true for nested domains allows real.exe to create wrfinput_d0 files for the nested domains (if this is set to false no wrfinput_d0 files are created for the nested domains |
history_interval |
Frequency at which data is written to the history (wrfout) file |
Default values are in minutes, but an _s or _h can be appended to the end of the variable name (e.g., history_interval_s) to change this to seconds or hours |
frames_per_outfile |
How many history_interval time periods are written to each history file |
Example 1: start time/date: 2024-08-29_00:00:00, run_hours=6, history_interval=180, frames_per_outfile=1000 - only a single output file (wrfout_d01_2024-08-29_00:00:00) is created. The file will contain 3 output times (hour 00, hour 03, and hour 06) |
restart |
A logical that determines whether this is a restart run |
This can only be set to true if restart files (wrfrst_d0) are available from a previous simulation |
restart_interval |
The interval at which restart files (wrfrst_d0) will be written |
Restart files are always a single time per file. |
io_form_history |
The output format for history files (wrfout_d0) |
Available Options: 2 = netCDF (default; recommended); 1 = binary format (no supported post-processing software available); 4 = PHDF5 format (no supported post-processing software available); 5 = GRIB1 format; 10 = GRIB2 format; 11 = parallel netCDF format; 102 = split netCDF (no supported post-processing software available) |
io_form_restart |
The output format for restart files (wrfrst_d0) |
Available Options: 2 = netCDF (default; recommended); 102 = split netCDF |
io_form_input |
The output format of the input files (met_em.d0) |
Available Options: 2 = netCDF (default; recommended); 102 = split netCDF (no supported post-processing software available) |
io_form_boundary |
The output format of the boundary file (wrfbdy_d01) |
Available Options: 2 = netCDF (default; recommended); 4 = PHDF5 format (no supported post-processing software available); 5 = GRIB1 format; 10 = GRIB2 format; 11 = parallel netCDF format |
debug_level |
Increasing this value provides more printed information in the run log files |
Setting this to anything other than 0 rarely provides any useful information for error reasoning, and instead clutters the log file, making it difficult to read, and increasing the size. This parameter is not included in the default namelist file, and it is recommended to not add it, or to set it to 0 if it is already in the namelist. |
&domains Namelist Record¶
parameter name |
Description |
Notes & Best Practice(s) |
---|---|---|
time_step |
Time step (in seconds) for model integration |
It is recommended to keep this value equal to, or less than, 6xDX (in km). |
time_step_fract_num |
Numerator and denominator settings for a fractional time step |
E.g., if desiring a time step of 60.3 seconds, set time_step=60; time_step_fract_num=3; and time_step_fract_den=10 |
max_dom |
The number of domains used in the simulation |
The model will not read any more columns than the number specified here. So, for e.g., of the namelist includes four columns, but max_dom=1, only the information in the first column will be read by the model. |
e_we |
Each domain’s full west-east and south-north dimensions (or grid spaces) |
The values given to these parameters should be the same as those used for these parameters in namelist.wps |
e_vert |
The number of vertical (or Eta) levels onto which real.exe will interpolate the incoming data |
This number must be the same for each domain. |
dzstretch_s |
surface stretch factor when using auto_levels_opt=2 |
See Setting Model Vertical Levels in the WRF Users’ Guide for additional information. |
p_top_requested |
The pressure top (in Pa) to use in the model |
This level must be available in the incoming WPS data. |
num_metgrid_levels |
The number of incoming (from WPS input data) vertical levels. This is determined by the input data used |
If unsure about the number of levels in the data, you can use the following command: |
num_metgrid_soil_levels |
The number of incoming (from WPS input data) vertical soil levels. This is determined by the input data used |
If unsure about the number of levels in the data, you can use the following command: |
dx |
Grid distance (or grid resolution) in the x and y directions |
The values for nested domains are based on the value for d01 and the parent_grid_ratio. For e.g., if max_dom=2; parent_grid_ratio=1, 3; and dx*=*dy*=12000, because this is a 3:1 ratio, the value calculated for d02 will be 4000, but only the value for d01 is required in the namelist. |
grid_id |
The domain number |
The coarsest grid should be set to 1. |
parent_id |
The domain number (ID) of each domain’s parent |
These should be set to the same values as were given in namelist.wps. See Best Practices for namelist.wps for additional information. |
i_parent_start |
The parent domain coordinates at the x and y (or i and j) location that overlaps the starting point for the nest in the i and j directions |
These should be set to the same values as were given in namelist.wps. See Best Practices for namelist.wps for additional information. |
parent_grid_ratio |
The nesting ratio relative to the domain’s parent |
These should be set to the same values as were given in namelist.wps. See Best Practices for namelist.wps for additional information. |
parent_time_step_ratio |
This is how the model defines the time_step for nest domains |
This should be set to 1 for the coarsest domain. |
feedback |
This determines whether feedback (two-way nesting) will be used when using nesting |
When feedback is on (feedback=1), coarse domain field values are overwritten by the child domain field values (average of cell values for mass points, and average of the cell-face values for horizontal momentum points) at coincident points. |
smooth_option |
Determines whether smoothing is used for the parent domain in the area of the nest if feedback is on (feedback=1) |
Three options are available: 0 = no smoothing; 1 = 1-2-1 smoothing; 2 = smoothing-desmoothing |
&physics Namelist Record¶
See also
For all physics options listed below, see the following resources for additional information:
parameter name |
Description |
Notes & Best Practice(s) |
---|---|---|
physics_suite |
A set of physics options that performs well for a given application, and is supported by a sponsoring group |
Options are tropical and CONUS. |
mp_physics |
Microphysics scheme option |
The value should be the same for each domain. If a different option is used for one or more domains, the model chooses the most complex scheme to use for all domains. |
cu_physics |
Cumulus parameterization scheme option |
For a grid size >10 km, a cumulus scheme is necessary. It is not necessary when the grid size is < 4km. In between 4km and 10km is a somewhat gray area - try to avoid this range if possible. If you must use this size, try the GF (cu_physics=3) or MSKF (cu_physics=11) scheme, which are scale-aware. |
ra_sw_physics |
Shortwave radiation scheme option, which determines computation of clear-sky and cloudy solar fluxes |
The same option should be used for each domain. |
bl_pbl_physics |
Planetary boundary layer (PBL) scheme option - used to distribute surface fluxes with boundary layer eddy fluxes and allow for PBL growth by entrainment |
This option should be used for domains of grid size > 500 meters |
sf_sfclay_physics |
Surface layer physics scheme option |
Some options only work with specific bl_pbl_physics and/or sf_surface_physics options. See the Physics chapter in the WRF Users’ Guide for details. |
sf_surface_physics |
Land surface model (LSM) scheme option |
num_soil_layers must match this option. |
radt |
Minutes between radiation physics calls during model integration |
It is recommended to use 1 minute per km of dx (e.g., set to 10 for 10 km parent domain). |
bldt |
Minutes between boundary layer physics calls during model integration |
The same option should be used for each domain. |
cudt |
Minutes between cumulus physics calls during model integration |
The same option should be used for each domain. |
icloud |
Option to compute cloud fraction for radiation |
|
num_land_cat |
The number of land categories in the input static geogrid data |
This value must match the value produced during WPS/geogrid. |
sf_urban_physics |
Option that determines which (if any) urban scheme option is used |
The same option should be used for each domain. |
fractional_seaice |
Turning on (=1) tells the model to treat seaice as a fractional field |
This option only works with sf_sfclay_physics=1,2,3,4,5,7,91 |
isfflx |
Determines heat and moisture fluxes from the surface |
Use this option to turn off surface sensible and latent heat fluxes for some of the surface physics options. |
ifsnow |
This option can be turned off to remove snow effects for the simple soil model (sf_surface_physics = 1) |
&dynamics Namelist Record¶
parameter name |
Description |
Notes & Best Practice(s) |
---|---|---|
hybrid_opt |
Dynamical coordinate option |
Options are 0 - uses the original WRF terrain-following coordinate that was default for WRFV3; 1 - uses the Klemp cubic form for etac, which is the default for WRFV4 |
w_damping |
Vertical velocity damping flag |
Options are 1 - with damping; 0 - without damping |
diff_opt |
Turbulence and mixing option |
|
km_opt |
Eddy coefficient option |
|
diff_6th_opt |
6th order numerical diffusion option |
|
diff_6th_factor |
6th order numerical diffusion non-dimensional rate |
The maximum value is 1.0, which corresponds to complete removal of 2dx wave in one timestep. |
base_temp |
Base state sea-level (surface) temperature (in K) |
This option can help to improve simulations when the model top is higher than 20 km (~ 50 mb) |
damp_opt |
Upper-level damping flag |
|
zdamp |
Damping depth (in meters) from the model top |
|
dampcoef |
Damping coefficient (also see damp_opt above) |
|
khdif |
Horizontal diffusion constant (in m 2/s) |
|
kvdif |
Vertical diffusion constant (in m 2/s) |
|
non_hydrostatic |
Whether running the model in hydrostatic or non-hydrotstatic (default) mode |
|
moist_adv_opt |
Positive-definite or monotonic advection to help eliminate over/under prediction of moisture |
Options are: 0 - advection with no bounds or filters in place; 1 - positive-definite advection of moisure (default); 2 - monotonic option |
scalar_adv_opt |
Positive-definite advection of scalars |
Options are: 0 - advection with no bounds or filters in place; 1 - positive-definite advection of moisure (default); 2 - monotonic option |
gwd_opt |
Gravity wave drag option |
Can be used for all grid sizes with appropriate input fields from geogrid |
&bdy_control Namelist Record¶
parameter name |
Description |
Notes & Best Practice(s) |
---|---|---|
spec_bdy_width |
The number of rows for specified boundary value nudging |
This value is the total of spec_zone and relax_zone (see below). |
specified |
Specified boundary conditions |
The first row and column are specified with external model values (spec_zone = 1,which should not be changed). |
spec_zone |
The number of points in the specified zone (specific boundary condition option) |
Leave this set to the default of 1. |
relax_zone |
The number of points in the relaxation zone (specific boundary condition option) |
A wider boundary zone may work better for coarser driving data. |
nested |
Nested boundary conditions |
This must be set to true for nests. |