How does SWMM model low impact development?
SWMM treats an LID control as a property of a subcatchment: you design the control once, per unit area, as a stack of vertical layers, then place units of it in any number of subcatchments. During a run SWMM keeps a moisture balance of the water moving between and stored in each layer (SWMM 5.2 User's Manual, section 3.4.8). Because the design is per unit area, forty identical rain barrels behave as one larger unit (Reference Manual Volume III, section 6.3).
In an .inp file this takes two sections. [LID_CONTROLS] holds the designs, one line naming the type and one line per layer. [LID_USAGE] holds the placements, one line per control in each subcatchment.
Which LID types can SWMM model?
SWMM 5.2 models eight generic LID types, each with a two letter code:
- Bio-retention cell (BC): a vegetated depression with engineered soil over a gravel bed.
- Rain garden (RG): a bio-retention cell with the soil layer only, no gravel bed.
- Green roof (GR): soil over a drainage mat that carries drained water off the roof.
- Infiltration trench (IT): a narrow gravel-filled ditch that intercepts runoff from upslope impervious areas.
- Permeable pavement (PP): porous concrete or asphalt, or paver blocks on a sand bed, over gravel storage.
- Rain barrel (RB): a barrel or cistern that collects roof runoff and releases it later.
- Rooftop disconnection (RD): downspouts that discharge to lawns instead of storm drains.
- Vegetative swale (VS): a grassed channel with sloping sides that slows runoff so it can infiltrate.
What layers make up each LID control?
Each type uses a fixed set drawn from six layers. The table follows the [LID_CONTROLS] remarks in Appendix D of the User's Manual (x required, o optional).
| Type | Surface | Pavement | Soil | Storage | Drain | Drainage mat |
|---|---|---|---|---|---|---|
| Bio-retention cell | x | x | x | o | ||
| Rain garden | x | x | ||||
| Green roof | x | x | x | |||
| Infiltration trench | x | x | o | |||
| Permeable pavement | x | x | o | x | o | |
| Rain barrel | x | x | ||||
| Rooftop disconnection | x | x | ||||
| Vegetative swale | x |
Table 3-3 in chapter 3 of the same manual marks the bio-retention cell's storage layer as optional, so the two tables disagree on that one entry.
- Surface: berm height (for rooftop disconnection the roof's depression storage, for a swale the height of its section), vegetation fraction, Manning's n, slope and swale side slope. If roughness or slope is 0, water ponded above the berm overflows within one time step.
- Pavement: thickness, void ratio, impervious fraction (0 for continuous porous pavement), permeability, clogging factor, and an optional regeneration interval and fraction.
- Soil: thickness, porosity, field capacity, wilting point, saturated conductivity, conductivity slope and suction head. The manual gives 450 to 900 mm as typical for land-based bio-retention and 75 to 150 mm for green roofs.
- Storage: gravel thickness or barrel height, void ratio, seepage rate into native soil (0 under an impermeable liner), clogging factor, and whether a rain barrel is covered.
- Drain: coefficient C, exponent n, offset and a rain barrel delay, plus optional open and close levels and a control curve. Flow per unit area is q = C(h − Hd)n; n = 0.5 acts as an orifice and C = 0 means no drain. For rooftop disconnection, C is the gutter capacity in in/hr or mm/hr.
- Drainage mat: thickness, void fraction and Manning's n.
The units of C depend on both the unit system and n, so a coefficient copied from a US-units model is wrong in an SI model until converted.
How are LID units placed in a subcatchment?
Each [LID_USAGE] line places identical units of one control in one subcatchment: Subcat, LID, Number, Area, Width, InitSat, FromImp, ToPerv, then the optional RptFile, DrainTo and FromPerv.
- Number and Area: how many units, and the area of each.
- Width: the outflow face of units that shed water by overland flow, such as roofs, pavement, trenches and swales. Use 0 for bio-retention cells, rain gardens and rain barrels, which spill over a berm.
- InitSat: the percent to which the unit starts full.
- FromImp and FromPerv: the percent of the impervious and pervious non-LID area whose runoff the unit treats. Use 0 for green roofs and rooftop disconnection, which treat only the rain on them.
- ToPerv: 1 returns the outflow to the pervious area, a common choice for rain barrels and rooftop disconnection.
- DrainTo: a node or subcatchment for drain flow, if not the subcatchment's outlet.
The units in a subcatchment may not cover more than its area, and the impervious area treated may not total more than 100 %.
The manual describes two placements. Controls placed inside an existing subcatchment replace an equal amount of non-LID area and act in parallel: one cannot feed another. A control given a subcatchment of its own receives runoff from upstream subcatchments, which lets you chain controls in series, and its properties override the subcatchment's surface properties.
Should you change %Imperv and Width after adding LID?
Usually yes, because the LID area comes out of the original subcatchment. In the User's Manual example, a subcatchment is 40 % impervious and 75 % of that impervious area becomes permeable pavement. The remaining non-LID area is (1 − 0.75) × 40 / (100 − 0.75 × 40) = 14.3 % impervious. Width may need adjusting too, and Area as well when a control's own subcatchment is carved out of an existing one.
How do you read the LID Performance Summary?
The LID Performance Summary in SWMM's status report gives a water balance for every LID control in every subcatchment, as a depth in inches or millimetres over the LID's own area. In the SWMM 5.2.4 source (lid.c) its columns are Total Inflow, Evap Loss, Infil Loss, Surface Outflow, Drain Outflow, Initial Storage, Final Storage and Continuity Error in percent.
- Total Inflow is rain on the unit plus runoff routed onto it, over the unit's area. A unit treating an impervious area many times its size shows an inflow many times the storm depth; Reference Manual Volume III calls that area ratio the capture ratio.
- Surface Outflow against Total Inflow shows how much water passed over the unit rather than through it.
- Infil Loss is seepage from the storage layer into native soil. A lined cell, trench or pavement is modelled with a seepage rate of 0, so it should read 0.
- Continuity Error is initial storage plus inflow, minus final storage and the four losses, as a percent of initial storage plus inflow.
The LIDs' effect is also folded into each subcatchment's runoff, infiltration and evaporation in the Subcatchment Runoff Summary. For one unit's time series, name an RptFile on its [LID_USAGE] line and SWMM writes a tab delimited text file.
How does DrainPilot handle LID controls?
DrainPilot writes both sections from one window, Tools > LID Controls..., for all eight types. Pick the native soil first: it sets the seepage rate of new controls from the soil's conductivity. Add a control and fill in its layers. Each value shows its unit and where its default came from, and a value with no default, such as a bio-retention cell's berm height, is outlined in amber until you enter it. Under Placement (LID_USAGE) you add a row per subcatchment. The window shows the SWMM text and any problems, and Apply as SWMM text proposal merges it into the project as one edit that Undo reverses. Values are typed in SI and converted for US-unit projects.
The engine is SWMM 5.2.4, so after a run the LID Performance Summary appears in Report > Status, which shows SWMM's report text as SWMM writes it. To compare with and without LID, save each as a scenario, as described on the calibration and scenarios page.
What does DrainPilot not do for LID?
- It does not write pollutant removals, drain open and close levels, a drain control curve or an RptFile.
- It does not offer the optional sand layer under permeable pavement.
- It refuses units that cover the whole subcatchment, so a control filling its own subcatchment has to be typed into the .inp.
- It does not adjust %Imperv or Width after placement.
- It designs new controls and flags a name already in the project, so it does not edit existing ones.
DrainPilot is EPA SWMM 5.2.4 in the browser, at geopilotai.com/drainpilot. The catchments and LID docs page walks through the LID Controls window field by field.
Jagadeesh Gaddam
CEO, Smart Bhujal
Try this in GeoPilot
Run the analysis described in this article with one prompt. No setup required.
Open GeoPilot