Models · Components · Tools

An ecosystem with SWMM at the center

The HydroCouple Open-Source SWMM initiative delivers a next-generation SWMM as the flagship, plus a growing set of couplable components around it, so the same standards-based composition can grow from a single sewer model into a representation of the entire water cycle, from watersheds and aquifers to streams, lakes, and estuaries.

Flagship

Open-Source SWMM 6.0 (SWMM2D)

A community-driven continuation of EPA's Storm Water Management Model: the trusted process formulations, rebuilt on a modern architecture and validated against published benchmark suites, preserving the SWMM legacy under rigorous QA/QC while opening it to the future.

Flagship · Available

openswmm.engine

Next-generation computational engine. C++20, reentrant API, data-oriented core, plugin-based I/O, GeoPackage-native storage, Python bindings on PyPI, and coupled 1D/2D hydraulics with portable GPU backends.

Source → · PyPI → · Docs →

Available

openswmm.gui

A modern desktop application for building, running, and interrogating models, bringing the v6 engine to practicing engineers with contemporary UX.

Source →

Available

openswmm.mcp

Model Context Protocol server exposing the engine to AI agents: model building, editing, simulation control, results analysis, calibration, and optimization, with over 500 tools for LLM-driven workflows.

Source →

Available

openswmm.gymnasium

Real-time control environments over the engine for smart stormwater operations, built on standard Gymnasium APIs.

Source →

What's new in the v6 engine

Two-zone groundwater with runtime API access · physics-based RDII recovery · runtime climate forcing and per-subcatchment PET · consistent snow/rain partitioning · Anderson-accelerated dynamic wave convergence.

Engineered for trust

A dedicated benchmarking platform with 1,396 models and exact-solution verification · continuous integration on every platform · CodeQL and OpenSSF Scorecard · legacy EPA solver preserved unmodified for side-by-side comparison.

See the benchmarking effort →

Artificial intelligence

AI and physics, coupled

AI multiplies physics-based modeling. The ecosystem is built so the two reinforce each other: agents operate the models, learning algorithms control the infrastructure, and the physics engines supply the trustworthy, mass-conserving simulation that AI needs to train against and be checked by.

Agents that build and run models

Through openswmm.mcp, AI agents assemble networks, edit parameters, run simulations, and interrogate results over the Model Context Protocol: expert modeling workflows expressed in plain language.

Explore the MCP tooling →

Controlling infrastructure in real time

With openswmm.gymnasium, real-time control policies train against the engine to operate gates, pumps, and storage: smart stormwater control grounded in full hydraulic physics.

Explore the control environments →

Physics that keeps AI honest

Surrogates, forecasts, and learned policies are only as good as their ground truth. A reentrant, benchmarked, mass-conserving engine, cloneable for ensembles through the HydroCouple interfaces, is the reference AI is validated against.

How the interfaces enable it →

In action

From composition canvas to street-scale flooding

The tools in practice: the new engine and GUI resolving coupled 1D/2D urban flooding, and the Composer wiring components into coupled compositions.

Open-Source SWMM 6.0 GUI showing coupled 1D/2D flood results with depth and velocity fields on a triangular mesh over an OpenStreetMap basemap of the Bellinge catchment
Open-Source SWMM 6.0 (SWMM2D): coupled 1D network and 2D overland-flow results, with depth and velocity vector fields on an unstructured mesh rendered live over a basemap in the new GUI (Bellinge, Denmark benchmark catchment).
HydroCouple Composer: graphical canvas for wiring model components into coupled compositions
HydroCouple Composer: components dragged onto a canvas, exchange items wired, compositions executed, coupling without glue code.
More coming

Gallery in progress

Additional captures of the v6 engine are on the way: GPU-accelerated 2D solver runs, GeoPackage results exploration, terrain and mesh generation workflows, and agent-driven modeling sessions through the MCP tooling.

Follow the GUI repository →

Verification & validation

Trust is earned in the open

A model that governs public infrastructure decisions has to prove itself continuously. The OpenSWMM Benchmarks project is an open, engine-agnostic benchmarking and regression-testing platform for SWMM-compatible engines: a corpus of 1,396 models (EPA and OWA regression examples, the EXTRAN manual problems, the EPA QA suite with its original SWMM4 references, analytical problems with exact solutions, and real-world networks) run automatically and compared along the dimensions practitioners actually care about.

1,396tagged, schema-valid benchmark models
5measured dimensions per engine
Exactanalytical & manufactured solutions
Nightlyautomated CI sweeps & public badges

Stability & mass balance

