OpenHydro Bench
Exact answer known1D · free surfaceCandidate

Dam break into shallow water

Does the model form the right bore when a flood runs into standing water?

Test A1F-011
Stoker (1957)
Version 1.0.0
Press play, or drag the slider, to watch the exact answer unfold. Models are compared at the end, t = 30 s.

What happens

A 1-metre reservoir is released into a channel already holding 10 cm of water. A steep bore (a moving step in the water surface) runs downstream while a smooth dip runs back upstream.

Why it matters

Real floods rarely meet bone-dry ground. The height and speed of the bore decide how hard the flood hits whatever is downstream.

A good model must

  • keep the average depth error under 5 cm after 30 s
  • neither lose nor create water
  • get steadily more accurate on finer grids

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 on 4 grids, from 10 m down to 1.25 m cells; the checks are scored on the 1.25 m grid, and each card lists the error on every grid. Compare them in the results viewer →

RankModelDifferenceLargest difference inMass errorRun time
1Basilisk Saint-Venant0.047 %Average depth error0.016 %0.03 s
2Demo 1D suite example0.056 %Average depth error0.016 %–
3ANUGA 4.0.10.07 %Average depth error0.047 %3.3 s
4GeoClaw Clawpack 5.90.092 %Average depth error0.042 %1.1 s
5=LISFLOOD-FP 8.3 · FV10.18 %Average depth error0.016 %0.10 s
5=OpenSWMM 6 finite volume0.18 %Average depth error0.016 %0.43 s
7=TELEMAC-2D openTELEMAC 9.10.22 %Average depth error<0.01 %7.7 s
7=LISFLOOD-FP 8.3 · DG20.22 %Average depth error0.016 %0.38 s
9HydroNet finite volume0.26 %Average depth error0.016 %1.5 s
10=HEC-RAS 7.0 1D · 2D SWE-ELM0.9 %Average depth error0.011 %19.6 s
10=HEC-RAS 6.6 previous release0.9 %Average depth error0.011 %23.5 s
12=HEC-RAS 7.0 2D · SWE-EM1.4 %Average depth error0.011 %19.3 s
12=HEC-RAS 6.6 previous release · 2D SWE-EM1.4 %Average depth error0.011 %23.1 s
14=Landlab OverlandFlow3.1 %Average depth error0.014 %0.08 s
14=LISFLOOD-FP 8.3 · ACC3.2 %Average depth error0.011 %0.06 s
16Hydra urban drainage3.8 %Average depth error0.014 %3.9 s
17=OpenSWMM 6 dynamic wave6.7 %Average depth error4.1 %4.1 s
17=SWMM 5.1.15 previous release6.7 %Average depth error4.1 %4.0 s
17=EPA SWMM 5.2.4 dynamic wave6.7 %Average depth error4.1 %3.9 s
20HydroNet FVM-PINN24 %Average depth error5.3 %–
Basilisk
Basilisk (Popinet, basilisk.fr), its second-order well-balanced Saint-Venant solver on a uniform Cartesian grid with its defaults; Manning friction added as the usual semi-implicit term (it has none built in)
#1 0.047 % off

Rate the error shrinks on finer grids: 0.98 (90 % range 0.94 to 1); the method's expected rate is 0.8 or more

Run time, finest grid: 0.03 s · Intel(R) Xeon(R) 6973P-C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: basilisk saint-venant.h (uniform Cartesian grid, defaults; a C program per test, generated by scripts/run_basilisk.py)

Average depth error
• 0.26 mm off
0.047 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00201 · 5 m: 0.000979 · 2.5 m: 0.000515 · 1.25 m: 0.000256
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.98 (90 % range 0.94 to 1.03)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: Basilisk Saint-Venant (snapshot de851a91)

Demo 1D
Worked example that ships with the suite: plain, well-understood schemes
#2 0.056 % off

Rate the error shrinks on finer grids: 0.96 (90 % range 0.79 to 1.1); the method's expected rate is 0.8 or more

