PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800

◆ update_impl()

void pism::hydrology::SteadyState::update_impl ( double  t,
double  dt,
const Inputs inputs 
)
protectedvirtual

Solves an implicit step of a highly-simplified ODE.

Update the till water thickness by simply integrating the melt input.

Does a step of the trivial integration

\[ \frac{\partial W_{till}}{\partial t} = \frac{m}{\rho_w} - C\]

where \(C=\)hydrology_tillwat_decay_rate. Enforces bounds \(0 \le W_{till} \le W_{till}^{max}\) where the upper bound is hydrology_tillwat_max. Here \(m/\rho_w\) is total_input.

Uses the current mass-continuity timestep dt. (Compare hydrology::Routing::update_Wtill() which will generally be taking time steps determined by the evolving transportable water layer in that model.)

There is no attempt to report on conservation errors because this hydrology::NullTransport model does not conserve water.

There is no tranportable water thickness variable and no interaction with it.

Reimplemented from pism::hydrology::NullTransport.

Definition at line 80 of file SteadyState.cc.

References pism::Profiling::begin(), pism::array::Array2D< T >::copy_from(), pism::Profiling::end(), pism::hydrology::Inputs::geometry, m_bootstrap, m_emptying_problem, pism::Component::m_log, pism::hydrology::Hydrology::m_Q, pism::hydrology::Hydrology::m_surface_input_rate, m_t_eps, m_t_last, pism::Component::max_timestep(), pism::hydrology::Inputs::no_model_mask, pism::Component::profiling(), pism::hydrology::NullTransport::update_impl(), and pism::MaxTimestep::value().