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 the same network, and the scripts and apps that move models between them.
Start here
- Getting Started with Ruby Scripting for InfoWorks. Where to begin with ICM Ruby.
- Using ICM Ruby Scripts to Import 2K SWMM5 Files to ICM. Bulk-importing SWMM5 models into ICM.
- Conversion of InfoSWMM Models to ICM SWMM and ICM InfoWorks Networks. One model, two ICM network types.
- 20K Words on ICM InfoWorks Ruby Scripting. The long version, with diagrams.
Try a tool
- ICMT Explorer for SWMM. Open an ICM transportable (.icmt) file in the browser.
- SWMM5 and ICM Comparison Test Files. Test models for comparing SWMM5 with ICM.
- ICM SQL Cookbook. ICM SQL by example, mapped from 48 Innovyze scripts.
More apps on this topic
- ICM Ruby Picker. Find an ICM Ruby script by task.
- ICM SWMM Network Inference. Infer an ICM SWMM network’s structure with Ruby and an export bridge.
- Samer Knows ICM InfoWorks. Samer’s ICM InfoWorks LinkedIn series, collected and searchable.
- Sketch Tier: SWMM vs ICM. Sketch a network, run it in SWMM5, and carry it toward ICM.
- ICM Sensitivity Calculator. Parameter sensitivity for ICM models.
- SWMM5 and ICM Egg Field. Node states from SWMM5 and ICM drawn as an interference field.
Work through an example
- Converting ICM InfoWorks PRN Files to CFS Units for SWMM5 Comparisons. Getting ICM results into the same units as SWMM5.
- Exporting Up to 99 HW Conduit Parameters to CSV with Ruby. A complete Ruby export, step by step.
- InfoSewer to ICM InfoWorks: Network Import Process App. The import, one step at a time.
Code and automation
- dickinsonre/InfoWorks-ICM-Ruby-Scripting-. My ICM Ruby scripts.
- dickinsonre/InfoSewer-to-ICM. Ruby tool for converting InfoSewer networks to ICM and SWMM.
- dickinsonre/SWMM-ICM-StVenant. Animated diagrams of how SWMM5 and ICM solve the St. Venant equations.
- SWMMEnablement/RubySwmmImport. Ruby import of SWMM5 files.
- SWMMEnablement/SwmmIcmConverter. SWMM and ICM conversion.
Recently added
- InfoSewer to ICM InfoWorks: Network Import Process App. July 2026.
- Pre 2026 InfoSewer to ICM InfoWorks Conversion Guide. January 2026.
Explore the archive
- Ruby posts. Everything tagged Ruby.
- ICM posts. Everything tagged ICM.
- ICM SWMM posts. Everything tagged ICM SWMM.
- My LinkedIn articles on ICM SWMM, SWMM5, Ruby and ICM InfoWorks. The index.
- File Formats (older topic page). Readers, converters and model-transfer checks.
- Engine Comparisons (older topic page). Earlier engine comparisons.
Explore the six topics
- SWMM History: SWMM1 to SWMM6
- Inside SWMM5
- SWMM5 and ICM InfoWorks (this page)
- ICM InfoWorks and SWMM6
- Inside SWMM6
- Comparing Models with AI
View all topics · Subscribe to the newsletter
Use of AI: Claude (Anthropic) drafted this page in November 2026. It picked the entries from my swmm5.org posts, Netlify apps and GitHub repositories and wrote the one-line descriptions. I chose the six topics and the layout.