Time stepping
Time stepper refers to the means by which a simulation is advanced in time.
The configuration of a simulation is set by the TimeIntegration section
of the Omega configuration file:
TimeIntegration:
CalendarType: No Leap
TimeStepper: Forward-Backward
TimeStep: 0000_00:10:00
StartType: StartUp
StartTime: 0001-01-01_00:00:00
StopType: AtTime
StopCriterion: 0001-01-01_02:00:00
ModeSplitShare:
BtrTimeStepper: Predictor-Corrector
BtrTimeStep: 0000_00:00:20
NTimeStepIteration: 2
NBclCoriolisIteration: 2
ReinitSplitVelocity: false
This configuration refers to the default time stepping used for the model dynamics (momentum and continuity equations). Additional time steppers can be used for other portions of the model (eg the barotropic mode or tracer transport) that may have different time steps and use different algorithms.
The CalendarType choice is described in the
Time Management section.
The TimeStepper option refers to the numerical scheme used to advance the
model in time. Omega implements a number of time-stepping schemes. The user
can select the scheme they want in the configuration file.
The following time steppers are currently available:
Config option name |
Scheme |
|---|---|
Forward-Backward |
forward-backward |
RungeKutta2 |
second-order two-stage midpoint Runge Kutta method |
RungeKutta4 |
classic fourth-order four-stage Runge Kutta method |
SplitExplicitRK2 |
mode-split RK2 with a subcycled barotropic mode |
UnsplitRK2 |
the same RK2 scheme with mode splitting disabled |
SplitExplicitRK2 and UnsplitRK2 use the ModeSplitShare configuration
subgroup shown above. See Split time stepping
for descriptions of these schemes and their configuration options.
The TimeStep refers to the main model time step used to advance the solution
forward. The time step is specified as a formatted string and can be provided
in any of the following forms:
DDDD_HH:MM:SS(.sss...)HH:MM:SS(.sss...)MM:SS(.sss...)SS(.sss...)
Days, hours and minutes are optional but must be in order if included. Fractional seconds are optional.
The StartOption can be one of five choices. The StartUp option is for
starting a solution from scratch from an initial state file. The Continue
option is for continuing a simulation from a restart file. The Branch
option will branch from an existing simulation by reading from the restart
file and is identical to Continue except that some other simulation
metadata (eg case name or simulation name) can be changed. The Hybrid
option will continue a branch from a restart file but will reset the start
time and should only be used for the first step of a hybrid run, similar to the
StartUp option. It is equivalent to using the StartUp option and
specifying the restart file as an init file. It is only provided in the event
a future mult-level time stepping scheme is used in which starting from a
restart with multiple time levels is an advantage over a fresh start. Finally,
a Coupled option specifies that the StartType is provided by the
coupler in a coupled configuration. The actual StartType used internally
is created by the E3SM CIME tools from a combination of the RUN_TYPE and
CONTINUE options.
The StartTime refers to the starting time for the full simulation (not the
current leg of an ongoing simulation). It is in the
format yyyy-mm-day_hh:mm:ss for year, month, day, hour, minute, second.
If this is a continuation of an existing simulation, the current time for this
leg of the full simulation will be set by the restart file.
A StopType determines (with the StopCriterion below) how the simulation
will be stopped. There are three options. The AtTime option will stop the
simulation at a specific time and the StopCriterion holds that specific time
as described below. The AfterDuration option runs the simulation for a fixed
time interval and the StopCriterion is used to define that interval. A final
option called Coupled is primarily for coupled simulations where the
simulation will stop after receiving a signal from the coupler.
For the AtTime stop type, the StopCriterion must be a time instant in
the format yyyy-mm-dd_hh:mm:ss. If the StopType is AfterDuration,
the StopCriterion is a time interval in the format described above for the
time step (but typically dddd_hh:mm:ss). For the Coupled option the
StopCriterion is ignored.