![]() |
OpenSWMM Engine
6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
|
Two-zone groundwater model — batch-oriented ODE integration. More...
#include <vector>Go to the source code of this file.
Classes | |
| struct | openswmm::groundwater::GWSoA |
| class | openswmm::groundwater::GWSolver |
Namespaces | |
| namespace | openswmm |
| namespace | openswmm::groundwater |
Macros | |
| #define | OPENSWMM_RESTRICT __restrict__ |
Two-zone groundwater model — batch-oriented ODE integration.
Each subcatchment has an independent aquifer with upper (unsaturated) and lower (saturated) zones. The ODE system is:
dθ/dt = (Infil - UpperEvap - UpperPerc) / upperDepth dH/dt = (UpperPerc - DeepPerc - LowerEvap - GWFlow) / (φ - θ)
Since each subcatchment is independent, the ODE integration is embarrassingly parallel — vectorise over subcatchments.
The lateral GW flow formula: Q = a1*(H-H*)^b1 - a2*(Hsw-H*)^b2 + a3*H*Hsw is arithmetic-only and vectorisable when b1/b2 are uniform.
| #define OPENSWMM_RESTRICT __restrict__ |