Set units: ? Hide this line
Length Map coordinates Diameter Elevation and head Pressure Flow Velocity Head loss gradient Water age Roughness

Map size
Rotate the map
X: -- Y: --
Not georeferenced
© OpenStreetMap contributors © Mapbox © OpenStreetMap © Maxar Improve this map
Visibility

Nothing is docked here yet. Everything that belongs to the whole project is in Settings.

Profile along a path
Ground surface Hydraulic grade line Pressure
Values versus time
Distribution of values
Flow balance
Properties
Find and replace
Settings

Symbology

Node labelsSaved with the project
Node colorsSaved with the project
Link labelsSaved with the project
Link colorsSaved with the project
CustomerSaved with the project
AllSaved with the project

Map and page

AppearanceSaved with the project
PageSaved in this browser

Assets

ID prefixesSaved with the project
ValuesSaved with the project
Custom properties ?Saved with the project

Calculation

UnitsSaved with the project
TimeSaved with the project
HydraulicsSaved with the project
EnergySaved with the project
QualitySaved with the project

Credits

Libraries
Fire flow analysis
Criticality analysis
Demand scaling
Pump energy report
Contour plot
Screenshot
Scenario comparison
Run report

	
Status changes
Alternatives preview
Full report
Calibration report
Fire flow run
New project
Coordinate system ?
Units ?
Convert as
Coordinate system ?
Units ?
Round converted values ?
Round converted values Suffix ?

Converting back is a second conversion, not an undo. A number converted and converted back may not return exactly as it was entered.

Coordinate system
About

LibreWaterNet.org

You are loved and cherished forever, you have nothing to fear, and you are not ruining everything.

Licensed under the GNU General Public License v3.0 or later.
Copyright © 2009–2026 Thomas Gail Haws

How it is solved
This network is solved by the EPANET solver. When a total run time is set, each reporting time step is calculated in sequence: tanks fill and drain, demands follow their patterns, and the toolbar plays back the run.
What it does not do
Water quality is modeled: water age, source trace, and a chemical that reacts at the pipe wall and in the bulk flow. Surge and water hammer are not modeled: all results are for steady or slowly varying flow, not for the transient pressure wave caused by rapid valve closure.

Credits

2026-10-09 04:50 UTC · d8b345e1

Notes on this page

Notes

Saving projects
Every project is a tab, and every tab is saved in this browser as you work. Clearing your browser data deletes them all, so keep your work in a file: File, Save as. An asterisk on a tab means it holds changes that are not in a file. Nothing is ever written to a file unless you ask. In some browsers a project connects to the file you save it to, and File, Save writes back to that same file from then on; in others no connection is possible, so Save is disabled and only Save as is available. When a project file is kept on a shared drive, this page tells you if a colleague already has it open, so that two people do not write over each other.
Pump curve
A pump follows H = H₀ − aQ^b, where H is the head the pump adds and Q is the flow through it. Enter one, two, or three points from the manufacturer’s curve. Three points, the head at zero flow, the normal working point, and the point of highest flow, fit H₀, a and b directly, and follow a published curve most closely. Two points fit a parabola (b = 2) with its peak at zero flow. One point uses a common rule: the head at zero flow is 1.33 × the head you enter, and the highest flow is 2 × the flow you enter, which again gives b = 2. A pump with no points entered adds no head. The curve is not truncated where the head reaches zero, so a flow greater than the curve can deliver produces a negative head. The remedy is a larger pump or a smaller demand, not a different curve fit. A curve can hold more than three points, and all points entered are used.
Color band boundaries stay the same
Color band boundaries are set when you choose a data classification method. They are not set again at each time step, because that would make the colors mean something new at every step, and that is not helpful for visualizing your system. EPANET works the same way. To get new boundaries, choose a method again or enter your own boundaries.
Hazen-Williams constants match EPANET
In August 2026 the Hazen-Williams coefficient and exponent were changed to match EPANET. Head loss results differ from earlier versions of this page by up to 0.1 percent, which is far smaller than the uncertainty in the C value itself.
Which EPANET this page runs
The EPANET solver on this page is OWA-EPANET 2.3.5, released on 20 February 2025. EPANET is developed by Open Water Analytics, a community that works with the United States Environmental Protection Agency, which released version 2.2.0 in December 2019. The run report calls it 2.3.05 because the engine writes the last number in two digits. It is delivered to this page through epanet-js 0.9.0 by Luke Butler, under the MIT license, and it runs in the browser: the network is never sent to a server to be solved.
Tables and Hotkeys

Tables

Table columns help
Select columnClick heading
Add or extend column selectionCtrl+click or Shift+click another heading
Move (reorder) selected column(s)Drag or use Manage columns… in right-click or ⋮ menu
Menu ⋮ and sort arrow.Hover a heading's top corner, or select or Tab into a heading
Hide, Show all, or Manage visibility and orderRight-click heading or ⋮ menu in heading top right corner
Sort by columnArrow icon in heading top right corner
Paste as new rows at end of tableRight-click, ⋮ menu in heading top right corner, or Ctrl+Shift+V
Table keyboard shortcuts
Arrow keysNavigate.
Tab, EnterFinish entry and navigate across / down one cell.
Shift+Tab, Shift+EnterNavigate backward.
Shift+arrow keysExtend the selection.
Ctrl+CCopy the selection.
Ctrl+DFill the selection down from its top row.
Ctrl+EnterFill the selection with the active cell's value.
Ctrl+ASelect the whole table.
Ctrl+Shift+VPaste as new rows at end of table.
Ctrl+Shift+PageDown, Ctrl+Shift+PageUpSwitch to the next or previous tab, whether a table or a graph.
DeleteClear a cell.
F2Open a cell to edit it.
EscCancel an edit.

Map

Map keyboard shortcuts
1 or EscSelect.
2Add a junction.
3Add a reservoir.
4Add a tank.
5Add a pipe.
6Add a pump.
7Add a valve.
8Add a customer.
9Add text.
DeleteDelete the selection.
Ctrl+ZUndo the last change.
+ or =Zoom in.
-Zoom out.

Menus

Menu keyboard shortcuts
Alt+Shift+letterOpen the menu with that letter, then press a row's letter to choose it. The letters show while you use the keyboard. On a Mac, use Ctrl+Option.
F10Go to the menu bar.

Screenshot

Screenshot keyboard shortcuts
SSnip, while Screenshot is open.
EEraser, in the markup view.
Ctrl+Z, Ctrl+YUndo and redo, in the markup view.
EscCancel a snip, or leave the eraser. In the markup view, close it when nothing is drawn.

May we save a one-digit cookie in this browser to remember that we have already counted this page? It records nothing about you and nothing you enter. Without it we cannot tell your second visit from somebody else’s first.

Privacy notice Terms of use