v3 dark build. A fast browser front door onto detailed engines: explore a drainage
decision in seconds, then hand it off two ways — a runnable SWMM5 .inp, or a Ruby
script into InfoWorks ICM via ICM-Agent.
| Scenario | 2-yr | 10-yr | 100-yr | Conduit |
|---|
The .inp is a real, runnable SWMM5 input file
built from the current sketch (subcatchments → junction → conduit → outfall, with the design
storm as a rain gage time series). The ICM path pairs with the companion
sketch-tier-to-icm.rb Exchange script, which reads this app's CSV export.
This is the "explore fast, rough, and early" half of the pattern Forma plays for Revit. The Rational Method here ignores time of concentration, storage routing, and tailwater — which is precisely why it runs instantly and precisely why it can't replace a calibrated model. The two handoff paths make that explicit: the same sketch exports to open-source SWMM5 (a real .inp) and to commercial InfoWorks ICM (via the companion Ruby Exchange script).
The runoff coefficient (C = 0.05 + 0.90 × %impervious), the preset storm intensities, and the detention volume (ΔQ × duration, a rectangular planning approximation) are planning-level numbers, not design values. The Manning's capacity, partial-flow depth, and velocity checks reuse the same verified circular-pipe geometry SWMM5 and ICM use internally; velocity flags follow the usual 2 ft/s self-cleansing and 10 ft/s scour rules of thumb.
What's real here and what isn't: the hydraulics and hydrology math is real and
verified. The "Import from Forma" button cycles through three hard-coded sites — no Forma account,
no live API. The "Promote to ICM-Agent" panel shows real InfoWorks ICM Ruby patterns but executes
nothing from the browser — ICM Exchange is a local process a static HTML file can't reach; the
companion sketch-tier-to-icm.rb is the runnable half of that path. The SWMM5 .inp
export is genuinely runnable: during this build, the default export was executed through the real
SWMM5 engine (via pyswmm) to confirm it runs cleanly.