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.
Implements pism::hydrology::Hydrology.
Reimplemented in pism::icebin::NullTransportHydrology, and pism::hydrology::SteadyState.
Definition at line 99 of file NullTransport.cc.
References pism::array::Array2D< T >::add(), pism::Geometry::cell_type, diffuse_till_water(), pism::hydrology::Hydrology::enforce_bounds(), pism::RuntimeError::formatted(), pism::hydrology::Inputs::geometry, pism::hydrology::Hydrology::m_basal_melt_rate, pism::Component::m_config, pism::hydrology::Hydrology::m_conservation_error_change, m_diffuse_tillwat, pism::Component::m_grid, pism::hydrology::Hydrology::m_grounded_margin_change, pism::hydrology::Hydrology::m_grounding_line_change, pism::hydrology::Hydrology::m_input_change, pism::hydrology::Hydrology::m_no_model_mask_change, pism::hydrology::Hydrology::m_surface_input_rate, m_tillwat_decay_rate, m_tillwat_max, pism::hydrology::Hydrology::m_W, pism::hydrology::Hydrology::m_Wtill, pism::hydrology::Inputs::no_model_mask, PISM_ERROR_LOCATION, and pism::array::Array::set().
Referenced by pism::hydrology::SteadyState::update_impl().