Processing math: 100%
PISM, A Parallel Ice Sheet Model 2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages

◆ 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.