Average depth error
• 0.31 mm off
0.056 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00216 · 5 m: 0.00116 · 2.5 m: 0.000512 · 1.25 m: 0.000311
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.96 (90 % range 0.79 to 1.13)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: demo

ANUGA
ANUGA 4.0.1 (Geoscience Australia / ANU), default settings on a triangular mesh
#3 0.07 % off

Rate the error shrinks on finer grids: 0.72 (90 % range 0.03 to 1.4); the method's expected rate is 0.8 or more

Run time, finest grid: 3.3 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: anuga (rectangular_cross mesh, defaults, sampled at cell centres)

Average depth error
• 0.39 mm off
0.07 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.047 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00138 · 5 m: 0.00138 · 2.5 m: 0.000418 · 1.25 m: 0.000386
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.72 (90 % range 0.03 to 1.42)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: ANUGA 4.0.1

GeoClaw
GeoClaw 5.9.2 (Clawpack), with its stock example's settings on a uniform grid
#4 0.092 % off

Rate the error shrinks on finer grids: 0.83 (90 % range 0.49 to 1.2); the method's expected rate is 0.8 or more

Run time, finest grid: 1.1 s · AMD EPYC 9V74 80-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: geoclaw (uniform grid, stock example settings)

Average depth error
• 0.51 mm off
0.092 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.042 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00254 · 5 m: 0.00179 · 2.5 m: 0.00072 · 1.25 m: 0.000506
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.83 (90 % range 0.49 to 1.17)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: GeoClaw 5.9.2

LISFLOOD-FP FV1
LISFLOOD-FP 8.3, first-order finite-volume solver (full shallow-water equations)
#5= 0.18 % off

Rate the error shrinks on finer grids: 0.78 (90 % range 0.77 to 0.8); the method's expected rate is 0.8 or more

Run time, finest grid: 0.10 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: lisflood (fv1 solver, defaults; CPU, double precision)

Average depth error
• 0.98 mm off
0.18 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.005 · 5 m: 0.00291 · 2.5 m: 0.00166 · 1.25 m: 0.000982
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.78 (90 % range 0.77 to 0.80)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: LISFLOOD-FP 8.3 FV1

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
#5= 0.18 % off

Rate the error shrinks on finer grids: 0.87 (90 % range 0.79 to 0.95); the method's expected rate is 0.8 or more

Run time, finest grid: 0.43 s · INTEL(R) XEON(R) PLATINUM 8573C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: swmm (FV routing, conduit per grid cell)

Average depth error
• 0.99 mm off
0.18 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00595 · 5 m: 0.00352 · 2.5 m: 0.00182 · 1.25 m: 0.000994
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.87 (90 % range 0.79 to 0.95)
reported, not counted · the scheme's design order is 1

OpenSWMM 6's new finite-volume routing is 1 mm from the exact answer where SWMM's dynamic wave is 37 mm off. Its convergence rate is 0.87 (90 % range 0.79 to 0.95), close to the design order of 1.

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

TELEMAC-2D
openTELEMAC-2D 9.1.1, run with its default finite-volume settings
#7= 0.22 % off

Rate the error shrinks on finer grids: 0.75 (90 % range 0.72 to 0.78); the method's expected rate is 0.8 or more

Run time, finest grid: 7.7 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: telemac2d (Selafin, centreline nodes)

Average depth error
• 1.2 mm off
0.22 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.00065 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00564 · 5 m: 0.00342 · 2.5 m: 0.00204 · 1.25 m: 0.00119
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.75 (90 % range 0.72 to 0.78)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: openTELEMAC-2D v9.1.1

LISFLOOD-FP DG2
LISFLOOD-FP 8.3, second-order discontinuous Galerkin solver
#7= 0.22 % off

Rate the error shrinks on finer grids: 0.78 (90 % range 0.76 to 0.79); the method's expected rate is 0.8 or more

