![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
Infiltration models — Horton, Green-Ampt, SCS Curve Number. More...
Go to the source code of this file.
Classes | |
| struct | openswmm::HortonState |
| struct | openswmm::GreenAmptState |
| struct | openswmm::CurveNumState |
| struct | openswmm::infil::HortonState |
| struct | openswmm::infil::GreenAmptState |
| struct | openswmm::infil::CurveNumState |
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. | |
Enumerations | |
| enum class | openswmm::InfilModel : int { openswmm::HORTON = 0 , openswmm::MOD_HORTON = 1 , openswmm::GREEN_AMPT = 2 , openswmm::MOD_GREEN_AMPT = 3 , openswmm::CURVE_NUM = 4 , openswmm::CONSTANT = 5 } |
Functions | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| void | openswmm::infil::curvenum_init (CurveNumState &state, double CN, double regen) |
| Initialize Curve Number retention and all event-history fields. | |
Infiltration models — Horton, Green-Ampt, SCS Curve Number.
All three models are implemented with exact numerical parity to legacy infil.c. Each model maintains per-subcatchment state and computes infiltration rate given current precipitation, ponded depth, and timestep.