Showing posts from 2017

How the Pump Target setting in #SWMM5 works with Initial Conditions

How does the Pump Target setting in #SWMM5 work?  Your pump options, include the initial conditions, the pump on and off depths, the pump type, the pump curve and optional real time rules or RTC Rules. Red is the situation if you start with the Pump with the Wet Well depth greater than the Pump Off Depth. The Pump Setting is greater than zero and the depth is greater than the Pump Off Depth – the pump never turns off.   You need start the pump in the off condition.Purple and Green is the situation when you start the model with the Pump Off.  The Pump then turns on based on the Pump On depth and off based on the Wet Well depth and the Pump off depth.

How is the variable time step option used in #SWMM5

How is the variable time step option used in #SWMM5? - Normally when using the variable time step in SWMM5 (Figure 2), the node time step is equal to the maximum user defined time step, the link time step changes based on a combination of the shortest link, Cr value and Velocity (Figure 1). Figure 1 How is the variable time step option used in #SWMM5
Figure 2 Dynamic Wave Options in SWMM 5 include Variable Time Steps

Overview of Center for Infrastructure Modeling and Management NCIMM for #SWMM6

The Center for Infrastructure Modeling and Management has been envisaged as an entity that will preserve, promote and extend the US EPA SWMM and EPANETsoftware applications, and potentially other applications.  SWMM and EPANET are two foremost tools for assessment of watershed hydrology and pipe network hydraulics, respectively, and are perhaps unparalleled examples of technical community accomplishments conducted as a partnership of stakeholders from all avenues of professional practice.  Build over decades with participation from regulatory, academic, consulting,  owner/operator, vendors, and institutional support under the continuing leadership of the US EPA, these tools are used around the world as 'first choice' software applications in many, many situations.  They will remain as first choice tools for years to come.  A key question, therefore, is how to ensure these hallmarks of professional practice can be maintained, promoted, and developed going forward.  The expectat…

InfoSWMM and EPA SWMM 5 Version Comparison and How InfoSWMM works as an Extension in Arc GIS

InfoSWMM and EPA SWMM 5 Version Comparison and How InfoSWMM works as an Extension in Arc GIS
See below for the important list of InfoSWMM versions and EPA SWMM 5 engines.  Figure 1 shows how the SWMM5 data is shown in both the Database of InfoSWMM and the Map of Arc GIS.  You see the data on the map and you can edit the data in the Attribute Browser (AB) and DB Editor.
     InfoSWMM Version 14.5 Update 10 for Arc Map 10.5 and Windows 7/8/8.1/10 pro or above - EPA SWMM 5.1.012  10/7/2017      InfoSWMM Version 14.5 Update 9 for Arc Map 10.5 and Windows 7/8/8.1/10 pro or above - EPA SWMM 5.1.012  5/15/2017      InfoSWMM Version 14.5 Update 8 for Arc Map 10.5 and Windows 7/8/8.1/10 pro or above - EPA SWMM 5.1.012  4/17/2017      InfoSWMM Version 14.5 Update 7 for Arc Map 10.5 and Windows 7/8/8.1/10 pro or above - EPA SWMM 5.1.011  3/29/2017      InfoSWMM Version 14.5 Update 6 for Arc Map 10.5 and Windows 7/8/8.1/10 pro or above - EPA SWMM 5.1.011  3/9/2017      InfoSWMM Version 14.5 Update 5 …

A visual view of the CDM SWMM5 GUI Circa 2007

This is from a working QA/QC version of SWMM 5.022 showing some feedback from the Simulation Run to the User’s Run Status dialog: You can see the total inflow, outflow, storage and flooding in a graph and text box in the Run Status dialogYou can see a running estimate of the Continuity Error (CE) andIt stays on the screen when the run as finished.The following images show some examples. 

Use the System Graphs in #SWMM5 to show the delay between Inflow and Outflow


Editing and Graphing Gauged Data in XPSWMM

Note:  Editing and Graphing Gauged Data in XPSWMM for Runoff Nodes, Hydraulic Nodes and Links.  Here is a sample of the data.
Pipe02   140.00200801011207     1.915 Pipe02   140.00200801011208     1.308 Pipe02   140.00200801011209     1.015 Pipe02   140.00200801011210     0.840 Pipe02   140.00200801011211     0.721 Pipe02   140.00200801011212     0.638

