SWMMCanada assembles every layer of an urban drainage model from Canadian open data — and ships it in formats that EPA SWMM, DHI MIKE+, and InfoWorks ICM can open directly.
Why this project exists
Building an urban drainage model normally starts with days of data hunting: rainfall from one portal, terrain from another, land cover, soil, design-storm intensities, and — if you're lucky — the city's pipe network in yet another format. Then everything has to be clipped, reprojected, parameterized, and assembled by hand before the first simulation can run.
SWMMCanada collapses all of that into one step. You draw a boundary; it pulls the open data for that spot and assembles a complete, validated model.inp.
The goal is a complete, runnable first-pass model in minutes — grounded in real data, honest about its approximations, and ready for calibration downstream.
Two modes, picked automatically
SWMMCanada chooses from where you draw
01
Real network — 8 cities
In Victoria, Ottawa, Calgary, Surrey, London, Kitchener–Waterloo, Kelowna, and Regina, the model uses the city's published storm pipes: real inverts, diameters, manholes, and outfalls. Where parcels are published (like Victoria), subcatchments follow real lot lines.
02
Synthesize — anywhere else
Everywhere else in Canada, a realistic network is built from the street map and open data: DEM-delineated subcatchments where the terrain earns it (with a Voronoi fallback), and pipes sized by the rational method with real ECCC IDF intensities.
03
Sanitary systems too
Where a city publishes its sanitary sewer, the model carries it as a second tagged system in the same .inp — the foundation for dual-drainage and separated-sewer studies. All 8 cities ship sanitary systems as of v0.2.0.
Coverage
Eight real municipal storm networks
What you get
Every build ships one result package
01
model.inp
Runs in EPA SWMM 5.2, with snowmelt whenever temperature data exists, plus a manifest.json recording exactly what went in.
02
Shareable datastore
A model-ready datastore — GeoPackage network, netCDF/CF forcing, and JSON provenance — that every export target reads from.
03
MIKE+ import package
A DHI MIKE+ Collection System package: nodes / links / catchments shapefiles, rainfall CSV, and a field-mapping sheet with every approximation documented inside.
04
InfoWorks ICM package
An Open Data Import Centre package with CSVs named for ODIC Auto-Map, subcatchment shapefiles, and an InfoWorks-format rainfall event — the SWMM curve number transfers losslessly.
05
validation.json
The model's health report: structural checks, the delineation method used, and its confidence.
06
Map preview layers
Preview layers for the web UI, so you can inspect the network, outfalls, and subcatchments before downloading anything.
Fidelity
Subcatchments that follow real lot lines
Honest by design
SWMMCanada gets you a complete, runnable model fast — but the parameters (rainfall losses, roughness, curve numbers) are first-pass estimates. Models are not calibrated, and the project says so everywhere it matters: the assumptions document walks through what's real, derived, or approximated, layer by layer, and every export package documents its approximations inside.
Calibrate against observations before using any results for design or decisions — which is exactly what Agentic SWMM automates downstream.