Idealized Case Initialization


The WRF model provides two classes of simulations: real-data and idealized-data. This chapter focuses on idealized cases.


WRF Idealized Simulation

A WRF model simulation of an “idealized,” simplified, and controlled environment.


Idealized (or ideal) simulations are initiated from an an existing sounding (included with the code), and assume a simplified orography. Below are some ways in which ideal test cases can be used:

  • Since no external data is required, they are a simple method to ensure the model works correctly on a particular architecture and compiler.

  • They are useful for dynamical studies, reproducing converged or otherwise known solutions for a broad range of space and time scales.

  • Idealized cloud modeling

  • Reproducing known solutions

  • A starting point/template for other idealized experiments

  • Testing physics development



1-D, 2-D and 3-D ideal cases are available and provide default examples, with and without topography, and with and without an initial thermal perturbation. For e.g.,

  • To specify a thermal bubble, use the super cell case.

  • The hill2d case is useful for cases with topography since it accounts for topography in setting up the initial 3-D arrays.

  • Symmetry examples in the squall line cases tests for correct indexing modifications.



Note the following limitations with ideal cases:

  • They can use any boundary condition except specified.

  • By default, they are not generally set up for sophisticated physics.

    • No radiation, surface fluxes, or frictional effects are used (with the exception of the sea breeze, LES, and the global Held-Suarez cases).

    • The tropical cyclone case only lacks radiation schemes.

    • The sea breeze case includes a full complement of parameterization options.






Available Ideal Test Cases


Note

Ideal test cases are available in the WRF/test/em_<case> directory, where <case> represents the specific case directory. See the italicized names beneath each case title below.


2-D Squall Line (x,z)
em_squall2d_x

  • 2D squall line (x,z) using Kessler microphysics and a fixed 300 m2/s viscosity

  • Periodicity condition used in y so that 3D model produces 2D simulation

  • v velocity should be zero and there should be no variation in y in the results


2-D Squall Line (y,z)
em_squall2d_y

  • Same as squall2d_x, except with (x) rotated to (y)

  • u velocity should be zero and there should be no variation in x in the results


2-D Flow over a Hill
em_hill2d_x

  • 2-D flow over a bell-shaped hill (x,z)

  • 10 km half-width, 2 km grid-length, 100 m high hill, 10 m/s flow, N=0.01/s, 30 km high domain, 80 levels, open radiative boundaries, absorbing upper boundary

  • Case is in linear hydrostatic regime, so vertical tilted waves with ~6-km vertical wavelength


2-D Gravity Current
em_grav2d_x

  • Test case is described in Straka et al, INT J NUMER METH FL 17 (1): 1-22 July 15 1993

  • See the README.grav2d_x file in the test directory


2-D Sea Breeze
em_seabreeze_x

  • 2-km grid size, 20-km top, land/water

  • Can be run with full physics, radiation, surface, boundary layer, and land options


3-D Quarter-circle Shear Supercell
em_quarter_ss

  • Left and right moving supercells are produced

  • See README.quarter_ss in the test directory for more information


3-D Baroclinic Waves
em_b_wave

  • Baroclinically unstable jet u(y,z) on an f-plane

  • Symmetric north and south, periodic east and west boundaries

  • 100-km grid size, 16-km top, with 4-km damping layer

  • 41x81 points in (x,y), 64 layers


3-D Large Eddy
em_les

  • 100-m grid size, 2-km top

  • Surface layer physics with fluxes

  • Doubly periodic


3-D Held-Suarez
em_heldsuarez

  • Global domain, 625 km in x-direction, 556 km in y-direction, 120-km top

  • Radiation, polar filter above 45 degrees

  • Period in x-direction, polar boundary conditions in y-direction


3-D Surface Fire
em_fire


3-D Tropical Cyclone
em_tropical_cyclone

  • Test case described in Jordan, J METEOR 15, 91-97, 1958.

  • 15-km, 25-km top

  • f-plane (f=0.5e-5, about 20 N), SST=28 C

  • Full physics with a simple radiative cooling, no cumulus

  • Doubly periodic


3-D Convective-radiative Equilibrium
em_convrad

  • 1 km grid size, 30 km model top

  • Tropical condition, small f, weak wind, constant SST

  • Full physics

  • Doubly periodic


