Initial Conditions#
When starting up an ocean model, the model needs to know where to start from. The initial conditions typically include the following fields:
Temperature
Salinity
Zonal and Meridional Velocity
Sea Surface Height
Additionally, the model will also need information about other additional fields implemented in the model configuration, such as sea ice, passive tracers, or other fields for the model run.
Prescribing Initial Conditions#
There are three main ways to prescribe initial conditions in MITgcm:
Reference Conditions
Hydrography Conditions
Pickup Files
The first two options are used when the model is initialized at nIter=0
; otherwise, the third option must be used.
Option 1: Reference Condition#
When nIter=0
and no conditions are provided, the model will be initialized with the conditions specified as tRef
and sRef
provided in the &PARM01
namelist of the data
file. tRef
and sRef
are a list of temperatures and salinities with length Nr
, the number of the depth levels in the model. In this case, the model will initialize the velocity as zero and the sea surface height as 0.
Option 2: Hydrography Conditions#
To specify initial conditions when nIter=0
, the user can generate 3D fields and provide the file names in the &PARM05
namelist of the data file. Specifically, the following variable names can be specified:
Variable |
File Name |
---|---|
Temperature (THETA) |
|
Salinity (SALT) |
|
Zonal Velocity (UVEL) |
|
Meridional Velocity (VVEL) |
|
Sea Surface Height (ETAN) |
|
If any of the above files are not specified, the model will default to option 1.
Each file should store a single binary grid of size (Nr, Ny, Nx), here written in Pythonic ordering (i.e. if the grid were a numpy array, then np.shape would return (Nr, Ny, Nx)). The only exception is the sea surface height field, which has a shape of (1, Ny, Nx).
Option 3: Pickup Files#
When nIter1
is not 0, then the model is interpreted as coming into the simulation in the middle of a run and will look for a pickup file. A pickup file has the 5 standard fields mentioned above plus 5 more for tendencies. In commonly-used configurations, the pickup fields are stacked in the following order: UVEL, VVEL, THETA, SALT, GUM1, GVM1, GUM2, GVM2, ETAH, DETAHDT, ETAN. Here, G represents the tendencies of U and V at the previous 2 timesteps before the pickup iteration (M1 and M2). If you would like to start a model at a different iteration than 0 (possibly to initialize the model at a given date when working with the cal package), then these fields can be constructed and stacked into a pickup file. The grids are stacked along the depth dimension so that the total grid has a size (8*Nr+3, Ny, Nx).