Run time, finest grid: 0.38 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: lisflood (dg2 solver, defaults; CPU, double precision)

Average depth error
• 1.2 mm off
0.22 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00621 · 5 m: 0.00367 · 2.5 m: 0.00215 · 1.25 m: 0.00124
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.78 (90 % range 0.76 to 0.79)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: LISFLOOD-FP 8.3 DG2

HydroNet
HydroNet (Penn State) — its differentiable Roe finite-volume solver (Heun RK2, CFL 0.3), the engine inside its FVM-PINN
#9 0.26 % off

Rate the error shrinks on finer grids: 0.7 (90 % range 0.68 to 0.72); the method's expected rate is 0.8 or more

Run time, finest grid: 1.5 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: hydronet (fvm; HydroNet dam-break example settings, CFL 0.3; h_dry 0.0001 m)

Average depth error
• 1.4 mm off
0.26 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.016 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00617 · 5 m: 0.00374 · 2.5 m: 0.00233 · 1.25 m: 0.00143
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.70 (90 % range 0.68 to 0.72)
reported, not counted · the scheme's design order is 1

Into 10 cm of water the dam break runs normally: depth error 1.4 mm and mass 0.016 %, but the error falls at a rate of 0.70 (90 % range 0.68 to 0.72; minimum 0.8).

Scored with method 3.0 · Score card: HydroNet finite volume (Roe, RK2) (0d98ff5)

HEC-RAS 7.0
HEC-RAS 7.0.1 (US Army Corps of Engineers), built and run headless with its default settings; in 2D, its default full shallow-water option (SWE-ELM)
#10= 0.9 % off

Rate the error shrinks on finer grids: 0.17 (90 % range 0.072 to 0.27); the method's expected rate is 0.8 or more

Run time, finest grid: 19.6 s · AMD EPYC 9V45 96-Core Processor, 2 cores, 16 GB, Windows 2025Server (GitHub Actions (github-hosted, win25-vs2026))

Settings: hecras 2D (headless terrain + seeded mesh, restart-file initial step, SWE-ELM)

Average depth error
• 5 mm off
0.9 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.011 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00683 · 5 m: 0.00659 · 2.5 m: 0.00533 · 1.25 m: 0.00496
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.17 (90 % range 0.07 to 0.27)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: HEC-RAS 7.0.1 2D SWE-ELM

HEC-RAS 6.6
HEC-RAS 6.6, the release before 7.0, run the same way (1D, and 2D with its default SWE-ELM): kept so a change between versions shows
#10= 0.9 % off

Rate the error shrinks on finer grids: 0.17 (90 % range 0.072 to 0.27); the method's expected rate is 0.8 or more

Run time, finest grid: 23.5 s · Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz, 2 cores, 16 GB, Windows 2025Server (GitHub Actions (github-hosted, win25-vs2026))

Settings: hecras 2D (headless terrain + seeded mesh, restart-file initial step, SWE-ELM)

Average depth error
• 5 mm off
0.9 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.011 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00683 · 5 m: 0.00659 · 2.5 m: 0.00533 · 1.25 m: 0.00496
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.17 (90 % range 0.07 to 0.27)
reported, not counted · the scheme's design order is 1

The bore is in about the right place (depth error 5 mm), but the error does not fall on finer grids.

Scored with method 3.0 · Score card: HEC-RAS 6.6 2D SWE-ELM

HEC-RAS 7.0
HEC-RAS 7.0.1 2D with its Eulerian shallow-water option (SWE-EM), which HEC recommends for dam breaks
#12= 1.4 % off

Rate the error shrinks on finer grids: -0.19 (90 % range -0.3 to -0.073); the method's expected rate is 0.8 or more

Run time, finest grid: 19.3 s · AMD EPYC 9V45 96-Core Processor, 2 cores, 16 GB, Windows 2025Server (GitHub Actions (github-hosted, win25-vs2026))

Settings: hecras 2D (headless terrain + seeded mesh, restart-file initial step, SWE-EM)

