G S I Documentation V 0 35
G S I Documentation V 0 35
Jannik Schilling
email: [email protected]
If you use the plugin in scientific work or other studies, please cite as: Schilling, J.; Tränckner, J. Gener-
ate_SWMM_inp: An Open-Source QGIS Plugin to Import and Export Model Input Files for SWMM. Water
2022, 14, 2262. https://doi.org/10.3390/w14142262
First versions of this plugin have been developed within the project PROSPER-RO, funded by BMBF, grant
number 033L212.
2
Contents
1 Introduction 4
1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Hints for this documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Latest changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 The tools 6
2.1 1_GenerateDefaultData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 2_GenerateSwmmInpFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 3_ImportInpFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 4_SelectSubModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Feature forms 9
3
1 Introduction
SWMM is an open-source model and software by the US EPA for the simulation of rainfall-runoff and routing
in water bodies, sewer systems and wastewater infrastructures. An intruduction to the model itself and details
about attributes used in SWMM can be found in the official manual [4].
For a new SWMM model, objects such as nodes, links and catchments can either be drawn via the graphical
user interface (GUI) of SWMM or specified in a plain text file in ".inp" format (input file). The required data
regarding sewer geometries and rivers systems are usually available as geodata (e.g. geopackage, shapefiles...).
A direct import function for such files is not available in SWMM so far. To fix this problem, the plugin
"generate_swmm_input" enables the conversion of geodata in QGIS into input files for SWMM. Additionally,
the plugin provides a tool to import input files from SWMM into QGIS. This allows you to edit the model data
as layers with the aid of the large toolbox of QGIS.
This documentation explains how to install the plugin and how to prepare the geodata in QGIS. It is (and will
remain) a "work in progress". If you find any mistakes or you miss explanations for certain tools, layers, ...
please write an issue on GitHub or an email to the author.
An article to with the description of the plugin was published in 2022 [5]. If you´re using the tool (e.g. for
scientific or educational purposes, for urban planning etc.), please take this reference for your reports.
1.1 Installation
The plugin: "generate_swmm_inp" can be installed within QGIS from the official QGIS plugin repository.
The latest experimental version of the plugin will always be available on GitHub and can be installed from a
zip file after downloading it from the GitHub repository of the plugin [1]. As this is a processing plugin, the
tools will be added to the processing toolbox.
In some cases: missing Python packages. The plugin needs the Python package "pandas" whis is normally
already part of the standard installation of QGIS. If this is not the case, the tools will raise errors, when running.
To install missing packages, various instructions can be found online. Here are some examples...
• Windows:
– If you have had an "advanced install" of QGIS with the osgeo4w installer, you can simply open the
osgeo4w installer again, search for the packages and select the checkbox to install them.
– until QGIS version 3.18: Open the OSGeo4W shell and run py3_env .
Then run python −m pip install pandas
– for QGIS version 3.20 and later: Open the OSGeo4W shell and directly run
python −m pip install pandas .
• Linux: open the terminal and install via pip: python −m pip install pandas .
SWMM: To run the models, SWMM has to be installed. Alternatively you can use the "swmmr" package [2]
for R or packages such as "pyswmm" [3] for Python.
4
1 Introduction
1st col. 2nd col. 3rd col. 4th col. 5th col.
some random data ... ...
... ... ... .. ...
5
2 The tools
2.1 1_GenerateDefaultData
The first tool will give you a default data set to see the data structure needed for the export and conversion
into a input file later on. You can choose wether you would like empty layers, a data sample for SWMM 5.1 or
a data sample for SWMM 5.2. You can directly create the layers with the coordinate reference system (CRS)
for your region. The default CRS is "epsg:25833". The files will be saved in the selected folder. Geodata are
provided for the main infrastructures:
2.2 2_GenerateSwmmInpFile
With the second tool, you can directly convert layers from QGIS into input files. You can add further data (e.g.
curves, inflows patterns, see chapter 4.2) from tables to the input file. The default data serve as a template for
your own model, because column names have to be matching in order to identify the correct information for
the input file (see section 4.1 for column names). Actions in the user interface:
1. Select the layers and files you want to have in your SWMM model
2. Choose a location and name for the resulting input file (".inp")
The tool will not check if the layers are in the same CRS. This can lead to unexpected results. So make sure,
that all selected layers have the same CRS (or save a copy of the layer in the desired CRS).
6
2 The tools
2.3 3_ImportInpFile
The third tool allows you to import input files into QGIS. All sections (if already implemented) of the input
file will be connverted into QGIS layers (e.g. shapefiles) and tables. Actions in the user interface:
1. Choose the input file (".inp") to import
2. Choose the file format for geodata
3. Choose the (expected) CRS of the data in the input file
4. Optional: choose a prefix to specify the name of the resulting files. For example, if the prefix is set to
"20210101", then the name of the junctions file will be "20210101_SWMM_junctions". Try to avoid any
characters here, which could cause trouble with file systems (e.g. ".", "," , "/"... )
5. Select a folder to save the resulting files in. Creating and chosing a new, empty folder for the import is
recommended.
Attention: SWMM was a command line tool in the beginning. Therefore, "visible" geometries (polygons, lines,
points) are not neccessary to run a simulation in SWMM. QGIS, by contrast, needs geometries. If a geometry
is not available in the input file, the tool will set a default geometry for this feature.
2.4 4_SelectSubModel
This tool allows you to create a new set of layers as a "submodel" of already existing SWMM layers in QGIS.
You start by selecting exactly one node/point in any node layer (Junction, Storage, Divider, Outfall). Then
you double-click on the tool to open it. You choose, wether you´d like to
• keep/select all the features above the selected node
• exclude all the features above the selected node
for the new SWMM layers. You can define a prefix, which will be added to the layer names. If you do not
define a prefix, then "Subset" will be taken by default, here. As in tool 2 (section 2.2) you choose the layers to
be included in the model and a folder to save the resulting layers in. The new layers will automatically added
to the QGIS project in a new group (named with the chosen prefix).
7
2 The tools
Figure 2.2: GUI of the tool; 1: Above or below selected point; 2: prefix; 3: chosen layers; 4: folder for resulting
layers
8
3 Feature forms
Style files (.qml) with custom feature forms for every SWMM layer are added to the layers with the first tool
by default. Alternatively you can download the style files or copy them from your QGIS plugin folder. These
feature forms will help you to insert suitable values when you add or edit a feature:
After you ran a simulation in SWMM (or with a python package) you can add the results from a report file.
You´ll find the button for the QgisAction1 in the feature form of a SWMM layer (Figure 3.2). You select the
report file, the SWMM feature type and the desired report section. The report table will be opened as a new
window. You can now save the the table as a csv file. By default, the resulting file will be added to the QGIS
project (if you don´t want this, uncheck the checkbox).
1 https://docs.qgis.org/3.34/en/docs/training_manual/create_vector_data/actions.html
9
3 Feature forms
Figure 3.2: Button (1) and widget (2) for the import of a section of a SWMM report file
10
4 Field names and column names in geodata
and tables
4.1 Geodata
In the first versions of the plugin, the main file type for geodata were shapefiles. This limited the length of the
field names in the attribute to 10 characters. Hence, in some cases, the field names required for the tools differ
from those used in the graphical user interface (GUI) in SWMM. For example, the rate of seepage loss into the
surrounding soil of a conduit can be defined with the field "Seepage" in the conduits layer (see section 4.1.3),
which refers to "Seepage Loss Rate" in the SWMM GUI.
4.1.2 Nodes
layer type: point
Four types of nodes can be added to a SWMM-file: junctions, storage units, dividers or outfalls. Inflows into
any kind of nodes can be are defined in the ’Inflows’ table (see chapter 4.2.6). Treatment of pollutatants is not
implemented yet.
Junctions
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
Elevation float Invert El.
MaxDepth float Max. Depth
InitDepth float Initial Depth
SurDepth float Surcharge Depth
Aponded float Ponded Area
Annotation string Description optional column
11
4 Field names and column names in geodata and tables
Storage units
description: Storage units are represented in a point layer 1 in QGIS. Until SWMM version 5.1 the shape of
a storage could be described either by a function (’FUNCTIONAL’) or in a table (’TABULAR’) as a storage
curve. With SWMM version 5.2 storage units can have a variety of shape types (see "Type"). Different columns
in the attribute table are required for different shape types2 . Of course you can also have shape types for
different storages within one storage layer.
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
Elevation float Invert El.
MaxDepth float Max. Depth
InitDepth float Initial Depth
SurDepth float Surcharge Depth
Type string Storage Curve ’FUNCTIONAL’, ’TABULAR’,
’PYRAMIDAL’,’PARABOLIC’,’CONICAL’ or
’CYLINDRICAL’
Curve string Curve Name for TABULAR storage curves; the names of the
curves have to be matching with those in the
storage curves table
Coeff float Coefficient
Exponent float Exponent for FUNCTIONAL curves
Constant float Constant
MajorAxis float (Base) Major Axis
Length
NULL if Type is FUNCTIONAL or TABULAR
MinorAxis float (Base) Minor Axis
Length (Width)
SideSlope float Side (Wall) Slope
SurfHeight float Heigth of Axis
Surface
Fevap float Evap. Factor
Psi float Suction Head for seepage loss; inches or mm
Ksat float Conductivity for seepage loss; in/h or mm/h
IMD float Initial Deficit for seepage loss; difference between porosity and
moisture content
Annotation string Description optional column
Dividers
Description: If the routing option (see options section) is set to ’Steady Flow’ or ’Kinematic Wave’, flow
dividers divert inflows in a certain way, prescribed by the user with the attribute "Type". With the ’Dynamic
wave’ routing model, dividers are treatet as junctions.
1 With SWMM 5.2.2 storage units can be drawn as polygons in the GUI of SWMM. This is not yet implemented in this plugin.
2 Not all columns are needed. If a column is not necessary it will be ignored. You‘ll need:
• When at least one "Type" is ’FUNCTIONAL’: Coeff, Exponent, Constant
• When at least one "Type" is ’TABULAR’: Curve
• When at least one "Type" is ’PYRAMIDAL’: MajorAxis, MinorAxis, SideSlope
• When at least one "Type" is ’PARABOLIC’: MajorAxis, MinorAxis, SurfHeight
• When at least one "Type" is ’CONICAL’: MajorAxis, MinorAxis, SideSlope
• When at least one "Type" is ’CYLINDRICAL’: MajorAxis, MinorAxis
12
4 Field names and column names in geodata and tables
Outfalls
Description: Outfalls are the terminal nodes of the model. Only one link can be connected to an outfall.
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
Elevation float Invert El.
FlapGate string Tide Gate ’YES’ or ’NO’
RouteTo string Route To Subcatchment outflow ist routed onto; leave blank
if not applicable
Type string Type ’FREE’,’NORMAL’,’FIXED’,’TIDAL’ or
’TIMESERIES’
FixedStage float Fixed Stage for outfalls with FIXED type
Curve_TS string Curve Name or for TIDAL type: the name of the tidal curve has to
Series Name be matching with the name in the curves table; for
TIMESERIES type: the name of the time series has
to be matching with then name in the time series
table
Annotation string Description optional column
13
4 Field names and column names in geodata and tables
4.1.3 Links
layer type: line
Links are represented as line layers in QGIS. These can be conduits, pumps, weirs, orifices or outlets.
Conduits
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
FromNode string Inlet Node
ToNode string Outlet Node
Length float Length
Roughness float Roughness
InOffset float Inlet Offset
OutOffset float Outlet Offset
InitFlow float Initial Flow
MaxFlow float Maximum Flow
Data for cross sections (XSECTIONS):
XsectShape string Shape See SWMM manual [4] for shape types
Geom1 float for most of the shapes this is the ’Max. Depth’
Geom2 float
Geom3 float
Geom4 float
Barrels int Number of Barrels
Shp_Trnsct string - Transect name if "Shape" is IRREGULAR, shape
curve name if "Shape" is CUSTOM or street type
name if "Shape" is STREET
Culvert float Culvert Code
Data for LOSSES:
Kentry float Entry Loss Coeff.
Kexit float Entry Loss Coeff.
Kavg float Avg. Loss Coeff.
FlapGate String Flap Gate can be ’YES’ or ’NO’
Seepage float Seepage Loss Rate
Annotation string Description optional column
Pumps
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
FromNode string Inlet Node
ToNode string Outlet Node
PumpCurve string Pump Curve has to be matching with the curve name in the
pump curves table; set an asterisk (’*’) here for
ideal pump
Status string Initial Status ’ON’ or ’OFF’
Startup float Startup Depth
Shutoff float Shutoff Depth
Annotation string Description optional column
14
4 Field names and column names in geodata and tables
Weirs
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
FromNode string Inlet Node
ToNode string Outlet Node
Type string Type ’TRANSVERSE’, ’SIDEFLOW’, ’V-NOTCH’,
’TRAPEZIODAL’ or ’ROADWAY’
Height float Height
Length float Length
SideSlope float Side Slope Slope (width-to-height) of TRAPEZIODAL weir
side walls
CrestHeigh float Inlet Offset
Qcoeff float Discharge Coeff.
FlapGate string Flap Gate ’YES’ or ’NO’
EndContrac int End Contractions 0, 1 or 2
EndCoeff float End Coeff. For TRAPEZIODAL weirs
Surcharge string Can Surcharge ’YES’ or ’NO’
CoeffCurve float Coeff. Curve the name of the curve has to be matching to the
name in the table for weir curves
RoadWidth float Road Width
For ROADWAY weir types
RoadSurf float Road Surface
Annotation string Description optional column
Orifices
Name in Data Name in annotations
attribute type SWMM GUI
table
Name string Name
FromNode string Inlet Node
ToNode string Outlet Node
Type string Type ’SIDE’ or ’BOTTOM’
XsectShape string Shape ’CIRCULAR’ or ’RECT_CLOSED’
Height float Heigth in ft or meter
Width float Width in ft or meter
InOffset float Inlet Offset
Qcoeff float Discharge Coeff.
FlapGate string Flap Gate ’YES’ or ’NO’
CloseTime float Time to in hours
Open/Close
Annotation string Description optional column
15
4 Field names and column names in geodata and tables
Outlets
Name in Data Name in Annotation
attribute type SWMM GUI
table
Name string Name
FromNode string Inlet Node
ToNode string Outlet Node
InOffset float Inlet Offset
FlapGate string Flap Gate ’YES’ or ’NO’
RateCurve string Shape ’FUNCTIONAL/DEPTH’,
’TABULAR/DEPTH’, ’FUNCTIONAL/HEAD’
or ’TABULAR/HEAD’
Qcoeff float Coefficient for FUNCTIONAL curves
Qexpon float Exponent for FUNCTIONAL curves
CurveName float Curve Name for TABULAR curves; has to be matching with
the name in the oulet curves table
Annotation string Description optional column
16
4 Field names and column names in geodata and tables
4.1.4 Subcatchments
layer type: point / polygon
description: Subcatchments can either be points or polygons. Each subcatchment has to have a unique name
(attribute Name). The required fields in the attribute table are:
3 Notall columns are required. If a column is not necessary for the infiltration method of a subcatchment it will be ignored. You‘ll
need at least:
• When "InfMethod" is ’HORTON’ or ’MODIFIED_HORTON’: MaxRate, MinRate, Decay, DryTime , MaxInf
• When "InfMethod" is ’GREEN_AMPT’ or ’MODIFIED_GREEN_AMPT’: SuctHead, Conductiv, InitDef
• When "InfMethod" is ’CURVE_NUMBER’: CurveNum, Conductiv, DryTime
You can also have different infiltration methods for different subcatchments.
17
4 Field names and column names in geodata and tables
4.2 Tables
4.2.1 Options
File in default data: gisswmm_options.xlsx
Description: You may want to set the options already in your input file. To do so, you simply write them
in a table with two columns: "Option" and "Value". So far, time steps longer than one day cannot be
chosen here, as the date format in python is in conflict with the notation in SWMM (e.g. in SWMM a time
step of two days will be written as ’48:00:00’. However, Python only accepts 0-23 hours)
4.2.2 Curves
File in default data: gisswmm_curves.xlsx
Description: Any type of curves can be imported as a table in an xlsx file. Each curve type has to be in
a seperate sheet/table named with the curve type. Different curves oft the same type are stored in the same
table by using different names. Just like in the SWMM GUI, curves always consist of three columns: Name, a
x-value and a y-value. More culomns can be added (e.g. for annotations), but only the first three columns are
relevant for the import into SWMM. Rows beginning with a semicolon (";") will be ignored. Curve types are:
• Pump1
• Pump2
• Pump3
• Pump4
• Pump5
• Weir
• Storage
• Rating
• Tidal
• Control
• Diversion
• Shape
Example for a table of two storage curves (where "Depth" is the x-value and "Area" is the y-value) :
Name Depth Area Annotation
StC_1 0 3 this is the first storage curve
StC_1 0.5 4
StC_1 1 4
StC_1 1.5 5
; this row will be ignored
second_StC 0 10 this is the second storage curve
second_StC 1 10
second_StC 2 11
second_StC 3 11
second_StC 4 12
4.2.3 Timeseries
File in default data: gisswmm_timeseries.xlsx
Description: All time series for one SWMM model are saved in a .xlsx file (any sheet name). For a standard
time series you only fill the columns "Name", "Date" (optional), "Time" and "Value" (See example "TS_1" be-
low). Alternatively you can define a time series in an external data file. Rows beginning with a semicolon (";")
will be ignored.
In former versions of the plugin, rain gages could also be defined with the time series table by writing ’rain_gage’
in the column "Type", the rain format in the column "Format" and the name of the rain gage in the column
"Description". Starting with version 0.23 of the plugin this is not possible any longer. Raingages are defined
directly in a the rain gages layer in QGIS
18
4 Field names and column names in geodata and tables
4.2.4 Patterns
File in default data: gisswmm_patterns.xlsx
Description: Patterns can be imported in an .xlsx file, where each pattern type is stored in a separate sheet
named after the pattern type. Patterns of the same type are written in the same table. Each table consist of
three columns: "Name", a Time_Stamp column and "Factor". Pattern types are:
• HOURLY, where the Time_Stamp column is called "Hour" (from 0:00 to 23:00)
• DAILY, where the Time_Stamp column is called "Day" (from Sunday to Saturday)
• MONTHLY, where the Time_Stamp column is called "Month" (from January to December)
• WEEKEND, where the Time_Stamp column is called "Hour" (from 12AM to 11PM)
For example, a table for two DAILY patterns (’p1’ and ’p2’) will look like this:
4.2.5 Quality
File in default data: gisswmm_quality.xlsx
Description: Quality parameters can be imported with a .xlsx file with the four tables/sheets: ’POLLU-
TANTS’, ’LANDUSES’, ’COVERAGES’, ’LOADINGS’.
19
4 Field names and column names in geodata and tables
POLLUTANTS
Columns in Data Name in annotations
table type SWMM GUI
Name string Name
Units string Units
RainConcentr float Rain Concen.
GwConcentr float GW Concen.
IiConcentr float I&i Concen
DecayCoeff float Decay Coeff
SnowOnly string Snow Only ’YES’ or ’NO’
CoPollutant string Co-Pollutant
CoFraction string Co-Fraction
DwfConcentr float DWF Concen
InitConcetr float Init. Concen
LANDUSES
This sheet sets up buildup and washoff functions for different landuses. Since one landuse can have more than
one pollutant with individual functions for buildup and washoff, the have defined in different rows of this sheet
(see exemplary table).
Columns in table Data Name in annotations
type SWMM GUI
Name string Land Use Name
SweepingInterval float Interval in days
SweepingFractionAvailable float Availability between 0 and 1
LastSwept float Last Swept in days
Pollutant string -
BuildupFunction string Function ’NONE’, ’POW’, ’EXP’, ’SAT’ or
’EXT’
BuildupMax float Max. Buildup kg per textitNormalizer (area or
curb length)
BuildupRateConstant float Rate Constant
BuildupExponent_SatConst float Power/Sat.
Constant
BuildupPerUnit string Normalizer ’AREA’ or ’CURB’
WashoffFunction string Function ’NONE’, ’EXP’, ’RC’ or ’EMC’
WashoffpCoefficient float Coefficient
WashoffExponenet float Exponent
WashoffCleaninfEfficiency float Cleaning Effic. percent
WashoffBmpEfficiency float BMP Effic. percent
COVERAGES
This sheet refers to Land Uses in the GUI of subcatchments. As one subcatchment can have morge than one
land use covering its area4 , they are defined in the quality table. Example for one subcatchment with two land
use types:
Subcatchment Landuse Percent
SC1 LU_1 24.5
SC1 LU_2 75.5
LOADINGS
This sheet refers to Initial Buildup in the GUI of subcatchments. As one subcatchment can have morge than
one pollutants the initial buildup is defined in the quality table. Values in the column "InitialBuildup" are mass
per area (e.g. kg/ha or lbs/ac). Example for two subcatchments with two pollutants:
Subcatchment Pollutant InitialBuildup
SC1 COD 1
SC1 TN 0.6
SC2 COD 0.8
SC2 TN 0.4
4 the tool will not check if Σ Percent > 100
20
4 Field names and column names in geodata and tables
4.2.6 Inflows
File in default data: gisswmm_inflows.xlsx
Description: The .xlsx file for inflows contains four tables/sheets (older files with two tables will still work).
Direct
Columns in table Data Name in annotations
type SWMM GUI
Name string Name name of the Node
Constituent string Constituent ’FLOW’ or name of the pollutant
Baseline float Baseline
Baseline_Pattern string Baseline Pattern
Time_Series string Time Series
Scale_Factor float Scale Factor
Type string Type "MASS", "CONCEN"; applies, when
Constituent is not FLOW
Units_Factor float Units Factor
Dry_Weather
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
Name string Name
Constituent string Constituent
Average_Value float Average Value
Time_Pattern1 string
Time_Pattern2 string
Time Patterns
Time_Pattern3 string
Time_Pattern4 string
21
4 Field names and column names in geodata and tables
Hydrographs
Columns in table Data Name in annotations
type SWMM GUI
Name string Name of UH Group
Rain_Gage string Rain Gage Used
Months string Hydrographs For ’All’ or name abbreviation of the
month
R_ShortTerm float R (for short-term
response)
T_ShortTerm float T (for short-term
response)
K_ShortTerm float K (for short-term
response)
D_max_ShortTerm float Dmax (for
short-term
response)
D_recovery_ShortTerm float Drec (for
short-term
response)
D_init_ShortTerm float Do (for short-term
response)
R_MediumTerm float R (for
medium-term
response)
T_MediumTerm float T (for
medium-term
response)
K_MediumTerm float K (for
medium-term
response)
D_max_MediumTerm float Dmax (for
medium-term
response)
D_recovery_MediumTerm float Drec (for
medium-term
response)
D_init_MediumTerm float Do (for
medium-term
response)
R_LongTerm float R (for long-term
response)
T_LongTerm float T (for long-term
response)
K_LongTerm float K (for long-term
response)
D_max_LongTerm float Dmax (for
long-term
response)
D_recovery_LongTerm float Drec (for long-term
response)
D_init_LongTerm float Do (for long-term
response)
RDII
Columns in table Data Name in annotations
type SWMM GUI
Node string Constituent name of the Node
UnitHydrograph string Unit Hydrograph
Group
SewerArea_Pattern float Sewershed Area
22
4 Field names and column names in geodata and tables
4.2.7 Transects
File in default data: gisswmm_transects.xlsx
Description: The .xlsx file for transects (for IRREGULAR cross-sections) contains two tables/sheets ("Data"
and "XSections"):
Data
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
TransectName string Name
Station float Station
Elevation float Elevation
XSections
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
TransectName string Name
RoughnessLeftBank float Left Bank
RoughnessRightBank float Right Bank
RoughnessChannel float Channel
BankStationLeft float Left
BankStationRight float Right
ModifierStations float Stations
ModifierElevations float Elevations
ModifierMeander float Meander
STREETS
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
Name string Street Section
Name
RoadWidth float Road Width
CurbHeigth float Curb Heigth
CurbSlope float Curb Slope
RoadRoughn float Road Roughness
GuttDepres float Gutter Depression
GuttWidth float Gutter Width
Sides int One Sided / Two 1 or 2
Sided
BackWidth float Backing Width
BackSlope float Backing Slope
BackRoughn float Backing Roughness
23
4 Field names and column names in geodata and tables
INLETS
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
Name string Name
Type String Inlet Type ’GRATE’, ’CUSTOM’, ’CURB’,
’SLOTTED’, ’DROP_GRATE’,
’DROP_CURB’ or ’CUSTOM’
Length float Length
Width float Width
Heigth float Heigth
Shape String - Type for GRATE, DROP_GRATE
inlets; Throat Angle for CURB
inlets; Curve name for CUSTOM
inlets
OpenFract float Open Fraction For GRATE inlets with GENERIC
SplashVel float Splash Velocity shape
INLET_USAGE
Name in attribute ta- Data Name in annotations
ble type SWMM GUI
Conduit string - Name of the conduit
Inlet string Inlet Structure
CaptNode int Capture Node The Name has to be matching to
one node name
Number float Number of Inlets 1-5
PercClog float Percent Clogged 0 - 100
MaxFlow float Flow Restriction 0 for no flow restriction
DeprHeigth float Depression Height
0 for no local depression
DeprWidth float Depression Width
Placement string Inlet Placement ’AUTOMATIC’, ’ON_GRADE’ or
’ON_SAG’
24
Bibliography
[1] generate_swmm_inp. url: https://github.com/Jannik-Schilling/generate_swmm_inp.
[2] Dominik Leutnant, Anneke Döring, and Mathias Uhl. “swmmr - an R package to interface SWMM”. In:
Urban Water Journal 16.1 (2019), pp. 68–76. doi: 10.1080/1573062X.2019.1611889. eprint: https://
doi.org/10.1080/1573062X.2019.1611889. url: https://doi.org/10.1080/1573062X.2019.1611889.
[3] Bryant E. McDonnell et al. “PySWMM: The Python Interface to Stormwater Management Model (SWMM)”.
In: Journal of Open Source Software 5.52 (2020), p. 2292. issn: 2475-9066. doi: 10.21105/joss.02292.
url: https://joss.theoj.org/papers/10.21105/joss.02292.
[4] Lewis A. Rossmann. Storm Water Management Modell User’s Manual Version 5.1. Technical Report EPA-
600/R-14/413b. U.S. Environmental Protection Agnecy. 2015.
[5] Jannik Schilling and Jens Tränckner. “Generate_SWMM_inp: An Open-Source QGIS Plugin to Import
and Export Model Input Files for SWMM”. In: Water 14.14 (2022), p. 2262. doi: 10.3390/w14142262.
25