<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" specific-use="SMUR" dtd-version="3.0" xml:lang="en">
<front>
<journal-meta>
<journal-id journal-id-type="publisher">EGUsphere</journal-id>
<journal-title-group>
<journal-title>EGUsphere</journal-title>
<abbrev-journal-title abbrev-type="publisher">EGUsphere</abbrev-journal-title>
<abbrev-journal-title abbrev-type="nlm-ta">EGUsphere</abbrev-journal-title>
</journal-title-group>
<publisher><publisher-name>Copernicus Publications</publisher-name>
<publisher-loc>Göttingen, Germany</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.5194/egusphere-2026-5446</article-id>
<title-group>
<article-title>WarpFlow v1.0: A Single-Source CPU/GPU Shallow-Water Solver for Operational City-Scale Urban Flood Modeling</article-title>
</title-group>
<contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Backhaus</surname>
<given-names>Lars</given-names>
<ext-link>https://orcid.org/0000-0001-6502-7157</ext-link>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Stamm</surname>
<given-names>Jürgen</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
</contrib-group><aff id="aff1">
<label>1</label>
<addr-line>Institute of Hydraulic Engineering and Technical Hydromechanics, Faculty of Civil Engineering, TUD Dresden University  of Technology, Dresden, Germany</addr-line>
</aff>
<pub-date pub-type="epub">
<day>05</day>
<month>11</month>
<year>2026</year>
</pub-date>
<volume>2026</volume>
<fpage>1</fpage>
<lpage>63</lpage>
<permissions>
<copyright-statement>Copyright: &#x000a9; 2026 Lars Backhaus</copyright-statement>
<copyright-year>2026</copyright-year>
<license license-type="open-access">
<license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri"  xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p>
</license>
</permissions>
<self-uri xlink:href="https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5446/">This article is available from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5446/</self-uri>
<self-uri xlink:href="https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5446/egusphere-2026-5446.pdf">The full text article is available as a PDF file from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5446/egusphere-2026-5446.pdf</self-uri>
<abstract>
<p>Operational urban flood management increasingly needs two-dimensional hydrodynamic models that re-run on demand, are driven by data pipelines without hand editing, and run on hardware a municipality already owns. We present WarpFlow, an open-source solver for the two-dimensional shallow-water equations built against these three constraints. WarpFlow solves the full shallow-water equations on a staggered Arakawa C-grid, retaining advective momentum. The scheme combines an Audusse well-balanced hydrostatic reconstruction, a first-order upwind mass flux, and a semi-implicit momentum update with implicit bed friction and advective damping. The velocity update is evaluated in Jacobi form, so it is independent of traversal order. Together with a single-source, three-backend implementation, this yields CPU and GPU results that agree to single-precision round-off. A positivity floor guarantees non-negative depth, and an optional flux-corrected-transport limiter is available where required at wetting fronts. Rainfall, infiltration, drainage sinks, stage and discharge boundaries, and weir/orifice culverts with lumped transport delay are treated as first-class source terms. WarpFlow is a Python package whose kernels compile to multi-core CPU code and to NVIDIA CUDA through Numba and CuPy. The CPU, dense CUDA and memory-sparse tiled CUDA backends share one kernel formulation. Static fields are compressed by lookup-table encoding, and the tiled backend allocates memory only for terrain-bearing tiles, so city-scale domains fit in consumer-GPU memory. Two automatic runtime controls reduce work: active-tile scheduling skips dry terrain tiles, and an adaptive CFL-stride controller amortizes global time-step reductions when the characteristic speed is stable. A hook-based plugin layer and scripting API expose every stage of a run, allowing WarpFlow to operate inside automated modeling pipelines. We verify WarpFlow against analytical dam-break and lake-at-rest solutions, and demonstrate water-budget closure, grid convergence and CPU/GPU reproducibility. We validate it against the Environment Agency 2D benchmark subset and the Malpasset dam break. As an operational showcase, we simulate a 100-year, one-hour Euler-II design storm over the administrative area of Dresden, Germany, across a two-hour window. At 5 m resolution (&amp;asymp; 365 km&amp;sup2; terrain area), the run completes in 51.68 s. At 2 m resolution (&amp;asymp; 1.66 &amp;times; 10⁸ total cells, &amp;asymp; 9.1 &amp;times; 10⁷ terrain cells), it completes in &amp;asymp; 14.4 min on one consumer GPU, compared with &amp;asymp; 15.4 h for the same solver&apos;s 24-thread CPU backend (&amp;asymp; 64.3&amp;times; speedup). WarpFlow is the engine behind the operational Urban Digital Flood Twin Dresden; here we document the solver. The code is released under the AGPLv3 license.</p>
</abstract>
<counts><page-count count="63"/></counts>
</article-meta>
</front>
<body/>
<back>
</back>
</article>