![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
Infiltration models — numerically identical to legacy infil.c. More...
#include "Infiltration.hpp"#include "../core/UnitConversion.hpp"#include "../core/SimulationOptions.hpp"#include <cmath>#include <algorithm>Namespaces | |
| namespace | openswmm |
| namespace | openswmm::infil |
| Native infiltration kernels with caller-managed accepted-step state. These methods mutate the supplied state immediately and provide no rollback, finite-input validation or failure status. Call once per accepted source step, or evaluate a private state copy for a trial. Internal rates/depths are ft/s/ft; initialization alone accepts project input units. Serialize shared state use. | |
Functions | |
| void | openswmm::infil::horton_init (HortonState &state, double f0, double fmin, double decay, double regen, double Fmax, const SimulationOptions &opts) |
| Convert authored Horton parameters and reset ordinary Horton history. | |
| double | openswmm::infil::horton_getInfil (HortonState &state, double precip, double depth, double dt) |
| Integrate exponential Horton capacity over one step with dry recovery. | |
| double | openswmm::infil::modHorton_getInfil (HortonState &state, double precip, double depth, double dt) |
| Advance the linear excess-infiltration Modified Horton model. | |
| void | openswmm::infil::grnampt_init (GreenAmptState &state, double S, double Ks, double IMD, const SimulationOptions &opts) |
| Convert authored Green-Ampt parameters and initialize the upper zone. | |
| double | openswmm::infil::grnampt_getInfil (GreenAmptState &state, double precip, double depth, double dt, InfilModel model_type=InfilModel::GREEN_AMPT, double infil_factor=1.0, double recovery_factor=1.0) |
| Advance saturated/unsaturated Green-Ampt history and compute actual infiltration. | |
| void | openswmm::infil::curvenum_init (CurveNumState &state, double CN, double regen) |
| Initialize Curve Number retention and all event-history fields. | |
| double | openswmm::infil::curvenum_getInfil (CurveNumState &state, double precip, double depth, double dt, double recovery_factor=1.0) |
| Advance SCS Curve Number event retention with ponded-water continuation. | |
| double | openswmm::infil::constant_getInfil (double rate_ftsec, double precip, double depth, double dt) |
| Return a stateless capacity bounded by available water. | |
Infiltration models — numerically identical to legacy infil.c.