PISM, A Parallel Ice Sheet Model 2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
Loading...
Searching...
No Matches

◆ max_timestep_impl()

MaxTimestep pism::surface::ForceThickness::max_timestep_impl ( double  my_t) const
protectedvirtual

The timestep restriction is, by direct analogy, the same as for

\[\frac{dy}{dt} = - \alpha y\]

with explicit (forward) Euler. If \(\Delta t\) is the time step then Euler is \(y_{n+1} = (1-\alpha \Delta t) y_n\). We require for stability that \(|y_{n+1}|\le |y_n|\), which is to say \(|1-\alpha \Delta t|\le 1\). Equivalently (since \(\alpha \Delta t>0\)),

\[\alpha \Delta t\le 2\]

Therefore we set here

\[\Delta t = \frac{2}{\alpha}.\]

Reimplemented from pism::surface::SurfaceModel.

Definition at line 292 of file ForceThickness.cc.

References m_alpha, and pism::surface::SurfaceModel::m_input_model.