1-D Single Column Model
em_scm_xy

  • 4-km grid size, 12-km top

  • Full physics

  • Doubly periodic





Ideal Case Initialization

Ideal cases are typically initialized from an existing sounding (provided with the code), and assume a simplified analytic orography.

Ideal case initialization programs perform the following processes:

  • Compute a base state/reference profile for geopotential and column pressure

  • Compute perturbations from the base state for geopotential and column pressure

  • Initialize meteorological variables u, v, potential temperature, and vapor mixing ratio

  • Define a vertical coordinate

  • Interpolate data to the model’s vertical coordinate

  • Initialize static fields for the map projection and the physical surface; for many of the ideal cases, these are simplified initializations (such as map factors set to 1, and topography elevation set to zero)

  • Compute moist potential temperature if requested that the thermal field use it

  • Read namelist settings

  • Allocate space for the requested domain, with model variables specified at run-time

  • Generate the initial condition file to be used to run wrf.exe


The initialization program (ideal.exe) is compiled with the WRF code. Each ideal case uses its own initialization target module to build a unique ideal.exe, therefore they are not interchangeable. The cases and their corresponding target modules, found in /WRF/dyn_em/module_initialize_*.F files, are listed below:


Case

Target Module File

em_b_wave

module_initialize_ideal.F

em_convrad

module_initialize_ideal.F

em_fire

module_initialize_fire.F

em_heldsuarez

module_initialize_heldsuarez.F

em_les

module_initialize_ideal.F

em_quarter_ss

module_initialize_ideal.F

em_tropical_cyclone

module_initialize_tropical_cyclone.F

em_grav2d_x

module_initialize_ideal.F

em_hill2d_x

module_initialize_ideal.F

em_seabreeze2d_x

module_initialize_ideal.F

em_squall2d_x

module_initialize_ideal.F

em_squall2d_y

module_initialize_ideal.F

em_scm_xy

module_initialize_scm_xy.F




Initialization Input

Typically the only required input to initialize an ideal case are the namelist.input and input_sounding files (provided with the code).



input_sounding

input_sounding files can be any set of reasonable levels that goes up to at least the model top height (ztop in the namelist), formatted as follows:

  • The first line includes surface pressure (hPa), potential temperature (K), and moisture mixing ratio (g/kg).

  • Each subsequent line includes five input values: height (meters above sea-level), dry potential temperature (K), vapor mixing ratio (g/kg), x-direction wind component (m/s), and y-direction wind component (m/s).


ideal.exe interpolates data from the input_sounding and extrapolates if enough data is not provided. The base state sounding for ideal cases is the initial sounding, minus moisture, and therefore does not need to be defined separately.

Note

The baroclinic wave case does not use a 1-D input sounding because initial 3-D arrays are read-in from the input_jet file. This means namelist.input cannot be used to change the horizontal or vertical dimensions since they are specified in input_jet.



namelist.input

The namelist.input controls the size of the domain, number of vertical levels, model top height, grid size, time step, diffusion and damping properties, boundary conditions, and physics options. A large number of settings already exist in the default namelists found in each case directory.





Compiling Ideal Cases

See the Compiling chapter for detailed information on building both the ideal case initialization programs and WRF.





Running Ideal Simulations

See Running Idealized Cases for instructions on running an ideal case.





Modifying Ideal Cases

Ideal cases are adventageous for their ability to take a basic, controlled test, and modify it according to research interest - for e.g., changing the topography, distribution of vertical levels, properties of an initialization thermal bubble, or preparing a case to use additional physics options (e.g., a land-surface model). Apart from namelist-controlled options or soundings, modifications must be done by editing the model code.

  • Make modifications in /WRF/dyn_em/module_initialize_<case>.F, where <case> is either the case name, or simply ideal. See Ideal Case Initialization for details.

  • Within the file, modify the subroutine init_domain_rk.

  • If changing the vertical levels, the 1-D array znw must be defined, containing the full levels, starting from 1 at k=1, and ending with 0 at k=kde.

  • To change the topography, the 2-D array ht must be defined and should be periodic if those boundary conditions are used.

  • To change the thermal perturbation bubble, search for the string “bubble” to locate the code to modify.






See also

See Running WRF for additional run-time options.