November 2026

AI, SWMM5, swmm6

Comparing SWMM Models with AI

How to use AI to run, check and compare engines without fooling yourself.

Over the past year I have built hundreds of apps with AI. The lesson that matters: AI makes comparisons cheap, so the checks have to be strict.

My rules for any comparison: the same input file, .out … Read the rest

ICM, swmm6

ICM InfoWorks and #SWMM6

Where OpenSWMM 6 meets ICM, and where they part ways.

This is the newest of the six topics, and it grows through December 2026. It starts with the Control Section Lab: one reference solver, EPA SWMM 5.2.4 and OpenSWMM 6 compiled to WebAssembly, and the documented ICM 1D rules, which … Read the rest

ICM, SWMM5

SWMM5 and ICM InfoWorks

The same network in two engines, with the Ruby scripts and apps that compare them.

I spent 18 years as Product Sector Leader for InfoSWMM and InfoSewer at Innovyze, and I have written more than 440 Ruby scripts for InfoWorks ICM. This page shows how SWMM5 and ICM differ on … Read the rest

swmm6

Inside #SWMM6

OpenSWMM 6 from the source code up: new solvers, 2D, plugins and the GUI.

OpenSWMM 6 is the open successor to EPA SWMM5, built by Caleb Buahin and the OpenSWMM team at HydroCouple. I don’t write the engine. I build apps that open it up, run it next to SWMM5 … Read the rest

SWMM5

Inside #SWMM5

How EPA SWMM 5.2.4 computes runoff, routing and everything between, one app at a time.

Each app here opens one part of EPA SWMM 5.2.4: the source file, the equation and the numbers it produces. Many of them run the real engine, compiled to WebAssembly, in your browser.

The oldest … Read the rest

SWMM5, swmm6

BobSWMM Lifetime Topics on #SWMM

More than fifty years of SWMM, organized six ways. Pick the question you have. Each topic page gives you posts to read, apps to try, an example to work through and the code behind it.

The order runs from where SWMM came from, through the inside of SWMM5, to ICM, … Read the rest

Translate »
Scroll to Top