OpenHydro Bench
Compared with a pinned engine1D · mixedCandidate

Sewer network routing

Does an engine route a sewer network the same way as SWMM 5.2.4?

Test B-EXTRAN-001
Roesner (1988)
Version 2.0.0
Right answer
A pinned reference engine · Roesner (1988)
Results
4 models · closest under 0.01 % off · see them ↓
Must
match peak depths within 1 % at every node
Sketch, not to scale.

The model file

Every engine runs this EPA SWMM 5 input file unchanged. Open it in EPA SWMM 5, or in any engine that reads the format, and you are running exactly what was scored.

On the map: click any element to see its line in the file and every engine's result there over time, or colour the network by how far each engine is from the reference.

Reference flows in the five busiest links (SWMM 5.2.4)05010002468Time (h)Flow (cfs)Link 1630Link 1030Link 1600Link 1602Link 8100
  • Link 1630
  • Link 1030
  • Link 1600
  • Link 1602
  • Link 8100

What happens

The classic EXTRAN example: a branching sewer with surcharge and three inflow hydrographs, routed for 8 hours.

Why it matters

SWMM results are used for permits and designs; a different engine must reproduce them.

A good model must

  • match peak depths within 1 % at every node
  • match conveyed volumes within 1 % in every pipe

How models did

In rank order: by each model's percent difference from the right answer, the largest over the test's accuracy checks (lower is better; results within 10 % of each other share a rank). Mass error, timing and NSE are shown beside it, not folded in. Each model runs the same inputs.

RankModelDifferenceLargest difference inRun time
1=SWMM 5.1.15 previous release<0.01 %Peak depths–
1=OpenSWMM 6 vs SWMM 5.2.4<0.01 %Peak depths–
3Hydra urban drainage4.5 %Volumes–
4OpenSWMM 6 finite volume88 %Peak depths–
SWMM 5.1.15
EPA SWMM 5.1.15, the release before 5.2: on the parity tests compared with SWMM 5.2.4, on the exact tests scored like any other engine
#1= under 0.01 % off

Settings: swmm5 (swmm-toolkit 0.10.0)

Peak depths
• 0 % off
Volumes
• 0 % off

Scored with method 3.0 · Score card: EPA SWMM 5.1.15

OpenSWMM 6
OpenSWMM Engine v6 (HydroCouple's SWMM 6, pre-release), compared with SWMM 5.2.4
#1= under 0.01 % off

Settings: openswmm (v6 engine, SWMM binary output)

Peak depths
• 0 % off
Volumes
• 0 % off

Scored with method 3.0 · Score card: OpenSWMM Engine 6.0.0a4.dev1

Hydra
Hydra 17 (NEER AI, Rust): its urban-drainage engine on the SWMM data model, run through its CLI with default settings
#3 4.5 % off

Settings: hydra CLI 4.1.1 (uds engine, SWMM-format binary output)

Peak depths
• 1.3 % off
Volumes
• 4.5 % off

Scored with method 3.0 · Score card: Hydra 17.0.0 urban drainage

OpenSWMM 6
OpenSWMM Engine v6 with its new explicit finite-volume routing (FLOW_ROUTING FV): one cell per conduit on the channel tests, its default cells per pipe on the drainage networks
#4 88 % off

Settings: openswmm (v6 engine, FLOW_ROUTING FV, SWMM binary output)

Peak depths
• 88 % off
Volumes
• 34 % off

Scored with method 3.0 · Score card: OpenSWMM Engine v6 finite volume (6.0.0a4.dev1)

Status of this test

Candidate. To become frozen it needs: maintainer review recorded.

Technical details for reviewers Checks, reference, inputs, sources

Checks and why each limit was chosen

CheckDifference measured as a percentage ofLatestDifferenceWhy this check
peak_depth
relative_peak of h · in the score
already a percentage–Peak depth within ±1 % of SWMM 5.2.4 at every node.
volume
relative_volume of Q · in the score
already a percentage–Conveyed volume within ±1 % of SWMM 5.2.4 in every link.

Second build of the reference. The official EPA SWMM 5.2.4 official win64 binaries, run on this input and scored against the reference: pass (Peak depths 0 %; Volumes 0 %). Both builds agree, so the reference does not depend on the compiler.

Reference

SWMM 5.2.4, run on the test's own input.

Promotion checklist

Only frozen tests have fixed inputs and answers. This list is computed from the manifest and the published score cards; the rules are in the method.

  • ✓Data licence verifiedfor candidateUnlicense
  • ✓All inputs availablefor candidateall committed or fetched by SHA-256
  • ✓Reference (truth) availablefor candidatecommitted reference results
  • ✓Every tolerance justifiedfor candidateeach gating criterion has a rationale
  • ✓A published run passesfor frozen2 passing score card(s)
  • ✓Order of accuracy shownfor frozennot a verification case
  • ✓Reference reproduced by a second buildfor frozenthe official EPA build reproduces the reference within tolerance
  • ✗Maintainer review recordedfor frozenno maintainer review recorded

Inputs

FileRoleFormatSHA-256Get it
inputs/network.inpnetworkinp739391331b14…Download

About this test

The first example of the EXTRAN user's manual (Roesner, Aldrich and Dickinson, 1988), as carried in the OWA/EPA SWMM 5 regression models: a dendritic sewer network with surcharge, driven by three inflow hydrographs and routed by dynamic wave for 8 hours.

The reference is EPA SWMM 5.2.4 (swmm-toolkit build; the official Windows binaries are checked against it in CI). A candidate passes when every node's peak depth and every link's conveyed volume are within 1 % of the reference.

Source: HydroCouple openswmm.engine.benchmarks, owa-extran/extran1, commit 63eb8bc5b4e741c82195ed65c4d7d146b86da1cc. Regenerate the reference with python scripts/make_reference.py B-EXTRAN-001.

A Track B fail shows a difference from SWMM 5.2.4, not a physics error.

Sources

Test B-EXTRAN-001_extran_parity · version 2.0.0 · data licence Unlicense