9-variable
Overview
The 9-variable model is described in Lorenz (1980). [1] Lorenz developed this primitive-equation model using shallow-water equations as a starting point and manipulating the divergence equations so that the model exhibits quasi-geostrophic behavior and transient gravity waves that dissipate with time. Gent and McWilliams (1982) [2] explore the behavior of this model extensively. For an introduction to shallow-water equations, we recommend consulting the relevant section of a meteorology textbook such as section 4.5 of Holton and Hakim (2013). [3]
The model’s three X variables are at 0, 1/9, and 2/9, three Y variables are at 3/9, 4/9 and 5/9, and three Z variables are at 6/9, 7/9, and 8/9 on a cyclic [0, 1] domain.
In the 9-variable model, DART advances the model, gets the model state and
metadata describing this state. The model can be configured by altering the
&model_nml
namelist in the input.nml
file. The details of the
&model_nml
namelist are always model-specific (there are no generic
namelist values). The model time step defaults to 1 hour (3600 seconds) but is
settable by altering the namelist.
The 9-variable model has a work/workshop_setup.csh
script that compiles
and runs an example. This example is referenced in Sections 7 and 10 of the
DART_tutorial
and is intended to provide insight into model/assimilation behavior.
The example may or may not result in good (or even decent!) results!
Namelist
The &model_nml
namelist is read from the input.nml
file. Namelists
start with an ampersand &
and terminate with a slash /
. Character
strings that contain a /
must be enclosed in quotes to prevent them from
prematurely terminating the namelist.
&model_nml
g = 8.0,
deltat = 0.0833333333333333,
time_step_days = 0,
time_step_seconds = 3600
/
Description of each namelist entry
Item |
Type |
Description |
---|---|---|
g |
real(r8) |
Model parameter, see comp_dt in code for equations. |
delta_t |
real(r8) |
Non-dimensional timestep. This is mapped to the dimensional timestep specified by time_step_days and time_step_seconds. |
time_step_days |
real(r8) |
Number of days for dimensional timestep, mapped to delta_t. |
time_step_seconds |
real(r8) |
Number of seconds for dimensional timestep, mapped to delta_t. |