How to save SWMM5 output to InfoSWMM, InfoSWMM SA and XP-SWMM Calibration Files

How to save SWMM5 output to InfoSWMM, InfoSWMM SA and XP-SWMM Calibration Files
In a world that increasingly asks us to move faster, and do more to be effective we need better ways to do our analysis.  One of the hardest tasks we have is to quantify the difference between our simuluation engines.  All of our Sewer and Storm software are hyper complex with interconnected options for all elements in the network.  One way to help with these comparisons are graphs using the calibration files of SWMM5, InfoSWMM, InfoSWMM SA and XP-SWMM.  The remainder of this blog describes the steps in using a QA/QC version of SWMM 5.1.012 to make these calibration files.
Step 1.   Create the Calibration Files in SWMM5 Step 2.  Export to SWMM 5 from InfoSWMM You can export to SWMM5 using the Exchange/Export in InfoSWMM or the Data/Export EPA SWMM5 in InfoSWMM SA
Step 3.   Export to SWMM4 from XP-SWMM
Step 4.  What are the name of the Calibration Files? There are nine calibration files made for InfoSW…

#RTFM and WTFM How to write a fine modeling manual worth reading (ideas)

Note:  The following is copied in part from this blog

It is a wish list for me at least..
Types of docs Once you've determined the scope, and who you're writing to, there are several different kinds of documents that you can write for them. Anne Gentle categorizes them like this: Start here Like the Getting Started document I mentioned previously, this is the place where you tell users what they need to know before they even get started. Reference guide The reference guide is comprehensive and usually pretty dry. This is where terms are defined, functions' input and output are explained, and examples are given. The tone is factual and to the point. There's not much discussion, or conversation. The voice is usually impersonal. Tutorials Tutorials hold your hand and lead you down the path. They show you each step, and occasionally sit down on a bench by the path to explain the rationale for a particular step. They a…

Steps for Running RDII Analyst in H2OMap SWMM

Steps for Running RDII Analyst in H2OMap SWMM
Step 1.  Create the RTK UH in the H2OMap SWMM Attribute Browser (AB) Step 2. Assign the RTK UH to a node (you need one node at least to Run RDII Analyst). Step 3.  Open up RDII Analyst and Set up the Node for the Analysis Step 4.  Select a Node Step 5.  Define the Flow Data Step 6.  Define the Rainfall Data Step 7.  Calculate the DWF and GW flow Step 8.  Calculate the Wet Weather flow – Flow minus Dry Weather Flow Step 9.  Set up the RDII GA Run Step 10.  The RDII Calibration Result Step 11.  Export RTK parameters back to H2Omap SWMM

Runoff Surface Suggestions for Future #SWMM5 's and #SWMM6

Runoff Surface Suggestions for Future #SWMM5 's and #SWMM6

As almost everyone knows about SWMM runoff surfaces there are three (non snowmelt) related surfaces in SWMM 1 to SWMM 5:

1. Impervious with depression storage, evaporation and no infiltration
2. Pervious with depression storage, evaporation, infiltration, with infiltration connecting to groundwater,
3. Impervious without depression storage, no infiltration, evaporation.  This was used to simulate fast runoff from gutters and roofs in the original SWMM 1.

SWMM4 and SWMM5 added pervious to impervious routing, impervious to pervious and Subcatchment to Subcatchment routing.  SWMM5 has further enhanced this feature by adding Low Impact Development (LID) for both pervious and impervious surfaces.

Newer versions of SWMM should expand the number of runoff surfaces from 3 to 10 and make each Surface have a flag for depression storage, flag for evaporation, flag for infiltration, a flag for groundwater, a flag for RDII, a flag fo…

#SWMM 5 LID 185 message

Here are the soil layer rules for LID’s in SWMM5....  If any of these are wrong you will get an Error 185 message
Soil Porosity > Field Capacity > Wilting Point
    //... check soil layer parameters     if ( LidProcs[j].soil.thickness >= 0.0; 0.0 )     {         if ( LidProcs[j].soil.porosity      <= 0.0          ||   LidProcs[j].soil.fieldCap      >= LidProcs[j].soil.porosity         ||   LidProcs[j].soil.wiltPoint    >= LidProcs[j].soil.fieldCap         ||   LidProcs[j].soil.kSat            <= 0.0         ||   LidProcs[j].soil.kSlope       <= 0.0 )

