Timestepping#
GungHo’s dynamical core can be advanced in time using one of several timestepping schemes (see the User Guide for how these are configured). This section describes the numerical formulation of each scheme:
Attention
The formulations below use the notation of a state vector \(\boldsymbol{X}\), an operator \(\mathcal{F}\) representing the evaluation of forces (such as the pressure gradient, Coriolis and gravitational forces), and a transport operator \(\mathcal{T}^{\Delta t}_{\boldsymbol{u}}\), relating to a velocity \(\boldsymbol{u}\), over a time step \(\Delta t\). The transport operator returns a transported field (rather than a transport increment). Increments from physics parametrisation schemes are represented by \(\mathcal{P}\).
Available Schemes#
- Semi-Implicit
GungHo’s default timestepping scheme. The Semi-Implicit Quasi-Newton (SIQN) scheme is a Semi-Implicit Semi-Lagrangian (SISL) method, combining a Crank-Nicolson-like treatment of forcing terms with a mass-conserving transport scheme, solved through an outer/inner Quasi-Newton iteration.
- Runge-Kutta
An explicit, multi-stage scheme, used either to timestep the whole dynamical core or in combination with the Method-of-Lines transport scheme. Strong Stability Preserving (SSP) variants and a simple forward Euler option are available.
- TR-BDF2
A two-stage semi-implicit method, combining a Trapezoidal (TR) stage and a Backwards-Difference-2 (BDF2) stage, each solved using the same Quasi-Newton structure as the SIQN scheme. Unlike SIQN, it has no off-centering parameter, and is inherently damping of high-frequency waves while maintaining second-order accuracy in time.