Enumerated Types¶
Enumerations | Description |
---|---|
ActionCodeType | Deletion action codes. |
AnalysisStatistic | Analysis convergence statistics. |
ControlType | Simple control types. |
CountType | Types of objects to count. |
CurveType | Types of data curves. |
DemandModel | Demand models. |
FlowUnits | Flow units. |
HeadLossType | Head loss formulas. |
InitHydOption | Hydraulic initialization options. |
LinkProperty | Link properties. |
LinkStatusType | Link status. |
LinkType | Link types. |
MixingModel | Tank mixing models. |
NodeProperty | Node properties. |
NodeType | Node Types. |
ObjectType | Types of network objects. |
Option | Simulation options. |
PumpStateType | Pump states. |
PumpType | Types of pump curves. |
QualityType | Types of water quality analyses. |
RuleObject | Network objects used in rule-based controls. |
RuleOperator | Comparison operators used in rule-based controls. |
RuleStatus | Link status codes used in rule-based controls. |
RuleVariable | Object variables used in rule-based controls. |
SizeLimits | Size Limts. |
SourceType | Water quality source types. |
StatisticType | Reporting statistic choices. |
StatusReport | Status reporting levels. |
TimeParameter | Time parameters. |
ActionCodeType¶
Deletion action codes.
These codes are used in deleteNode
and deleteLink
to indicate what action should be taken if the node or link being deleted appears in any simple or rule-based controls or if a deleted node has any links connected to it.
Enumeration Members
Member | Value | Description |
---|---|---|
Unconditional | 0 |
Delete all controls and connecing links. |
Conditional | 1 |
Cancel object deletion if it appears in controls or has connecting links. |
AnalysisStatistic¶
Analysis convergence statistics.
These statistics report the convergence criteria for the most current hydraulic analysis and the cumulative water quality mass balance error at the current simulation time. They can be retrieved with getStatistic
.
Enumeration Members
Member | Value | Description |
---|---|---|
DeficientNodes | 5 |
Number of pressure deficient nodes. |
DemandReduction | 6 |
% demand reduction at pressure deficient nodes |
Iterations | 0 |
Number of hydraulic iterations taken. |
MassBalance | 4 |
Cumulative water quality mass balance ratio. |
MaxFlowChange | 3 |
Largest flow change in links. |
MaxHeadError | 2 |
Largest head loss error for links. |
RelativeError | 1 |
Sum of link flow changes / sum of link flows. |
ControlType¶
Simple control types.
These are the different types of simple (single statement) controls that can be applied to network links. They are used as an argument to addControl
, getControl
, and setControl
.
Enumeration Members
Member | Value | Description |
---|---|---|
HiLevel | 1 |
Act when pressure or tank level rises above a setpoint. |
LowLevel | 0 |
Act when pressure or tank level drops below a setpoint. |
TimeOfDay | 3 |
Act at a particular time of day. |
Timer | 2 |
Act at a prescribed elapsed amount of time. |
CountType¶
Types of objects to count.
These options tell getCount
which type of object to count.
Enumeration Members
Member | Value | Description |
---|---|---|
ControlCount | 5 |
Number of simple controls. |
CurveCount | 4 |
Number of data curves. |
LinkCount | 2 |
Number of links (pipes + pumps + valves) |
NodeCount | 0 |
Number of nodes (junctions + tanks + reservoirs) |
PatCount | 3 |
Number of time patterns. |
RuleCount | 6 |
Number of rule-based controls. |
TankCount | 1 |
Number of tanks and reservoirs. |
CurveType¶
Types of data curves.
These are the different types of physical relationships that a data curve can represent as returned by calling getCurveType
.
Enumeration Members
Member | Value | Description |
---|---|---|
EfficCurve | 2 |
Pump efficiency v. flow curve. |
GenericCurve | 4 |
Generic curve. |
HlossCurve | 3 |
Valve head loss v. flow curve. |
PumpCurve | 1 |
Pump head v. flow curve. |
VolumeCurve | 0 |
Tank volume v. depth curve. |
DemandModel¶
Demand models.
These choices for modeling consumer demands are used with getDemandModel
and setDemandModel
.
A demand driven analysis requires that a junction's full demand be supplied in each time period independent of how much pressure is available. A pressure driven analysis makes demand be a power function of pressure, up to the point where the full demand is met.
Enumeration Members
Member | Value | Description |
---|---|---|
DDA | 0 |
Demand driven analysis. |
PDA | 1 |
Pressure driven analysis. |
FlowUnits¶
Flow units.
These choices for flow units are used with getFlowUnits
and setFlowUnits
. They are also used for the flow units type argument in init
. If flow units are expressed in US Customary units ( CFS
, GPM
, MGD
, IMGD
, AFD
) then all other quantities are in US Customary units. Otherwise they are in metric units.
Enumeration Members
Member | Value | Description |
---|---|---|
AFD | 4 |
Acre-feet per day. |
CFS | 0 |
Cubic feet per second. |
CMD | 9 |
Cubic meters per day. |
CMH | 8 |
Cubic meters per hour. |
GPM | 1 |
Gallons per minute. |
IMGD | 3 |
Imperial million gallons per day. |
LPM | 6 |
Liters per minute. |
LPS | 5 |
Liters per second. |
MGD | 2 |
Million gallons per day. |
MLD | 7 |
Million liters per day. |
HeadLossType¶
Head loss formulas.
The available choices for Option.HeadlossForm
in getOption
and setOption
. They are also used for the head loss type argument in init
. Each head loss formula uses a different type of roughness coefficient ( LinkProperty.Roughness
) that can be set with setLinkValue
.
Enumeration Members
Member | Value | Description |
---|---|---|
CM | 2 |
Chezy-Manning. |
DW | 1 |
Darcy-Weisbach. |
HW | 0 |
Hazen-Williams. |
InitHydOption¶
Hydraulic initialization options.
These options are used to initialize a new hydraulic analysis when initH
is called.
Enumeration Members
Member | Value | Description |
---|---|---|
InitFlow | 10 |
Don't save hydraulics; re-initialize flows. |
NoSave | 0 |
Don't save hydraulics; don't re-initialize flows. |
Save | 1 |
Save hydraulics to file, don't re-initialize flows. |
SaveAndInit | 11 |
Save hydraulics; re-initialize flows. |
LinkProperty¶
Link properties.
These link properties are used with getLinkValue
and setLinkValue
. Those marked as read only are computed values that can only be retrieved.
Enumeration Members
Member | Value | Description |
---|---|---|
Diameter | 0 |
Pipe/valve diameter. |
Energy | 13 |
Current computed pump energy usage (read only) |
Flow | 8 |
Current computed flow rate (read only) |
Headloss | 10 |
Current computed head loss (read only) |
InitSetting | 5 |
Initial pump speed or valve setting. |
InitStatus | 4 |
Initial status (see LinkStatusType ) |
KBulk | 6 |
Bulk chemical reaction coefficient. |
KWall | 7 |
Pipe wall chemical reaction coefficient. |
Length | 1 |
Pipe length. |
LinkPattern | 15 |
Pump speed time pattern index. |
LinkQual | 14 |
Current computed link quality (read only) |
MinorLoss | 3 |
Pipe/valve minor loss coefficient. |
PumpECost | 21 |
Pump average energy price. |
PumpECurve | 20 |
Pump efficiency v. flow curve index. |
PumpEffic | 17 |
Current computed pump efficiency (read only) |
PumpEPat | 22 |
Pump energy price time pattern index. |
PumpHCurve | 19 |
Pump head v. flow curve index. |
PumpPower | 18 |
Pump constant power rating. |
PumpState | 16 |
Current computed pump state (read only) (see PumpStateType ) |
Roughness | 2 |
Pipe roughness coefficient. |
Setting | 12 |
Current link setting. |
Status | 11 |
Current link status (see LinkStatusType ) |
Velocity | 9 |
Current computed flow velocity (read only) |
LinkStatusType¶
Link status.
One of these values is returned when getLinkValue
is used to retrieve a link's initial status (LinkProperty.InitStatus
) or its current status ( LinkProperty.Status
). These options are also used with setLinkValue
to set values for these same properties.
Enumeration Members
Member | Value | Description |
---|---|---|
Closed | 0 |
|
Open | 1 |
LinkType¶
Link types.
These are the different types of links that can be returned by calling getLinkType
.
Enumeration Members
Member | Value | Description |
---|---|---|
CVPipe | 0 |
Pipe with check valve. |
FCV | 6 |
Flow control valve. |
GPV | 8 |
General purpose valve. |
PBV | 5 |
Pressure breaker valve. |
Pipe | 1 |
Pipe. |
PRV | 3 |
Pressure reducing valve. |
PSV | 4 |
Pressure sustaining valve. |
Pump | 2 |
Pump. |
TCV | 7 |
Throttle control valve. |
MixingModel¶
Tank mixing models.
These are the different types of models that describe water quality mixing in storage tanks. The choice of model is accessed with NodeProperty.MixModel
property of a Tank node using getNodeValue
and setNodeValue
.
Enumeration Members
Member | Value | Description |
---|---|---|
FIFO | 2 |
First in, first out model. |
LIFO | 3 |
Last in, first out model. |
Mix1 | 0 |
Complete mix model. |
Mix2 | 1 |
2-compartment model |
NodeProperty¶
Node properties.
These node properties are used with getNodeValue
and setNodeValue
. Those marked as read only are computed values that can only be retrieved.
Enumeration Members
Member | Value | Description |
---|---|---|
BaseDemand | 1 |
Primary demand baseline value. |
CanOverFlow | 26 |
Tank can overflow (= 1) or not (= 0) |
Demand | 9 |
Current computed demand (read only) |
DemandDeficit | 27 |
Amount that full demand is reduced under PDA (read only) |
Elevation | 0 |
Elevation. |
Emitter | 3 |
Emitter flow coefficient. |
Head | 10 |
Current computed hydraulic head (read only) |
Initqual | 4 |
Initial quality. |
InitVolume | 14 |
Tank initial volume (read only) |
MaxLevel | 21 |
Tank maximum level. |
MaxVolume | 25 |
Tank maximum volume (read only) |
MinLevel | 20 |
Tank minimum level. |
MinVolume | 18 |
Tank minimum volume. |
MixFraction | 22 |
Tank mixing fraction. |
MixModel | 15 |
Tank mixing model (see MixingModel ) |
MixZoneVol | 16 |
Tank mixing zone volume (read only) |
Pattern | 2 |
Primary demand time pattern index. |
Pressure | 11 |
Current computed pressure (read only) |
Quality | 12 |
Current computed quality (read only) |
SourceMass | 13 |
Current computed quality source mass inflow (read only) |
SourcePat | 6 |
Quality source pattern index. |
SourceQual | 5 |
Quality source strength. |
SourceType | 7 |
Quality source type (see SourceType ) |
TankDiam | 17 |
Tank diameter. |
TankKBulk | 23 |
Tank bulk decay coefficient. |
TankLevel | 8 |
Current computed tank water level (read only) |
TankVolume | 24 |
Current computed tank volume (read only) |
VolCurve | 19 |
Tank volume curve index. |
NodeType¶
Node Types.
These are the different types of nodes that can be returned by calling getNodeType
.
Enumeration Members
Member | Value | Description |
---|---|---|
Junction | 0 |
Junction node. |
Reservoir | 1 |
Reservoir node. |
Tank | 2 |
Storage tank node. |
ObjectType¶
Types of network objects.
The types of objects that comprise a network model.
Enumeration Members
Member | Value | Description |
---|---|---|
Control | 4 |
Simple controls. |
Curve | 3 |
Data curves. |
Link | 1 |
Links. |
Node | 0 |
Nodes. |
Rule | 5 |
Control rules. |
TimePat | 2 |
Time patterns. |
Option¶
Simulation options.
These constants identify the hydraulic and water quality simulation options that are applied on a network-wide basis. They are accessed using the getOption
and setOption
functions.
Enumeration Members
Member | Value | Description |
---|---|---|
Accuracy | 1 |
Total normalized flow change for hydraulic convergence. |
BulkOrder | 19 |
Bulk water reaction order for pipes. |
CheckFreq | 15 |
Frequency of hydraulic status checks. |
ConcenLimit | 22 |
Limiting concentration for growth reactions. |
DampLimit | 17 |
Accuracy level where solution damping begins. |
DemandCharge | 11 |
Energy charge per max. KW usage. |
DemandMult | 4 |
Global demand multiplier. |
Emitexpon | 3 |
Exponent in emitter discharge formula. |
FlowChange | 6 |
Maximum flow change for hydraulic convergence. |
GlobalEffic | 8 |
Global pump efficiency (percent) |
GlobalPattern | 10 |
Index of a global energy price pattern. |
GlobalPrice | 9 |
Global energy price per KWH. |
HeadError | 5 |
Maximum head loss error for hydraulic convergence. |
HeadlossForm | 7 |
Head loss formula (see HeadLossType ) |
MaxCheck | 16 |
Maximum trials for status checking. |
SpDiffus | 18 |
Specific diffusivity (relative to chlorine at 20 deg C) |
SpGravity | 12 |
Specific gravity. |
SpViscos | 13 |
Specific viscosity (relative to water at 20 deg C) |
TankOrder | 21 |
Bulk water reaction order for tanks. |
Tolerance | 2 |
Water quality tolerance. |
Trials | 0 |
Maximum trials allowed for hydraulic convergence. |
Unbalanced | 14 |
Extra trials allowed if hydraulics don't converge. |
WallOrder | 20 |
Wall reaction order for pipes (either 0 or 1) |
PumpStateType¶
Pump states.
One of these codes is returned when getLinkValue
is used to retrieve a pump's current operating state ( LinkProperty.PumpState
). PumpXHead
indicates that the pump has been shut down because it is being asked to deliver more than its shutoff head. PumpXFlow
indicates that the pump is being asked to deliver more than its maximum flow.
Enumeration Members
Member | Value | Description |
---|---|---|
PumpClosed | 2 |
Pump closed. |
PumpOpen | 3 |
Pump open. |
PumpXFlow | 5 |
Pump open - cannot supply flow. |
PumpXHead | 0 |
Pump closed - cannot supply head. |
PumpType¶
Types of pump curves.
getPumpType
returns one of these values when it is called.
Enumeration Members
Member | Value | Description |
---|---|---|
ConstHP | 0 |
Constant horsepower. |
Custom | 2 |
User-defined custom curve. |
NoCurve | 3 |
No curve. |
PowerFunc | 1 |
Power function. |
QualityType¶
Types of water quality analyses.
These are the different types of water quality analyses that EPANET can run. They are used with getQualityInfo
, getQualityType
, and setQualityType
.
Enumeration Members
Member | Value | Description |
---|---|---|
Age | 2 |
Water age analysis. |
Chem | 1 |
Chemical fate and transport. |
None | 0 |
No quality analysis. |
Trace | 3 |
Source tracing analysis. |
RuleObject¶
Network objects used in rule-based controls.
Enumeration Members
Member | Value | Description |
---|---|---|
Link | 7 |
Clause refers to a link. |
Node | 6 |
Clause refers to a node. |
System | 8 |
Clause refers to a system parameter (e.g., time) |
RuleOperator¶
Comparison operators used in rule-based controls.
Enumeration Members
Member | Value | Description |
---|---|---|
Above | 9 |
Is above. |
Below | 8 |
Is below. |
EqualTo | 0 |
Equal to. |
GreaterOrEqualTo | 3 |
Greater than or equal to. |
GreaterThan | 5 |
Greater than. |
Is | 6 |
Is equal to. |
LessOrEqualTo | 2 |
Less than or equal to. |
LessThan | 4 |
Less than. |
Not | 7 |
Is not equal to. |
NotEqualTo | 1 |
Not equal. |
RuleStatus¶
Link status codes used in rule-based controls.
Enumeration Members
Member | Value | Description |
---|---|---|
IsActive | 3 |
Control valve is active. |
IsClosed | 2 |
Link is closed. |
IsOpen | 1 |
Link is open. |
RuleVariable¶
Object variables used in rule-based controls.
Enumeration Members
Member | Value | Description |
---|---|---|
ClockTime | 10 |
Time of day. |
Demand | 0 |
Nodal demand. |
DrainTime | 12 |
Time to drain a tank. |
FillTime | 11 |
Time to fill a tank. |
Flow | 5 |
Link flow rate. |
Grade | 2 |
Nodal hydraulic grade. |
Head | 1 |
Nodal hydraulic head. |
Level | 3 |
Tank water level. |
Power | 8 |
Pump power output. |
Pressure | 4 |
Nodal pressure. |
Setting | 7 |
Link setting. |
Status | 6 |
Link status. |
Time | 9 |
Elapsed simulation time. |
SizeLimits¶
Size Limts.
Limits on the size of character arrays used to store ID names and text messages.
Enumeration Members
Member | Value | Description |
---|---|---|
MaxId | 31 |
Max. # characters in ID name. |
MaxMsg | 255 |
Max. # characters in message text. |
SourceType¶
Water quality source types.
These are the different types of external water quality sources that can be assigned to a node's property ( see NodeProperty.SourceType
) and as used by getNodeValue
and setNodeValue
.
Enumeration Members
Member | Value | Description |
---|---|---|
Concen | 0 |
Sets the concentration of external inflow entering a node. |
FlowPaced | 3 |
Adds a given value to the concentration leaving a node. |
Mass | 1 |
Injects a given mass/minute into a node. |
SetPoint | 2 |
Sets the concentration leaving a node to a given value. |
StatisticType¶
Reporting statistic choices.
These options determine what kind of statistical post-processing should be done on the time series of simulation results generated before they are reported using report
. An option can be chosen by using Statistic
option as the argument to setReport
.
Enumeration Members
Member | Value | Description |
---|---|---|
Average | 1 |
Report average value over simulation period. |
Maximum | 3 |
Report maximum value over simulation period. |
Minimum | 2 |
Report minimum value over simulation period. |
Range | 4 |
Report maximum - minimum over simulation period. |
Series | 0 |
Report all time series points. |
StatusReport¶
Status reporting levels.
These choices specify the level of status reporting written to a project's report file during a hydraulic analysis. The level is set using the setStatusReport
function.
Enumeration Members
Member | Value | Description |
---|---|---|
FullReport | 2 |
Full level of status reporting. |
NoReport | 0 |
No status reporting. |
NormalReport | 1 |
Normal level of status reporting. |
TimeParameter¶
Time parameters.
These time-related options are used with getTimeParameter
and setTimeParameter
. All times are expressed in seconds The parameters marked as read only are computed values that can only be retrieved.
Enumeration Members
Member | Value | Description |
---|---|---|
Duration | 0 |
Total simulation duration. |
HaltFlag | 13 |
Flag indicating if the simulation was halted (read only) |
HTime | 11 |
Elapsed time of current hydraulic solution (read only) |
HydStep | 1 |
Hydraulic time step. |
NextEvent | 14 |
Shortest time until a tank becomes empty or full (read only) |
NextEventTank | 15 |
Index of tank with shortest time to become empty or full (read only) |
PatternStart | 4 |
Time when time patterns begin. |
PatternStep | 3 |
Time pattern period. |
Periods | 9 |
Number of reporting time periods (read only) |
QTime | 12 |
Elapsed time of current quality solution (read only) |
QualStep | 2 |
Water quality time step. |
ReportStart | 6 |
Time when reporting starts. |
ReportStep | 5 |
Reporting time step. |
RuleStep | 7 |
Rule-based control evaluation time step. |
StartTime | 10 |
Simulation starting time of day. |
Statistic | 8 |
Reporting statistic code (see StatisticType ) |