hydromodpy.solver.boussinesq.runtimes.dry_equilibrium#

Dry-equilibrium probes for Boussinesq obstacle solves.

The helpers in this module are deliberately small and PETSc-free. They are used to distinguish a physically dry lower-obstacle equilibrium from a failed Newton iterate that merely collapsed near the bottom bound.

Functions

assemble_effective_steady_balance(mesh, ...)

Assemble a steady balance using physical or effective transmissivity.

detect_dry_equilibrium(mesh, *[, ...])

Return whether h = z_bottom is a safe lower-obstacle VI solution.

effective_saturated_thickness(mesh, head_m, *)

Return the thickness used by a numerical transmissivity regularization.

physical_saturated_thickness(mesh, head_m)

Return the hydrologic saturated thickness, without numerical floor.

saturated_thickness_diagnostics(mesh, head_m, *)

Return physical/effective thickness statistics for diagnostics.

Classes

DryEquilibriumResult(*, candidate_checked, ...)

Result of a dry lower-obstacle equilibrium check.

EffectiveSteadyBalance(*, head_m, ...)

Steady balance evaluated with an optional effective-thickness floor.