Design Storms in EPA SWMM: SCS Type II and Alternating Block
What does SWMM need to run a design storm?
SWMM needs a rain gage that reads a time series, and a subcatchment that names that gage. SWMM has no storm generator of its own: the [RAINGAGES] section of an .inp file takes rainfall either from a TIMESERIES or from an external FILE, so every design storm reaches SWMM as a list of times and values. The tutorial in the EPA SWMM 5.2 user manual does exactly this, typing the hourly intensities of a 3 inch, 6 hour design storm into a time series called TS1.
Three gage settings decide how SWMM reads those values:
- Rain Format. INTENSITY is an average rate over the recording interval, VOLUME is the depth that fell in the interval, and CUMULATIVE is the depth since the start of the last run of non-zero values.
- Time Interval. The recording interval, for example 0:05. SWMM treats each rainfall value as constant over this interval from its time stamp, so the value at 11:00 on an hourly gage is the rain from 11:00 to 12:00.
- Units. For a time series there is no unit field. The flow units decide: CFS, GPM or MGD mean inches and in/hr, while CMS, LPS or MLD mean millimetres and mm/hr. Changing the flow units later does not convert numbers already typed.
SWMM cannot tell which of these you meant, so a wrong setting still runs and routes a different storm.
Which design storm method should you use?
Use the method your review agency or design manual names, then the one that suits the catchment. The common choices:
- NRCS (SCS) 24 hour distributions in the US: Types I, IA, II and III, scaled by a 24 hour depth. NRCS's own National Engineering Handbook, Part 630, Chapter 4 (2019), concludes that Type II and the other legacy distributions should be discontinued in areas covered by NOAA Atlas 14, and NRCS has published Atlas 14 based distributions for many states.
- An alternating block storm from an IDF curve, the textbook method in Chow, Maidment and Mays, Applied Hydrology (1988). It suits short urban storms where you already have intensity, duration and frequency data, such as NOAA Atlas 14 estimates, which the Precipitation Frequency Data Server gives as depths or intensities in English or metric units.
- UK practice takes design depths from the FEH22 depth duration frequency model through the FEH Web Service and builds the storm profile with ReFH2, which uses summer and winter profiles.
- Australian Rainfall and Runoff (2016, updated 2019) uses an ensemble of ten temporal patterns per duration in place of a single pattern, downloaded from the ARR Data Hub, so one design event means ten SWMM runs rather than one.
Whichever you use, run more than one duration. The storm that gives the highest water level at an upstream inlet is often not the one that loads the outfall pipe hardest.
How do you enter an SCS Type II storm in SWMM?
Multiply the Type II cumulative fractions by your 24 hour depth, take the difference between successive rows, and enter those depths as a VOLUME series with a gage interval equal to the table step. The hourly fractions below are the Type II column published in NEH Part 630, Chapter 4, Figure 4-36.
| Hour | Fraction | Hour | Fraction | Hour | Fraction |
|---|---|---|---|---|---|
| 0 | 0.000 | 9 | 0.147 | 18 | 0.921 |
| 1 | 0.011 | 10 | 0.181 | 19 | 0.938 |
| 2 | 0.022 | 11 | 0.235 | 20 | 0.952 |
| 3 | 0.035 | 12 | 0.663 | 21 | 0.965 |
| 4 | 0.048 | 13 | 0.772 | 22 | 0.977 |
| 5 | 0.063 | 14 | 0.820 | 23 | 0.989 |
| 6 | 0.080 | 15 | 0.854 | 24 | 1.000 |
| 7 | 0.099 | 16 | 0.880 | ||
| 8 | 0.120 | 17 | 0.902 |
For an illustrative 24 hour depth of 4.0 inches in a CFS project, the row at 11:00 holds 4.0 x (0.663 minus 0.235) = 1.71 inches, the rain from 11:00 to 12:00. Set the gage to VOLUME with a 1:00 interval, enter one depth per hour stamped at the start of its hour, and add a zero at 24:00.
An hourly table is too coarse for most urban networks. It puts 42.8 percent of the day's rain into the 11:00 to 12:00 hour and spreads it evenly across that hour, while the Type II distribution itself nests 11.4 percent of the 24 hour depth into its most intense 5 minutes. Use a finer tabulation for pipe design. NEH Chapter 4 notes that WinTR-20 can write the NRCS distribution tables to a file for a spreadsheet, and HydroCAD offers tabular versions too (see SWMM vs HydroCAD for when each tool fits).
How does the alternating block method build a hyetograph?
It turns an IDF curve into blocks of rain and stacks the largest in the middle. For each multiple of the time step up to the storm duration, the IDF intensity times the duration gives a total depth. The depth each step adds is one block. The largest block goes at the centre, and the rest alternate to its right and left, so every window centred on the peak holds the IDF depth for its own duration. The total depth equals the IDF depth for the full duration.
A worked case from the DrainPilot docs: a Bernard curve I = K Tx / (t + b)n with K 1500, x 0.2, b 15 and n 0.85 (I in mm/hr, t in minutes), a 5 year return period, a 120 minute duration and a 5 minute step gives 134.2 mm/hr at 10 minutes, 64.0 mm in total, and a peak block of 162.2 mm/hr. These coefficients are for illustration only. A real storm needs your local curve.
How do you build the design storm in DrainPilot?
DrainPilot builds the alternating block storm for you and writes it into the model. DrainPilot runs EPA SWMM 5.2.4 compiled to WebAssembly in the browser, reads and writes standard .inp files, and keeps the files on your computer.
- Open a project that uses SI flow units (CMS, LPS or MLD). The design storm window works in millimetres and mm/hr, and SWMM would read the same numbers as in/hr in a CFS project. The bundled EPA samples include Example 1 in SI units.
- Choose Design > Design Storm / IDF.... It opens on the Design storm tab.
- Pick an IDF form: Talbot, Sherman, Bernard, or a table of duration in minutes against intensity in mm/hr, read between rows on log scales. For a US site, the table form takes NOAA Atlas 14 intensities downloaded in metric units.
- Pick the return period. The list offers 2, 5, 50 and 100 years. With the Talbot, Sherman or table forms the coefficients you type carry the return period, and the list sets only the label on the series.
- Set the duration and step (120 and 5 minutes to start), and read the Total depth and Peak chips and the bar chart.
- Press Insert into model, or Copy SWMM text to paste the [RAINGAGES] and [TIMESERIES] lines yourself.
Insert into model adds a gage called RG_DESIGN (INTENSITY, interval equal to the step) and a series named after the storm, such as DS_T5_D120, replacing any of the same name. It assigns RG_DESIGN to every subcatchment, ends the series with a zero, and counts as one undo step. Before you run, set the end of the analysis well past the storm so the network can drain, and keep the Wet Weather step no longer than the storm step. Both are in Simulation Options, described on the running a simulation page.
To compare durations, insert each storm and save the project as a scenario under Tools > Scenarios..., then compare two runs. A scenario name does not change the rainfall: insert the storm first, then save.
What does DrainPilot not do for design storms?
- It does not generate NRCS distributions, FEH or ReFH2 profiles, or ARR ensembles. Type those into the Time Series Editor (Tools > Time Series Editor (new)) as described above.
- It ships no city IDF curve. The window opens with a placeholder Talbot curve (a = 5000, b = 20) only so it shows something.
- It does not convert the generated storm to inches for a US-unit project.
If you are still choosing a modelling package, stormwater modeling software compared and PCSWMM vs EPA SWMM cover the field.
DrainPilot is free to use at geopilotai.com/drainpilot. The rainfall and design storms docs page shows every field in the gage, time series and design storm windows.
Jagadeesh Gaddam
CEO, Smart Bhujal
Try this in GeoPilot
Run the analysis described in this article with one prompt. No setup required.
Open GeoPilot