Does the solver converge? Does the timestep collapse? Runoff, routing, and quality continuity error tracked on every run.

Parity & analytical accuracy

Every subcatchment, node, link, and system variable, including pollutants, at every reported timestep, plus L1/L2/L∞ error norms and observed convergence order against exact solutions.

Performance

Wall-clock time per model per engine, tracked historically, so every speedup and every regression is documented with data.

Verification and regression measure different things

Only cases with a genuine exact solution can show an engine is wrong; the rest can only show that engines differ. The platform keeps these apart deliberately: error norms are computed for truth-class cases alone, and the verification and regression scores are separate, separately-badged numbers. "1,396 models pass" is a regression claim and is always labeled as such.

The vision

One composition, the entire water cycle

Each ring below is a set of processes that exchange fluxes with the sewer and stream network SWMM simulates. Through the HydroCouple interfaces, each becomes a couplable component in a single composition.

FLAGSHIP Open-Source SWMM 6.0 (SWMM2D) 1D · 2D · water quality Groundwater aquifer exchange Snow & Climate forcing · melt · PET Rivers & Estuaries temperature · solutes 3D model (planned) Watershed finite volume runoff Lakes & Reservoirs CE-QUAL-W2 2D hydro · quality Smart Control RTC · forecasting Calibration & UQ ensembles · optimization uncertainty
Fluxes, states, and controls exchanged through standard interfaces. Every satellite is a component (existing or planned) that couples to the flagship engine without custom glue code.
Available today

HydroCouple model components

Research-grade components developed and applied in peer-reviewed studies, implementing the HydroCouple interface definitions, spanning watershed runoff to receiving-water quality with CE-QUAL-W2.

Available

SWMM Component

The classic EPA SWMM 5 engine wrapped as a HydroCouple component, the original demonstration of sewer-network coupling.

Source →

Available

Finite Volume Hydrologic Model

A finite-volume watershed model for distributed rainfall–runoff simulation on unstructured meshes.

Source →

Available

Groundwater Component

Vertically averaged groundwater flow for estimating groundwater–surface water exchange with streams and conduits.

Source →

Available

Channel Solute & Heat Transport

Advection–dispersion of heat and solutes in channel networks, the backbone of the river temperature studies published with the framework.

Source →

Available

Hyporheic Transient Storage

Transient storage-zone exchange for stream temperature and solute dynamics in the hyporheic zone.

Source →

Available

CE-QUAL-W2 Component

The widely used laterally averaged 2D hydrodynamic and water-quality model for lakes, reservoirs, and estuaries, maintained at Portland State University and wrapped as a couplable component connecting sewershed discharges to receiving-water response.

Source →

Available

Workflow & Adapters

Loop-driven time-marching workflows and temporal-interpolation adapted outputs, the plumbing that reconciles components in time.

Workflow → · Adapters →

Roadmap

Planned couplable components

Development directions recorded in the public roadmap. Planned means planned: designs are studied and sequenced in the open before they are built, and priorities respond to community and utility needs.

Planned

Spatially Explicit Groundwater

A fully coupled two-layer subsurface kernel on the 2D mesh: moving water table, lateral Darcy exchange, saturation-excess runoff, and head-driven pipe–aquifer exchange.

Planned

Uncertainty Quantification Sidecar

Reduced-order models and spatial-field methods for propagating parameter and forcing uncertainty through coupled compositions at practical cost.

Planned

Fully 3D Hydrodynamic Model

A new fully three-dimensional hydrodynamic and transport model for rivers, estuaries, and stratified waterbodies, designed from the start as a HydroCouple component, so it couples directly with the SWMM2D engine and CE-QUAL-W2 for continuum studies from sewershed to receiving water.

Planned

River & Receiving-Water Coupling

Tighter integration of the stream temperature, solute transport, and CE-QUAL-W2 components with the v6 engine for sewershed-to-stream continuum studies.

Planned

Water Quality Process Library

Extended in-network and surface water-quality process formulations beyond legacy buildup–washoff, exposed as couplable components.

Planned

Hybrid Physics-AI Modeling

Streaming exchange items for live sensor assimilation, learned surrogates coupled with physics-based components, and continuously updated operational models of sewer systems.

Planned

Community Components

Yours. The interface definitions are open: wrap your model, and it couples with everything above.

Start here →

Composition tools

Composer and SDK

HydroCouple Composer

A graphical environment for assembling coupled compositions: drag components onto a canvas, wire their exchange items, and execute.

Source → · Installers →

HydroCouple SDK

The C++ software development kit for building conforming components, with base implementations of the interface definitions so wrapping a model starts from working code.

Source →