Average depth error
• 7.7 mm off
1.4 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.011 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00526 · 5 m: 0.00633 · 2.5 m: 0.0075 · 1.25 m: 0.00768
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.19 (90 % range −0.30 to −0.07)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: HEC-RAS 7.0.1 2D SWE-EM

HEC-RAS 6.6
HEC-RAS 6.6 2D with its Eulerian shallow-water option (SWE-EM), the release before 7.0
#12= 1.4 % off

Rate the error shrinks on finer grids: -0.19 (90 % range -0.3 to -0.073); the method's expected rate is 0.8 or more

Run time, finest grid: 23.1 s · Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz, 2 cores, 16 GB, Windows 2025Server (GitHub Actions (github-hosted, win25-vs2026))

Settings: hecras 2D (headless terrain + seeded mesh, restart-file initial step, SWE-EM)

Average depth error
• 7.7 mm off
1.4 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.011 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.00526 · 5 m: 0.00633 · 2.5 m: 0.0075 · 1.25 m: 0.00768
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.19 (90 % range −0.30 to −0.07)
reported, not counted · the scheme's design order is 1

Error 8 mm, but it grows slightly on finer grids.

Scored with method 3.0 · Score card: HEC-RAS 6.6 2D SWE-EM

Landlab
Landlab 2.11 (CSDMS), its OverlandFlow component: the local-inertial 2D flood scheme of de Almeida et al. (2012), written independently in NumPy, with its defaults
#14= 3.1 % off

Rate the error shrinks on finer grids: 0.015 (90 % range -0.0082 to 0.039); the method's expected rate is 0.8 or more

Run time, finest grid: 0.08 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: landlab.components.OverlandFlow (local inertial, defaults; a node per cell centre)

Average depth error
• 1.7 cm off
3.1 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.014 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0172 · 5 m: 0.0174 · 2.5 m: 0.0168 · 1.25 m: 0.0168
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.02 (90 % range −0.01 to 0.04)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: Landlab 2.11.0 OverlandFlow

LISFLOOD-FP ACC
LISFLOOD-FP 8.3, the local-inertia solver it is best known for; it leaves out the advection term
#14= 3.2 % off

Rate the error shrinks on finer grids: 0.06 (90 % range -0.017 to 0.14); the method's expected rate is 0.8 or more

Run time, finest grid: 0.06 s · AMD EPYC 7763 64-Core Processor, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: lisflood (acceleration solver, defaults; CPU, double precision)

Average depth error
• 1.7 cm off
3.2 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.011 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0196 · 5 m: 0.0179 · 2.5 m: 0.0169 · 1.25 m: 0.0174
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate 0.06 (90 % range −0.02 to 0.14)
reported, not counted · the scheme's design order is 1

The local-inertia scheme leaves out the advection term, so it cannot form the right bore; it is shown because it is what most LISFLOOD-FP users run.

Scored with method 3.0 · Score card: LISFLOOD-FP 8.3 ACC

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

Rate the error shrinks on finer grids: -0.25 (90 % range -0.52 to 0.011); the method's expected rate is 0.8 or more

Run time, finest grid: 3.9 s · INTEL(R) XEON(R) PLATINUM 8573C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: swmm (DYNWAVE routing, conduit per grid cell)

Average depth error
• 2.1 cm off
3.8 % of the exact solution's mean depth, 0.550 m
Water conserved
· 0.014 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0119 · 5 m: 0.0132 · 2.5 m: 0.0137 · 1.25 m: 0.0211
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.25 (90 % range −0.52 to 0.01)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: Hydra urban drainage (17.0.0/4.1.1)