EPA is happy to announce the publication of Volume II of the #SWMM Reference Manual (Hydraulics)

Hello Everyone (from the @CHI SWMM List Server),

EPA is happy to announce the publication of Volume II of the SWMM Reference Manual (Hydraulics).  It can be viewed and downloaded from the EPA SWMM web page:

This completes the full set of reference manuals for SWMM 5 that also includes Volume I (Hydrology) and Volume III (Water Quality and LID).  We hope that these manuals allow SWMM users to gain a better understanding of the computational methods and techniques used by the program.

These volumes were completed by Dr. Lewis A. Rossman, EPA Emeritus.  In his extraordinary career, he has written three remarkable EPA public domain programs:  SWMM, the National Stormwater Calculator ( which is based on SWMM),  and EPANET (   Since 2010, SWMM and EPANET have been downloaded at least 215,000 and 370,000 times a…

Suggestions for LIDs, SuDs, WSuDs in #SWMM5 #SWMM

There should be a way to specify pollutant removal for each LID. Here are other suggestions for LIDs, SuDs, WSuDs in SWMM5: 1.  Removal equations for BMP's as in EPA / Tetra Tech Sustain, 2.  An extra field to indicate whether a LID was in the impervious area or pervious area.  As i have documented for years in my twitter feed, LID's can be anywhere and of any size.  This extra field would be a way to better automate the calculation of NON LID area in the SWMM5 engine, 3.  The percent capture of impervious area should be both the way it is now and by LID unit.  For example, 0.1 percent of the impervious area goes to one rain garden.  This would help optimizers such as Innovyze Sustain.4.  SWMM 5 should have more than 3 to 4 runoff surfaces.  The 4th is for snowmelt.  This will help to have different soil characteristics per runoff pervious area. It would really help to have more than two types of impervious surface and one pervious runoff surface. 5. It would also be good to h…

This is how node interface files works in #SWMM5, Caveats and Tips

The routine readNewIfaceValues reads a line interface flows in SWMM5.  It is a string parser, finds tokens and creates dates, times and flows from the tokens.  It is important to have the correct format for your line else the tokens will not be correctly converted to integers and doubles. Further, it is important to have more than one date/time for each node as the SWMM5 engine interpolates the flow values for each node during the simulation.  One time value or time values out of the simulation date/times will result in no flows.
void readNewIfaceValues() // //  Input:   none //  Output:  none //  Purpose: reads data from inflows interface file for next date. // { int    i, j; char*  s; int    yr = 0, mon = 0, day = 0,                 hr = 0, min = 0, sec = 0;   // year, month, day, hour, minute, second char   line[MAXLINE+1];            // line from interface file
// --- read a line for each interface node     NewIfaceDate = NO_DATE; for (i=0; i<NumIfaceNodes; i++)     { if ( feof(Finf…

A Visual Studio Compiler for #SWMM5 Note

A Visual Studio Compiler for #SWMM5 note.  If you have many many copies of the SWMM5 code on your PC you can rename the Visual Studio project files from the default SWMM5 names to a more meaningful version name (Figure 2) and using the DLL Properties/General/Output file change the SWMM5.DLL creation directory (Figure 1). 

#SWMM5 - Delphi Pascal unit that imports a SWMM project's data from a formatted text file

unit Uimport;

{                    Unit:    Uimport.pas                           }
{                    Project: EPA SWMM                              }
{                    Version: 5.1                                   }
{                    Date:    12/02/13    (5.1.001)                 }
{                             04/04/14    (5.1.003)                 }
{                             04/14/14    (5.1.004)                 }
{                             09/15/14    (5.1.007)                 }
{                             03/19/15    (5.1.008)                 }
{                             08/05/15    (5.1.010)                 }
{                             08/01/16    (5.1.011)                 }
{                    Author:  L. Rossman                            }
{                                                                   }
{   Delphi Pascal unit that imports a SWMM project's data from a    }