FAQ
What is EPA SWMM?
EPA SWMM is the Storm Water Management Model used to simulate hydrology, hydraulics, water quality, and drainage network behavior.
Is swmmx a replacement for SWMM?
No. swmmx is a Python toolkit around EPA SWMM models and engines.
Does swmmx include the SWMM engine?
It bundles Windows 64-bit and Linux 64-bit native engines and supports custom engine paths.
Does macOS have a bundled engine?
Yes. The package now includes a native macOS engine alongside the Windows and Linux engines. Use custom_dll_path only when you want to run a custom SWMM engine build.
Why are GIS dependencies optional?
GeoPandas and Shapely are substantial dependencies. swmmx loads them only when GIS import/export is used.
Why use m.import_csv instead of m.import?
import is a Python keyword, so it cannot be used as an attribute-style API name.
Can I create a model from scratch?
Yes. Use swmm(new="SI") or swmm(new="US"), then add objects with m.add.*.
Can I edit an existing .inp file without losing comments?
swmmx preserves comments, unknown sections, and section order where possible.
Can I run simulations step by step?
Yes. Use m.runs() to iterate over simulation steps.
Can I use results in plots?
Yes, after m.run() or a completed m.runs(). Result-driven plots require non-stale results.
Can I import GIS data?
Yes, with optional geopandas and shapely installed.
Can exported CSV files be imported again?
Yes. Exported CSV tables are designed to round-trip where supported.
Is swmmx suitable for engineering design?
It can support engineering workflows, but domain knowledge, validation, and independent checks are required.
What does beta/development notice mean?
The project is actively tested and maintained, but bugs may remain. Use current releases and verify critical outputs.