Skip to content

Releases: OpenWaterAnalytics/EPyT

EPyT v2.3.5.0

20 Feb 13:51

Choose a tag to compare

EN_setflowunits() Patch

This patch release fixes the EN_setflowunits() Toolkit function so that flow unit conversions are made for all Generic curves assigned to objects. It also no longer has the function silently change pressure units when the unit system changes since v.2.3 supports mixed-unit conventions (e.g., using LPS for flow and PSI for pressure).

EPyT v2.3.4.0

10 Feb 07:51

Choose a tag to compare

This patch release fixes a units conversion bug that caused pipe leakage results to be computed incorrectly.

EPyT v2.3.3.0

05 Feb 14:12

Choose a tag to compare

Release Notes for EPANET Python Toolkit (EPyT) v2.3.3.0

It introduces full support for new EPANET 2.3 API calls, pressure-driven analysis (PDA), leakage modeling, extended curve and valve types, new units, enhanced control/rule handling, and expanded project I/O capabilities.

  • Restores initial fully-open valve status handling
  • Fixes PCV update behavior via API and controls
  • Fixes EN_setpipedata minor loss coefficient assignment
  • Fixes EN_setlinkvalue Open/Closed status assignment

New test file: testFunctions2_3

Leakage example: EX28_Leakage

List of New EPANET 2.3 Functions Supported

Function Description
apiENgetcontrolenabled Get enabled/disabled flag for a simple control by index. Returns boolean/int (1 = enabled, 0 = disabled).
apiENsetcontrolenabled Enable or disable a specific simple control by index.
apiENgetruleenabled Get enabled/disabled flag for a rule-based control by rule index.
apiENsetruleenabled Enable or disable a rule by rule index.
apiENgetlinkvalues Bulk-retrieve property values for all links for a given link property code. Returns an array/vector.
apiENgetnodevalues Bulk-retrieve property values for all nodes for a given node property code. Returns an array/vector.
apiENsetcurvetype Set the type of a curve object (volume, pump, efficiency, headloss, generic, valve).
apiENsetvertex Set the coordinates of a link’s intermediate vertex (polyline point) by vertex index.
apiENtimetonextevent Return the type of event that terminates the current time step (e.g., hydraulic step, WQ step, tank level event, control event) and the time to the event.
apiENloadpatternfile Load time patterns from an external file into the current project under a specific pattern ID.
apiENopenX Open an input file even if it has certain formatting errors (lenient parsing mode).

EMT Functions added/updated

Valve Links
Function Description
addLinkValvePCV Create a new Pressure Control Valve (PCV) link between two nodes.
setLinkTypeValvePCV Convert an existing link to a PCV (Pressure Control Valve) type.
getLinkValveCurveGPV Retrieve the control curve associated with a GPV (General Purpose Valve).
setLinkValveCurveGPV Assign or update the control curve for a GPV valve.
getLinkValveCurvePCV Retrieve the control curve associated with a PCV valve.
setLinkValveCurvePCV Assign or update the control curve for a PCV valve.
Curves
Function Description
setCurveType Set the type of a curve object.
setCurveTypeVolume Set the type of a curve object to Volume.
setCurveTypePump Set the type of a curve object to Pump.
setCurveTypeEfficiency Set the type of a curve object to Efficiency.
setCurveTypeHeadloss Set the type of a curve object to Headloss.
setCurveTypeGeneral Set the type of a curve object to General.
setCurveTypeValveCurve Set the type of a curve object to Curve.
Controls & Rules
Function Description
getControlState Retrieve simple control enabled flag.
getRuleEnabled Retrieve rule enabled flag.
setRuleEnabled Enable or disable a rule-based control.
getLinkInControl Identify links referenced by control rules.
getNodeInControl Identify nodes referenced by control rules.
Events
Function Description
getTimetoNextEvent Return the type of event that terminates the current time step.
Patterns
Function Description
loadPatternFile Load a time pattern file into the project.
getPatternAverageDefaultValue Report average value used when a pattern is missing.
Options & Units
Function Description
getOptionsPressureUnits Retrieve current pressure units.
setOptionsPressureUnits Set pressure units (EN_PSI / EN_KPA / EN_METERS).
setOptionsPressureUnitsMeters Set pressure units to meters.
setOptionsPressureUnitsPSI Set pressure units to PSI.
setOptionsPressureUnitsKPA Set pressure units to kPa.
getOptionsStatusReport Get current status report level.
setOptionsStatusReport Set status report level (EN_NO_REPORT / EN_NORMAL_REPORT / EN_FULL_REPORT).
setOptionsStatusReportNo Set report level to no report.
setOptionsStatusReportNormal Set report level to normal.
setOptionsStatusReportFull Set report level to full.
getOptionsDemandPattern Get default demand pattern behavior.
setOptionsDemandPattern Set default demand pattern behavior.
getOptionsEmitterBackFlow Get emitter backflow setting.
setOptionsEmitterBackFlowAllowed Allow emitter backflow.
setOptionsEmitterBackFlowDisallowed Disallow emitter backflow.
setFlowUnitsCMS Set flow units to CMS.
Leakage & Demand
Function Description
getLinkLeakArea Get leakage area for a link.
setLinkLeakArea Set leakage area for a link.
getLinkExpansionProperties Get expansion properties for a link.
setLinkExpansionProperties Set expansion properties for a link.
getLinkLeakageRate Get leakage rate for a link (read only).
getNodeLeakageFlow Get leakage flow at a node (read only).
getNodeEmitterFlow Get emitter flow at a node (read only).
getConsumerDemandRequested Retrieve consumer demand requested (read only).
getConsumerDemandDelivered Retrieve consumer demand delivered (read only).
Project I/O
Function Description
openX Open an input file even if it has formatting errors (lenient parsing mode).
Statistics
Function Description
getStatisticIterations Retrieves the number of iterations taken in the simulation .
getStatisticRelativeError Retrieves the relative error statistic from the simulation.
getStatisticDeficientNodes Retrieve number of deficient nodes.
getStatisticDemandReduction Retrieve demand reduction statistics.
getStatisticTotalLeakageLoss Retrieve total leakage loss value. ...
Read more

EPyT v1.2.2

16 May 09:44

Choose a tag to compare

New Contributors

EPyT v1.2.1

09 Jan 07:26
d7b11e9

Choose a tag to compare

What's Changed

EPyT v1.2.0

01 Aug 19:36

Choose a tag to compare

fix a bug in setNodeDemandPatternIndex

EPyT v1.1.9

25 Jun 10:25
aabbc7e

Choose a tag to compare

Merge pull request #57 from ichrys03/msxundercover-2.0

function plotMSXSpeciesNodeConcentradion()

EPyT v1.1.6

11 May 10:43

Choose a tag to compare

minor fix.

EPyT v1.1.3

01 May 07:22

Choose a tag to compare

What's Changed

  • Bugfixes regarding closing EPANET and EPANET-MSX by @andreArtelt in #43
  • Fix for mac libs

EPyT v1.1.2

21 Apr 19:29

Choose a tag to compare

fixes in getMSXOptions, setMSXOptions... - add testMSXoptions

add example inp, msx