OpenSWMM 6
OpenSWMM Engine v6 (HydroCouple's SWMM 6, pre-release) with dynamic-wave routing
#17= 6.7 % off

Rate the error shrinks on finer grids: -0.25 (90 % range -2 to 1.5); the method's expected rate is 0.8 or more

Run time, finest grid: 4.1 s · INTEL(R) XEON(R) PLATINUM 8573C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: swmm (DYNWAVE routing, conduit per grid cell)

Average depth error
• 3.7 cm off
6.7 % of the exact solution's mean depth, 0.550 m
Water conserved
· 4.1 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0124 · 5 m: 0.0645 · 2.5 m: 0.0141 · 1.25 m: 0.0369
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.25 (90 % range −2.00 to 1.49)
reported, not counted · the scheme's design order is 1

Identical, number for number, to EPA SWMM 5.2.4: OpenSWMM 6 keeps the original dynamic-wave solver.

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

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
#17= 6.7 % off

Rate the error shrinks on finer grids: -0.25 (90 % range -2 to 1.5); the method's expected rate is 0.8 or more

Run time, finest grid: 4.0 s · INTEL(R) XEON(R) PLATINUM 8573C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: swmm (DYNWAVE routing, conduit per grid cell)

Average depth error
• 3.7 cm off
6.7 % of the exact solution's mean depth, 0.550 m
Water conserved
· 4.1 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0124 · 5 m: 0.0645 · 2.5 m: 0.0141 · 1.25 m: 0.0369
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.25 (90 % range −2.00 to 1.49)
reported, not counted · the scheme's design order is 1

Scored with method 3.0 · Score card: EPA SWMM 5.1.15

EPA SWMM 5.2.4
EPA SWMM 5.2.4 with dynamic-wave routing; on the channel tests, the channel is written as one conduit per grid cell
#17= 6.7 % off

Rate the error shrinks on finer grids: -0.25 (90 % range -2 to 1.5); the method's expected rate is 0.8 or more

Run time, finest grid: 3.9 s · INTEL(R) XEON(R) PLATINUM 8573C, 2 cores, 15.6 GB, Linux 6.17.0-1022-azure (GitHub Actions (github-hosted, ubuntu24))

Settings: swmm (DYNWAVE routing, conduit per grid cell)

Average depth error
• 3.7 cm off
6.7 % of the exact solution's mean depth, 0.550 m
Water conserved
· 4.1 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.0124 · 5 m: 0.0645 · 2.5 m: 0.0141 · 1.25 m: 0.0369
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.25 (90 % range −2.00 to 1.49)
reported, not counted · the scheme's design order is 1

The bore smears and lags, and the stored water drifts 4 % above the exact volume: dynamic-wave routing is not built for moving shocks.

Scored with method 3.0 · Score card: EPA SWMM 5.2.4

HydroNet
HydroNet's FVM-PINN neural network, trained per grid with the recipe of its own dam-break example (64×5 network, 5000 Adam epochs)
#20 24 % off

Rate the error shrinks on finer grids: -0.12 (90 % range -0.23 to -0.0048); the method's expected rate is 0.8 or more

Settings: hydronet (pinn; HydroNet dam-break example settings, 5000 Adam epochs; h_dry 0.0001 m)

Average depth error
• 13 cm off
24 % of the exact solution's mean depth, 0.550 m
Water conserved
· 5.3 % error
conservation, reported beside the score
Error by grid (L1 h)
· 10 m: 0.104 · 5 m: 0.119 · 2.5 m: 0.133 · 1.25 m: 0.131
reported, not counted · the checks above are scored on the 1.25 m grid
Improves with finer grids
· rate −0.12 (90 % range −0.23 to −0.00)
reported, not counted · the scheme's design order is 1

The trained network smears the bore and the rarefaction: average depth error 12.6 cm, 4.5 % of the water lost, and no improvement on finer grids. Trained with the recipe of HydroNet's own dam-break example, which on its own 20 m, 1 s case gives an RMS error of 6 cm on a 2 m dam (3 %); this case is 2 km over 30 s.

Scored with method 3.0 · Score card: HydroNet FVM-PINN (0d98ff5)

Not run yet: TUFLOW, MIKE 21, Iber, BASEMENT, Delft3D FM
Run it and add yours →

Error shrinks as the grid gets finer

Average error on each grid. A steeper line means the model converges faster.

0.3 mm1 mm3 mm1 cm3 cm10 cm1.252.5510grid cell sizeDemo 1D suite example: rate 0.95HEC-RAS 7.0 1D · 2D SWE-ELM: rate 0.2HEC-RAS 7.0 2D · SWE-EM: rate -0.14TELEMAC-2D openTELEMAC 9.1: rate 0.76ANUGA 4.0.1: rate 0.92GeoClaw Clawpack 5.9: rate 0.91LISFLOOD-FP 8.3 · FV1: rate 0.78LISFLOOD-FP 8.3 · DG2: rate 0.78LISFLOOD-FP 8.3 · ACC: rate 0.023EPA SWMM 5.2.4 dynamic wave: rate 0.4OpenSWMM 6 dynamic wave: rate 0.4OpenSWMM 6 finite volume: rate 0.91Hydra urban drainage: rate -0.34HydroNet finite volume: rate 0.69HydroNet FVM-PINN: rate -0.065SWMM 5.1.15 previous release: rate 0.4Basilisk Saint-Venant: rate 0.97Landlab OverlandFlow: rate 0.024HEC-RAS 6.6 previous release: rate 0.2HEC-RAS 6.6 previous release · 2D SWE-EM: rate -0.14
Demo 1D · rate 0.95HEC-RAS 7.0 · rate 0.2HEC-RAS 7.0 · rate -0.14TELEMAC-2D · rate 0.76ANUGA · rate 0.92GeoClaw · rate 0.91LISFLOOD-FP FV1 · rate 0.78LISFLOOD-FP DG2 · rate 0.78LISFLOOD-FP ACC · rate 0.023EPA SWMM 5.2.4 · rate 0.4OpenSWMM 6 · rate 0.4OpenSWMM 6 · rate 0.91Hydra · rate -0.34HydroNet · rate 0.69HydroNet · rate -0.065SWMM 5.1.15 · rate 0.4Basilisk · rate 0.97Landlab · rate 0.024HEC-RAS 6.6 · rate 0.2HEC-RAS 6.6 · rate -0.14

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
L1_h
L1 of h · in the score
of the exact solution's mean depth, 0.550 m–L1 depth error on finest mesh; shock and rarefaction capture.
mass
global_mass_error of volume · conservation, beside the score
already a percentage–Conservation property of continuous equations.
convergence
observed order of L1 error in h · reported, not counted
the design order, 1–Measured from the error on every refinement level, as in ASME V&V 20.

Reference

Exact solution from references.stoker.depth_velocity.

More figures

Water depth along the channel — Stoker wet-bed dam break00.20.40.60.81-1,000-50005001,000Distance x (m)Depth h (m)Exact, t = 0 sExact, t = 7.5 sExact, t = 15 sExact, t = 22.5 sExact, t = 30 sDemo solver, t = 30 s: -999, 1Demo solver, t = 30 s: -983, 1Demo solver, t = 30 s: -967, 1Demo solver, t = 30 s: -951, 1Demo solver, t = 30 s: -934, 1Demo solver, t = 30 s: -918, 1Demo solver, t = 30 s: -902, 1Demo solver, t = 30 s: -886, 1Demo solver, t = 30 s: -869, 1Demo solver, t = 30 s: -853, 1Demo solver, t = 30 s: -837, 1Demo solver, t = 30 s: -821, 1Demo solver, t = 30 s: -804, 1Demo solver, t = 30 s: -788, 1Demo solver, t = 30 s: -772, 1Demo solver, t = 30 s: -756, 1Demo solver, t = 30 s: -739, 1Demo solver, t = 30 s: -723, 1Demo solver, t = 30 s: -707, 1Demo solver, t = 30 s: -691, 1Demo solver, t = 30 s: -674, 1Demo solver, t = 30 s: -658, 1Demo solver, t = 30 s: -642, 1Demo solver, t = 30 s: -626, 1Demo solver, t = 30 s: -609, 1Demo solver, t = 30 s: -593, 1Demo solver, t = 30 s: -577, 1Demo solver, t = 30 s: -561, 1Demo solver, t = 30 s: -544, 1Demo solver, t = 30 s: -528, 1Demo solver, t = 30 s: -512, 1Demo solver, t = 30 s: -496, 1Demo solver, t = 30 s: -479, 1Demo solver, t = 30 s: -463, 1Demo solver, t = 30 s: -447, 1Demo solver, t = 30 s: -431, 1Demo solver, t = 30 s: -414, 1Demo solver, t = 30 s: -398, 1Demo solver, t = 30 s: -382, 1Demo solver, t = 30 s: -366, 1Demo solver, t = 30 s: -349, 1Demo solver, t = 30 s: -333, 1Demo solver, t = 30 s: -317, 1Demo solver, t = 30 s: -301, 1Demo solver, t = 30 s: -284, 1Demo solver, t = 30 s: -268, 1Demo solver, t = 30 s: -252, 1Demo solver, t = 30 s: -236, 1Demo solver, t = 30 s: -219, 1Demo solver, t = 30 s: -203, 1Demo solver, t = 30 s: -187, 1Demo solver, t = 30 s: -171, 1Demo solver, t = 30 s: -154, 1Demo solver, t = 30 s: -138, 1Demo solver, t = 30 s: -122, 1Demo solver, t = 30 s: -106, 1Demo solver, t = 30 s: -89.38, 0.972Demo solver, t = 30 s: -73.12, 0.853Demo solver, t = 30 s: -56.88, 0.751Demo solver, t = 30 s: -40.62, 0.657Demo solver, t = 30 s: -24.38, 0.57Demo solver, t = 30 s: -8.125, 0.488Demo solver, t = 30 s: 8.125, 0.41Demo solver, t = 30 s: 24.38, 0.396Demo solver, t = 30 s: 40.62, 0.396Demo solver, t = 30 s: 56.88, 0.396Demo solver, t = 30 s: 73.12, 0.396Demo solver, t = 30 s: 89.38, 0.396Demo solver, t = 30 s: 106, 0.1Demo solver, t = 30 s: 122, 0.1Demo solver, t = 30 s: 138, 0.1Demo solver, t = 30 s: 154, 0.1Demo solver, t = 30 s: 171, 0.1Demo solver, t = 30 s: 187, 0.1Demo solver, t = 30 s: 203, 0.1Demo solver, t = 30 s: 219, 0.1Demo solver, t = 30 s: 236, 0.1Demo solver, t = 30 s: 252, 0.1Demo solver, t = 30 s: 268, 0.1Demo solver, t = 30 s: 284, 0.1Demo solver, t = 30 s: 301, 0.1Demo solver, t = 30 s: 317, 0.1Demo solver, t = 30 s: 333, 0.1Demo solver, t = 30 s: 349, 0.1Demo solver, t = 30 s: 366, 0.1Demo solver, t = 30 s: 382, 0.1Demo solver, t = 30 s: 398, 0.1Demo solver, t = 30 s: 414, 0.1Demo solver, t = 30 s: 431, 0.1Demo solver, t = 30 s: 447, 0.1Demo solver, t = 30 s: 463, 0.1Demo solver, t = 30 s: 479, 0.1Demo solver, t = 30 s: 496, 0.1Demo solver, t = 30 s: 512, 0.1Demo solver, t = 30 s: 528, 0.1Demo solver, t = 30 s: 544, 0.1Demo solver, t = 30 s: 561, 0.1Demo solver, t = 30 s: 577, 0.1Demo solver, t = 30 s: 593, 0.1Demo solver, t = 30 s: 609, 0.1Demo solver, t = 30 s: 626, 0.1Demo solver, t = 30 s: 642, 0.1Demo solver, t = 30 s: 658, 0.1Demo solver, t = 30 s: 674, 0.1Demo solver, t = 30 s: 691, 0.1Demo solver, t = 30 s: 707, 0.1Demo solver, t = 30 s: 723, 0.1Demo solver, t = 30 s: 739, 0.1Demo solver, t = 30 s: 756, 0.1Demo solver, t = 30 s: 772, 0.1Demo solver, t = 30 s: 788, 0.1Demo solver, t = 30 s: 804, 0.1Demo solver, t = 30 s: 821, 0.1Demo solver, t = 30 s: 837, 0.1Demo solver, t = 30 s: 853, 0.1Demo solver, t = 30 s: 869, 0.1Demo solver, t = 30 s: 886, 0.1Demo solver, t = 30 s: 902, 0.1Demo solver, t = 30 s: 918, 0.1Demo solver, t = 30 s: 934, 0.1Demo solver, t = 30 s: 951, 0.1Demo solver, t = 30 s: 967, 0.1Demo solver, t = 30 s: 983, 0.1Demo solver, t = 30 s: 999, 0.1
  • Exact, t = 0 s
  • Exact, t = 7.5 s
  • Exact, t = 15 s
  • Exact, t = 22.5 s
  • Exact, t = 30 s
  • Demo solver, t = 30 s

Exact solution at five instants; dots are the demo solver on its finest grid at the final time.

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 candidateanalytic-public
  • ✓All inputs availablefor candidateall committed or fetched by SHA-256
  • ✓Reference (truth) availablefor candidateanalytic generator
  • ✓Every tolerance justifiedfor candidateeach gating criterion has a rationale
  • ✓A published run passesfor frozen16 passing score card(s)
  • ✓Order of accuracy shownfor frozenobserved order meets the minimum
  • ✓Two independent codes passfor frozenpassing codes: ANUGA 4.0.1, Basilisk Saint-Venant, GeoClaw 5.9.2, HEC-RAS 6.6 2D SWE-ELM, HEC-RAS 6.6 2D SWE-EM, HEC-RAS 7.0.1 2D SWE-ELM, HEC-RAS 7.0.1 2D SWE-EM, Hydra urban drainage, HydroNet finite volume, LISFLOOD-FP 8.3 ACC, LISFLOOD-FP 8.3 DG2, LISFLOOD-FP 8.3 FV1, Landlab 2.11.0 OverlandFlow, OpenSWMM Engine v6 finite volume, demo, openTELEMAC-2D v9.1.1
  • ✗Maintainer review recordedfor frozenno maintainer review recorded

Inputs

FileRoleFormatSHA-256Get it
inputs/params.jsoncase_parametersjson11c492bdd3a5…Download

About this test

Physics

Riemann dam-break problem with left depth \(h_l = 1\,\mathrm{m}\), right depth \(h_r = 0.1\,\mathrm{m}\), both initially at rest. The exact inviscid solution (Stoker, 1957) comprises a left rarefaction, a constant intermediate state \((h^*, u^*)\), and a right-going shock. Generator: references.stoker.depth_velocity.

Citation

Stoker, J. J. (1957). Water Waves: The Mathematical Theory with Applications. Interscience, New York. ISBN 978-0-471-57034-9 (Wiley Classics Library reprint).

Pitfalls

  • Shock smearing dominates L1(\(h\)); observed order near 1 is expected for first-order Godunov schemes even when the rarefaction is well resolved.
  • Incorrect intermediate-state solvers or approximate Riemann solvers with large entropy glitches can shift the shock speed.
  • Keep Courant number fixed across refinement (fixed_courant: 0.5).
  • Do not treat this as a dry-bed case: \(h_r > 0\) removes the wet/dry front pathology of A1F-010.

Sources

  • Stoker, J. J. (1957). Water Waves: The Mathematical Theory with Applications.

Test A1F-011_stoker_wet_bed_dambreak · version 1.0.0 · data licence analytic-public