Nothing is docked here yet. Everything that belongs to the whole project is in Settings.
Converting back is a second conversion, not an undo. A number converted and converted back may not return exactly as it was entered.
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
2026-10-21 02:21 UTC · c375f221
Nothing matched.
| ? | Open the user manual at the toolbar button or menu row under the pointer or that has focus. Elsewhere, open it with the search field selected. The key does not open it while a field is being typed in or while a question is open. |
| F1 | Open the user manual at the entry for the box that has focus. |
| Ctrl+K | Open the user manual with the search field selected and any selected text, up to 80 characters, in it. It replaces the browser's own Ctrl+K, except while a question is open, when the user manual is not opened. |
| / | Select the search field while the user manual has focus. |
| Esc | While the user manual has focus, close it and return focus to where it was. |
Search ignores capitals and accents and lists the rows and entries that contain the text typed. Choosing a row shows where that control is. It never runs the control. On a phone, where the toolbar is folded away, a toolbar row opens the menu row that does the same thing.
The address of the page follows the entry being read, as in Looped-Network.php#guide, so it can be copied as a link to that entry. Closing the user manual clears it. The user manual remembers in this browser whether it was open, its position and size, and whether its contents list is hidden. On a phone the contents list starts hidden.
Each row is one toolbar button, in the order of the strip, with a rule between groups. A row shows the button's icon, name, and tip, then its keys. Where a menu row does the same thing, the row also shows the menu path after the words Also in. Clicking a row points at the button on the toolbar. It never runs the button. When the button is not on screen, the row opens the menu row that does the same thing.
A dimmed name belongs to a button that is not on screen now. A button that is on screen is not dimmed, whether or not it can act at that moment. Calculate is dimmed while Recalculate automatically is checked, because the button appears only when that setting is cleared.
On a phone in tall mode, only the five run controls stay on the toolbar. Every other name is dimmed, and clicking one opens the menu row that does the same thing. The Bottom panel button has no menu row, so its row can only say that the control is not on screen.
Zoom to fit and Select a window have a small triangle in the lower-right corner. Pressing the button a second time, with nothing pressed between, changes it: Zoom to fit becomes Zoom Window, and Select a window cycles through the window, lasso, and polygon shapes. Clicking the corner of Zoom to fit enters Zoom Window at once, without fitting the view.
A dimmed name is a button that is currently hidden on the toolbar.
| Alt+Shift+letter | Open 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. |
| F10 | Go to the menu bar. |
The letters after Alt+Shift are keys at fixed positions, F for File, E for Edit, M for Map, W for Water, H for Help, and L for Language, on every keyboard layout and in every language. After F10, the letter of a menu alone opens it, and Esc on the menu bar returns focus to where it was.
Rows that only a pointer can use have no letter, and the arrow keys skip them. They include Vertices, the three area selections, the Insert tools, Zoom Window, and Screenshot.
The list is drawn from the menus themselves: File, Edit, Map, Water, and Help, each under its own heading, with the rows of a fly-out indented under the row that opens it and a rule between groups. It leaves out rows that are hidden now, headings inside a menu, and rows named from the project or the browser, such as scenario names. It goes one fly-out deep, and it has no entry for the Language menu. A row that is disabled now is still listed, with no mark to show that it is disabled. Clicking a row opens the menu and fly-out with that row pointed at. It never runs the row.
| 0 or Esc | Select. |
| 1 | Junction Pipe Chain |
| A | Area select window/lasso/polygon |
| 2 | Add a junction. |
| 3 | Add a reservoir. |
| 4 | Add a tank. |
| 5 | Add a pipe. |
| 6 | Add a pump. |
| 7 | Add a valve. |
| 8 | Add a customer. |
| 9 | Add text. |
| Delete | Delete the selection. |
| Ctrl+Z | Undo the last change. |
| + or = | Zoom in. |
| - | Zoom out. |
| W | Zoom Window: drag a rectangle on the map to zoom to that area. |
Ctrl+Z undoes the last change, and Ctrl+Y or Ctrl+Shift+Z redoes it. In a Tables cell, the keys belong to the project while the cell is only selected, and to the text of the cell once typing has begun. The page keeps the last 20 steps, in memory only, and switching projects clears them. A step restores the scenarios, the open scenario, and the units along with the drawing.
Delete or Backspace deletes the selection, except while typing in a field, where the key belongs to the field. With nothing selected, Delete says so, and Backspace does nothing. One Undo reverses the deletion of several assets. In a scenario other than Base, Delete does not remove an asset that exists in Base; the Scenario manager entry describes what it does.
An Esc that closes a menu, a pull-down, or a box does nothing else. The Properties, Settings, and Libraries boxes close only when focus is in the box and the pointer is over it. With none of those open, Esc returns the active tool to Select, and in Select it clears the selection. A half-drawn pipe takes one Esc to abandon and a second to return to Select. In a field, Esc belongs to the field.
W starts Zoom Window, A starts selecting an area (pressing A again cycles the window, lasso, and polygon), and F draws a Shape. The plus or equals key zooms in, and the minus key zooms out, by one wheel step. These keys and the digits 0 to 9 do nothing on the map when another key makes them a shortcut, such as Ctrl+C, do nothing while typing in a field, and leave the letters of an open menu to its rows. A digit typed on a selected Tables cell overwrites the cell instead of choosing a tool.
| S | Snip, while Screenshot is open. |
| E | Eraser, in the markup view. |
| Ctrl+Z, Ctrl+Y | Undo and redo, in the markup view. |
| Esc | Cancel a snip, or leave the eraser. In the markup view, close it when nothing is drawn. |
| Click heading | Select column |
| Ctrl+click or Shift+click another heading | Add or extend column selection |
| Drag or use Manage columns… in right-click or ⋮ menu | Move (reorder) selected column(s) |
| Hover a heading's top corner, or select or Tab into a heading | Menu ⋮ and sort arrow. |
| Right-click heading or ⋮ menu in heading top right corner | Hide, Show all, or Manage visibility and order |
| Arrow icon in heading top right corner | Sort by column |
| Right-click, ⋮ menu in heading top right corner, or Ctrl+Shift+V | Paste as new rows at end of table |
| Arrow keys | Navigate. |
| Tab, Enter | Finish the entry and move one cell across (Tab) or down (Enter). |
| Shift+Tab, Shift+Enter | Move one cell back (Shift+Tab) or up (Shift+Enter). |
| Shift+arrow keys | Extend the selection. |
| Ctrl+C | Copy the selection. |
| Ctrl+D | Fill the selection down from its top row. |
| Ctrl+Enter | Fill the selection with the active cell's value. |
| Ctrl+A | Select the whole table. |
| Ctrl+Shift+V | Paste as new rows at end of table. |
| Ctrl+Shift+PageDown, Ctrl+Shift+PageUp | Switch to the next or previous tab, whether a table or a graph. |
| Delete | Clear the active cell. To clear a selected range, right-click and choose Delete. |
| F2 | Open a cell to edit it. |
| Esc | Cancel an edit. |
To open the pane, click the Bottom panel button or choose Water, Tables. Its tabs, left to right, are Junctions, Reservoirs, Tanks, Pipes, Pumps, Valves, Text, Customers, Shapes, Settings, Scenarios, Time series, Profile, Frequency, and Flow balance. The Scenarios tab is shown when Basic mode is cleared. Column width, order, and visibility are kept in this browser, not in the project.
A cell is in one of three states. While it is only selected, the arrow keys move from cell to cell, and Ctrl+Z is the Undo of the project. Typing a character over a selected cell starts an entry: the typed text replaces the value, and an arrow key commits it and moves to the next cell. F2 or a double-click opens the cell to edit it: the caret is in the value, and the arrow keys move the caret. In an entry and in an edit, Ctrl+Z undoes the typing. Esc cancels the entry or edit and leaves the cell selected.
Ctrl+D fills a selected range down from its top row, and Ctrl+Enter fills it with the value of the active cell. Both leave the ID column and read-only cells alone, and a notice states how many cells were filled and how many were not changed. Ctrl+Shift+L shows only the assets selected on the map. With a filter on, Ctrl+A and Ctrl+D act on the rows shown only, and a row edited so that it no longer matches stays until the filter is applied again.
In a scenario other than Base, a cell edit, Ctrl+D, Ctrl+Enter, and a paste are stored as overrides of the open scenario.
Each box can be moved, resized, docked at the left or right of the map, or closed. The ? in a box's title bar opens its help.
When the pointer leaves, a box without focus hides after a short delay. A box with focus hides when you click outside it, press Esc, or Tab out of it with the pointer elsewhere.
The corner of a box's title bar has Dock at the left of the map, Dock at the right of the map, and Float, and, once the box is docked, Auto-hide. A docked box is a column beside the map. With Auto-hide, it is a tab on a slim strip at the edge of the map. The tab opens the box on hover, after 150 ms with a mouse or pen, or on a click or tap, and the box tucks back into its tab as described above. A tucked box is still open. A menu row or toolbar button that opens it brings it out of its tab.
Dragging a docked box by its title bar floats it and turns auto-hide off. Boxes docked on one side share one width, and the map keeps at least 320 px. Tabs are reordered by dragging them or by pressing Alt+Up or Alt+Down on a focused tab.
Each box keeps in this browser where it floats, its size, whether it is open, its dock side, whether it auto-hides, its docked width, and the place of its tab. Properties, Criticality analysis, Demand scaling, and Calibration keep only their dock side, auto-hide, tab place, and whether they are open; where they float lasts for one page load. A browser with no saved layout starts with some boxes docked as tabs, and nothing is stored until a box is changed.
At 640 px or narrower, no box docks and every box fills the window. The dock buttons are not offered. A docked layout is kept and returns on a wider window.
Scope.Property condition value | One condition. The scope is Everything, Junction, Reservoir, Tank, Pipe, Pump, Valve, Text, Customer, or Source. The property is any entry in the Property list for that scope. |
| Conditions | equal to, above, below, contains, n highest, n lowest, and empty. Contains applies to text only. In n highest and n lowest, n is a count, as in 5 highest. If the Value box is empty or n is the letter n itself, as in Pipe.Velocity n highest, 10 assets are listed. Empty finds the assets that have no value for the property. Connectivity has four conditions and takes no value. |
| Values | A number is entered without its unit, in the unit shown in Properties and on the Tables pane: 40, not 40 psi. Text, including an ID, is enclosed in single or double quotes: '60'. |
| AND, OR, and parentheses | AND is evaluated before OR, and parentheses group conditions. NOT is not available. |
| Spelling | Words are not case sensitive. The English words are accepted in every language, so a query copied from this user manual runs on a page in any language. |
Open the Net3 example to follow these. Pressure is in psi and velocity in ft/s.
Everything.ID equal to '60' | Junction 60 and Pipe 60. A junction and a pipe can have the same ID, so an ID search under Everything can return more than one asset. |
Junction.Pressure below 40 | Junctions 10, 40, 50, 20, and 153, lowest pressure first. Junction 10 is at -0.6 psi, a negative pressure that requires review. |
Pipe.Velocity 5 highest | Pipes 60, 329, 125, 123, and 149, highest velocity first. Pipe 60 carries 9.3 ft/s. |
Junction.Pressure below 20 OR Pipe.Velocity above 5 | Junctions 10, 20, 40, and 50, and Pipes 60, 125, and 329: low pressures and high velocities in one list. |
Junction.Pressure below 40 AND Junction.Elevation above 100 | Junctions 10, 20, 40, and 50, the low pressures on high ground. Both conditions must name the same kind of asset: Junction.Pressure below 40 AND Pipe.Velocity above 3 matches nothing, because no asset is both a junction and a pipe. |
Pipe.Closed equal to 'closed' | Pipe 330, the one pipe that is closed in the Net3 file. |
Junction.Connectivity no open path to a source | Nothing, as the file is distributed. With Pipe 247 closed (see Replace and Undo), Junctions 215, 217, 219, and 225: the junctions that a break on Pipe 247 would leave without supply. Repeating this for each pipe is a criticality analysis. |
The matching assets are listed below the Find button. Above and n highest list the highest value first, below and n lowest the lowest value first, and other conditions list by the value found, then by ID. A query with AND or OR lists nodes, then links, each by ID. A single match is shown on the map immediately. Select a row to center the map on that asset. If nothing is selected, the asset is also selected; if something is, the asset is highlighted and the selection is not changed. Shift+click or Ctrl+click a row to add it to the selection or remove it. Find does not select all matches by itself.
The Filter in table button applies the same query to the Tables pane. Each table that the query applies to shows only the matching rows, with the query and the row count above them. To select all matches on the map, select those rows and choose Select on map from the right-click menu. A table filter is not saved with the project and ends when the page is reloaded. A row edited so that it no longer matches stays in the table, dimmed and marked with a warning sign, until the Filter in table button is pressed again.
The Change what was found part of the box writes one property on every asset the query found. Choose the property in the Property to change list, enter the new value in the New value box in the displayed unit, and press the Replace button. The box then states how many assets would change, not counting those that already have the new value. Press the Change them button to apply the change, or Cancel. One Undo reverses the whole replacement.
Example on Net1: Pipe.Diameter below 10 finds Pipes 31, 122, 113, and 121. Choose Diameter, enter 10, and press Replace; the box shows "Change 4 assets?". Press Change them to set all four pipes to 10 in. One Undo returns them to 6 and 8 in.
Example on Net3: Pipe.ID equal to '247' finds Pipe 247. Choose Closed, choose Closed again in the New value list, and press Replace, then Change them, to close the pipe for the connectivity example above. Undo opens it again.
Replace requires one kind of asset, so under Everything, first choose a kind of asset in the What to search list. In a scenario other than Base, a replacement is stored in that scenario, as the same edit in Properties would be. Where Mapbox elevations are available, Elevation can be replaced from the Mapbox DEM instead of a typed value.
Junction.ID above '20' finds Junctions 21, 22, 23, 31, and 32.Text.Text contains 'pump'.Scenarios save many designs, views, or situations in the same project, such as average day, maximum day, peak hour, a report presentation figure, a main out of service, or a proposed replacement. The network is drawn once, in the Base scenario. Every other scenario holds only its overrides, the values that differ from the scenario it inherits from, and reads everything else from that scenario. An edit to Base therefore reaches every scenario that has not overridden that value.
A new project starts with six ready-made scenarios: 1. Flow test: Static, 2. Flow test: Mid, 3. Flow test: Max, 4. Average Day, 5. Max Day, and 6. Peak hour. They are ordinary scenarios that can be renamed, edited, and deleted. Each starts with one override, its demand multiplier: 1 for the flow tests and Average Day, 2 for Max Day, and 3 for Peak hour. The multipliers are placeholders to be replaced with values for the system being modeled. A project opened from a file, including each example, or imported from an EPANET file has Base alone.
Fire flow is checked with the Fire flow analysis, which tests every junction or the selected junctions. Max Day is the scenario normally open when it is run.
The Scenario button in the status strip below the map names the open scenario and counts its overrides, as in Scenario: Base | No. of overrides: 0. Click it, or choose Water, Scenarios, to switch scenarios or to add, copy, rename, or delete one. Each scenario in the list shows its number of overrides in parentheses, and a check mark is at the open one. The Scenario manager row opens the tree of scenarios and alternatives. It is dimmed while Basic mode is checked.
The drawing, the labels, Properties, Tables, and the results all belong to the open scenario, and the page solves the open scenario only. Scenario comparison, described in its own entry, solves the others from copies. The open scenario is saved with the project.
On the map, an asset that has an override in the open scenario is ringed in amber, and an asset that inherits an override from a parent scenario or alternative is ringed with a dashed gray line. For demand, diameter, roughness, minor (local) loss coefficient, and length, a ring appears only while Settings, Symbology, Node labels or Link labels shows that value on the map; an override of any other property always has its ring. In Tables, a cell that holds a value set by the open scenario is amber, and its tip names the alternative that holds it, as in Physical alt.: Larger main. Show scenarios, in the cell menu of a table, lists every asset once for each scenario.
Each row of Properties that a scenario can override has a mark at its left. A solid dot means the open scenario overrides the value; click it to clear the override. A hollow dot means the value is inherited; click it to make the value shown an override. A triangle means scenarios below this one override the value; click it to clear their overrides, after a confirmation. Beneath an overridden row is the inherited value it replaces, as in Base scenario: 18. The Settings box has the solid dot and the triangle only, because typing a value there is what makes an override.
To hide the rings, clear Show override markers on the map in Settings, Page, or choose Map, Clean map. Both are kept in this browser, not in the project. Tables marks overrides either way.
With a scenario other than Base open, an edit to a value that scenarios can override is stored as an override in the open scenario, however it is made: typing in Properties, editing a cell in Tables, Replace in Find and replace, dragging a node or entering its coordinates, Morph (the new type is the override), or Paste properties to selection. A setting typed in the Settings box is stored as an override when scenarios can override that setting. Base is not changed. In Base, the same edits change the network itself and reach every scenario that has not overridden the value.
Delete acts differently. In a scenario, Delete does not remove an asset that exists in Base. It makes the asset inactive in the open scenario, and for a node also its pipes, and a message states this. The asset is still in the drawing and in the other scenarios. An asset drawn while a scenario is open is inactive in Base and active in that scenario, and Delete in that scenario removes it. Deleting an asset in Base also deletes its overrides in every scenario, after a question that counts them. Customers and Shapes belong to no scenario and are deleted outright.
The Override manager row of the Scenarios list opens a list of every override of the open scenario by category, each beside the inherited value it replaces. A time series graph on the map that the scenario opened, moved, or changed is a row of its own. Check rows and click Clear selected overrides, click Clear override in one row, or click Clear all overrides. Each value then returns to the inherited value, and Undo reverses it. Select an ID in the list to go to the asset on the map. The dot in Properties and the Clear override row in the cell menu of Tables clear one override at a time.
| Properties | Every property of a node or link except those listed below, including its position, whether it is active, and its type (Morph). A Text can override its words, position, size, alignment, bold, angle, and whether it is shown. A custom property can always be overridden. The properties are held in the categories Physical, Demand, Active topology, Initial settings, Constituent, Fire flow, Energy cost, Custom properties, Text, Presentation, and Calculation. |
| Settings | The settings saved with the project, except those listed below: the calculation options (for example the demand multiplier, total run time, hydraulic time step, and friction method), the default demand pattern, the values given to new assets, and the presentation settings (sizes, colors, labels, contours, the map view, and the time series graphs on the map). |
| The same in every scenario | The ID, Description, and Tag of an asset; the end nodes and bends of a link; Customers and Shapes; the units and the coordinate system; and the contents of the Libraries (patterns, curves, pipe types, fittings lists, controls, and rules). An edit to any of these changes every scenario. A scenario can point an asset at a different curve, pipe type, fittings list, or pattern, but cannot change what is in them. |
Open the Net1 example. Choose Water, Scenarios, New scenario…, type Larger main, and click OK. Select Pipe 10 on the map and enter 24 for Diameter in Properties; Base has 18 in., shown beneath the field as Base scenario: 18. Choose Base in the Scenarios list, choose New scenario… again, type Max day, and enter 1.8 for Demand multiplier in Settings, Calculation, Hydraulics. Then choose Water, Reports, Scenario comparison.
| Scenario | No. of overrides | Demand multiplier | Lowest pressure | Highest velocity |
| Base | 0 | 1 | 108 psi at N32, 14:00 | 2.76 ft/sec at L11, 16:00 |
| Larger main | 1 | 1 | 109 psi at N32, 14:00 | 2.87 ft/sec at L11, 16:00 |
| Max day | 1 | 1.8 | 15.77 psi at N32, 9:00 | 3.49 ft/sec at L10, 8:00 |
The total run time is 24:00 in all three, so each lowest pressure and highest velocity is the extreme over the day, at the time shown. The larger main raises the lowest pressure by about 1 psi. A multiplier of 1.8 lowers it to 15.77 psi at 9:00, and the highest velocity moves to Pipe 10. Each scenario holds one override, and Base keeps its values.
| Patterns | A list of multipliers that repeats for as long as a run lasts, one multiplier for each pattern time step. A new pattern is 24 multipliers of 1. Pasting a spreadsheet column fills the Multipliers box. The default demand pattern is marked (default) and is chosen in Settings, Calculation, Hydraulics. |
| Curves | Four kinds, chosen as the Curve type: Pump head, Pump efficiency, Tank volume, and Valve head loss. The points are entered in a grid that accepts a pasted spreadsheet column or lines copied from an EPANET file. A pump head curve is fitted through its points and the Equation line shows the fit; one point is read as the design point, with a shutoff head of 1.33334 times its head and a maximum flow of 2 times its flow, as EPANET reads it. The other kinds join their points with straight lines. A pump or valve states its curve in Properties, where the Curves link opens this section. |
| Pipe types | A definition of diameter, roughness, and reaction coefficients that several pipes refer to. A property may be left blank in the definition and then entered for each pipe. In Properties, the values a pipe type states are disabled, and Detach from pipe type copies them into the pipe and stops the pipe using the type. |
| Fittings | Lists of fittings with a quantity for each, added up to one minor (local) loss coefficient, k, for a pipe or pipe type. The fittings offered are the thirteen in Table 3.3 of the EPANET 2.2 user manual and Other fitting. Choosing one copies its coefficient into the row, where it can be changed. |
| Controls | One statement each, in EPANET syntax, as in LINK id OPEN IF NODE id BELOW value. Under each, the box states whether it was understood. |
| Rules | Several lines each, in EPANET syntax: RULE, IF, AND, OR, THEN, ELSE, and PRIORITY. Under each, the box states whether it was read. |
An ID is changed in its section. A blank ID, or an ID already used in the same section, is not accepted. Renaming an item moves every reference to it, in Base and in every scenario. For a pattern, the references are a junction's demand pattern and the pattern of each of its demand categories, a Customer's demand pattern, a reservoir's head pattern, a pump's speed pattern, and the default demand pattern.
A pattern that is in use can be deleted, and each reference to it is cleared. If it was the default demand pattern, a notice states what junctions with no pattern use now. A curve, pipe type, or fittings list that is in use is not deleted. The message names the assets that use it, and each must be given another curve, or detached from the type or list, first.
The Libraries are the same in every scenario. A scenario can point an asset at a different curve, pipe type, fittings list, or pattern, which is an override of that asset, but the contents of an item are not overridden. An edit to a pattern, curve, pipe type, fittings list, control, or rule changes it for every scenario, whichever scenario is open. The default demand pattern is a setting rather than an item, and a scenario can have its own.
A control or rule that names an asset which is inactive in the open scenario is ignored in that scenario's run, and the Libraries box lists it. One that names an asset the project does not have is also ignored, with a warning.
A control is one statement. A rule is several lines that begin with RULE. Keywords are typed in English whatever the language of the page, and numbers are in the units of the project. Add a control starts from a statement built from the network, which is then edited into the one intended.
Controls and rules change a result only in an extended-period simulation, that is, when Total run time is greater than 0. A steady-state solution is not changed by either. Rules are applied by the EPANET engine only. Both are saved with the project and written to an EPANET file.
File, Import…, Libraries… opens another project file and copies whole libraries from it into this project. An item whose name is already used here is skipped and listed, so nothing already here is changed. A warning is shown when the file and the project state a quantity in different units, and the items are imported as written. Pipe types that refer to a fittings list this project does not have are listed; import the fittings library from the same file to resolve them.
Open the Net1 example and choose Water, Libraries. Patterns holds pattern 1, Demand Pattern, with 12 multipliers 2:00 apart, covering 24:00, marked (default). Curves holds curve 1, Pump Curve for Pump 9, a Pump head curve with one point, 1500 gpm at 250 ft. Controls holds two statements: the first opens Link 9 when Node 2 falls below 110, and the second closes it when Node 2 rises above 140. Rules holds two rules that test the clock time and the level of Tank 2.
Choose Water, Calculate, and then Water, Reports, Status changes. Pump L9 is now closed at 10:00, now open at 15:00, and now closed at 21:00, and Tank N2 is now emptying at 22:00. In Controls, change 140 to 135 in the second control and choose Water, Calculate again. The last closing moves to 20:00, and Tank N2 is now emptying at 21:00.
In Select mode, click a node, link, Text, or Customer to open Properties beside it, or where the box was last moved. Shift-click another asset to add it to the selection. With more than one asset selected, the box lists what can be set on all of them at once (see Several assets selected, below). A Shape has no Properties box, because its points are edited on the map.
The right-click menu of a node or link has Copy properties, Paste properties to selection, and Time series graph. On a touch screen, press and hold the asset for the same menu. Time series graph needs the results of an extended-period simulation.
A value takes effect when the field is committed, by leaving it or pressing Enter. It is read in the unit named in its label, with no conversion, and the map label, Tables, and the results follow. Calculated values are read-only rows with no box to type in. For a link they follow its inputs, and for a node they sit among them. They are the results of the last calculation, at the time shown, and with Recalculate automatically cleared they are those of the last Calculate.
A pipe that uses a pipe type shows the values the type states as disabled. Click Detach from pipe type to copy those values into the pipe and edit them there.
The ID is edited in the title bar. It cannot contain a space or a quotation mark, and a node's ID cannot be that of another node, nor a link's that of another link. A node and a link can have the same ID. A refused ID leaves the old one in place and shows a message. Renaming an asset carries its scenario overrides with it.
In a scenario other than Base, an edit to a value that scenarios can override is stored as an override of the open scenario, and the row is marked at its left. The Scenario manager entry describes the marks and lists what is the same in every scenario: the ID, Description, and Tag are. A Customer has no scenario values. Switching scenarios leaves Properties open on the same asset, showing the values of the scenario that is now open.
The title reads, for example, 2 selected. The box has one section for each type of asset in the selection, headed by the name of the type and the number of assets of it, as in Pipes (2), and each section can be collapsed. A section lists the properties that Tables has as columns and that can be set on every asset in it. Results and values that a pipe type states are not listed. A row shows the value the assets share, or Various where they differ.
Typing a value into a row sets it on every asset of that type in the selection. A row that is not touched writes nothing. A notice states the count, as in Set Diameter (in) on 2., and one Undo reverses the whole row. In a scenario other than Base the values are stored as overrides.
Open the Net1 example and click Pipe 10. Properties lists its inputs, from Description to Is active?, and then its results at the time shown: Flow 1866.2 gpm, Velocity 2.4 ft/sec, and Head loss 19.12 ft H2O.
Click Pipe 113 and Shift-click Pipe 31. The title reads 2 selected, the one section is Pipes (2), and Diameter shows Various, because Pipe 31 is 6 in. and Pipe 113 is 8 in. Enter 10 for Diameter. The notice reads Set Diameter (in) on 2., both pipes are 10 in., and one Undo returns them to 6 and 8 in.
The list at the left of the box jumps to a section or a sub-heading. The sections are Symbology (Node labels, Node colors, Link labels, Link colors, Customer, and All), Map, Page, Assets (ID prefixes, Values, and Custom properties), Calculation (Units, Time, Hydraulics, Energy, and Quality), and Credits. Each sub-heading states whether its settings are Saved with the project or Saved in this browser. Everything is saved with the project except the settings under Page and one row in Hydraulics, Show the run progress box, which states Saved in this browser itself.
The Settings tab in Tables lists the same settings as rows, with their Category and Value, so a setting can also be found and audited there.
Type one or more words in Search settings to list only the settings that mention all of them, in the name or in the tip. A word that matches a heading shows every setting under that heading. For example, opacity lists Symbol opacity (0 to 1) and Background image opacity (0 to 1); opacity symbol lists the first alone; and sprinklers lists Emitter exponent, whose tip mentions sprinklers and whose name does not. The search changes no setting.
In a scenario other than Base, a value typed for a setting that scenarios can override is stored as an override, and the row is marked with a solid dot. A triangle marks a setting that scenarios below the open one override. The Scenario manager entry lists which settings can be overridden. Units are the same in every scenario. Restore defaults is dimmed outside Base, and Apply these new-asset values to every existing asset is refused there, because it changes the drawing itself.
Each quantity has its own unit in Units. When values in the project are entered in that unit, changing it asks a question first. Non-destructive keeps every number as typed and reads it in the new unit. Destructive rewrites the numbers by conversion, so the network stays physically the same, and the original numbers are lost unless Undo is used; one Undo restores the numbers and the unit. Cancel leaves everything as it was.
Example on Net1: choose mm for Diameter in Units. Destructive rewrites 13 values, and Pipe 10 reads 457.2 mm. Non-destructive leaves the 13 values alone, and Pipe 10 reads 18 mm.
ID prefixes and Values are for assets drawn from now on. They do not change assets already drawn. Apply to all, beside an ID prefix, gives every existing asset of that kind an ID that starts with the prefix; each keeps its number, and an ID that does not end in a number is not changed. Apply these new-asset values to every existing asset replaces those properties on every existing asset, after a question, but only for the properties whose labels are showing on the map. Undo reverses it.
Restore defaults asks first, and then returns ID prefixes, new-asset values, solver settings, map appearance, legend position, and visible labels of the open project to their original values. The network is not changed, other projects are not affected, and one Undo puts the settings back.
Start fresh asks first, and then deletes every project, every background image, all settings, and the unit choices saved in this browser, and reloads the page as a new visitor would see it. It cannot be undone.
Each tested junction gets two tests, on a copy of the network at the time step on screen and in the open scenario. The first asks how much flow the junction can deliver while it holds the residual pressure. A flow is drawn at the junction, and repeated solves narrow it down, up to a ceiling equal to 10000 gpm. A junction that still holds the residual pressure at the ceiling is reported as delivering more than the ceiling. The second test, the design check, draws the required flow at the junction and asks whether any other junction in its scope falls below the Lowest system pressure allowed, or any pipe in its scope runs above the Highest velocity allowed. The design check is not made when its scope is None.
A junction with its own Required fire flow property is tested against that value, and every other junction against the value in the box.
The summary counts the junctions that passed all checks, the junctions that failed the fire flow, and the junctions that affected the rest of the system. The table lists, for each junction tested, the Static pressure before any fire flow is drawn, the Required flow, the Pressure at required flow, the Available flow, the Residual held, the Worst effect and Design limit of the design check, the number of Runs, which is the number of solves of the whole network, and the Failure modes. A cell with no number shows a dash, never a zero. A junction that could not be solved shows its reason in place of numbers. The table prints at most 200 junctions and states how many it did not print.
After a run, the circle of each tested junction is outlined on the map according to its result, and the outlines differ in dash pattern as well as in color. Choose Selected junctions to test only the junctions selected on the map; anything else that is selected is counted and not tested. Stop ends a run and keeps the junctions already finished. Only one of the fire flow, criticality, and demand scaling analyses runs at a time.
When the project has an extended-period simulation, choose A fire for a stated duration under Reporting step tested. The Required fire flow is then drawn at the one junction selected on the map, starting at the time in Fire starts at and lasting for the Fire duration, both whole multiples of the pattern time step. The whole simulation is run on a copy of the network and compared with the same simulation without the fire. The summary states whether the junction holds the Residual pressure to hold during the fire, the lowest pressure anywhere, whether any tank empties, and whether the system recovers after the fire. One table gives the lowest level of each tank, and another gives the pressure at the fire junction at every reporting step.
Open the Net1 example, choose Water, Analyze, Fire flow analysis…, and click Run with the box as it opens. The time step is 0:00, and the run solves the whole network 135 times. Eight of the nine junctions pass all checks. Junction N32 fails the fire flow: its static pressure is 111 psi, only 1.19 psi remains at the required 1000 gpm, and its available flow is 892 gpm. Junction N31 can deliver 1339 gpm, and Junction N12 more than 10000 gpm.
For each link in the scope, the link is made inactive on a copy of the network, and the copy is solved at the time step on screen in the open scenario. A run is one solve for each link and one more with nothing broken. A junction left with no open path to a reservoir or tank is cut off: it is removed before the solve, and its demand is counted as Demand not served. Of the junctions still connected, Junctions below minimum lists those whose pressure falls below the Lowest pressure allowed. A junction that is already below it with nothing broken is not counted against any link, and the summary states how many there are. Lowest pressure allowed is the same setting as the Lowest system pressure allowed box of the Fire flow analysis.
A dead-end link is one whose removal cuts off junctions that can be reached only through it. Everything beyond it is its loss, so with Skip dead ends checked the link is not solved, and the summary states how many were skipped. The list shows, for each link, the Demand not served, the Junctions cut off, and the Junctions below minimum, each with the number and the first five IDs, and a click on an ID goes to it on the map. Links that cost the system something are listed first until a column heading is clicked to sort, and the summary counts them against the number of links tested. Choose Selected links to break only the links selected on the map.
Open the Net1 example, choose Water, Analyze, Criticality analysis…, enter 116 for Lowest pressure allowed, and click Run. The time step is 0:00, and the run solves the whole network 14 times. Four of the 13 links drop a junction below 116 psi when they are out: L9 (N10, N11, and N21), L10 (N11 and N21), L111 (N21 and N22), and L112 (N21 and N22). Two junctions are already below 116 psi with nothing broken and are not counted. Because Net1 is looped, losing one link never leaves a junction without supply.
Run multiplies the demands at the chosen junctions by the Demand scale, on a copy of the network at the time step on screen and in the open scenario. It makes two solves, one with the demands as they are and one scaled. The result lists the Lowest pressures and the Highest velocities, each with the Scaled value beside the Unscaled one, which is the value the map shows. Each list holds ten rows, and the box states how many links it does not show. The Demand scale is applied in addition to the demand multiplier of the open scenario, and it is never saved in the project.
Find searches demand scales from 0 to 20, to the nearest 0.01, for the largest one at which every chosen junction keeps at least the Lowest pressure allowed. It reports the scale and the lowest pressure there, and the same for the next step up, where the pressure first falls below the limit. If the demands as entered already leave a junction below the limit, the answer is marked with a warning sign. If every junction keeps the limit at 20, the answer says so. Stop ends a search without an answer. Lowest pressure allowed is the same setting as the Lowest system pressure allowed box of the Fire flow analysis.
With Selected junctions, only the junctions selected on the map are scaled and checked. Other junctions are left as they are, and those that fall below the limit are listed without limiting the answer. Only the time step on screen is scaled, and levels and statuses are taken from it. To test the peak, move the clock to the peak demand before running.
Open the Net1 example and choose Water, Analyze, Demand scaling…. At the time step 0:00, click Find with the box as it opens. Every junction keeps at least 20 psi up to a demand scale of 5.76, where the lowest pressure is 20.11 psi at junction N32. At 5.77 it is 19.8 psi, and the search took 13 solves. Enter 3 for Demand scale and click Run: Junction N32 falls from 111 psi, unscaled, to 85.99 psi, and Link L112 rises from 0.535 ft/sec to 3.13 ft/sec.
Choose Water, Reports, Pump energy. The report integrates the power of each pump over the last extended period simulation, so it needs a Total run time greater than 0 and a calculation. For each pump it lists the % of run, the Effic., the Avg. kW, the Peak kW, the kWh, and the Cost. The Avg. kW is the average while the pump was running, not over idle periods. Below the table are the Energy used, the Cost of energy, the Peak power usage, the Cost of peak demand, and the Total cost. A network with no pumps has nothing to report.
Settings, Energy holds the Pump efficiency (percent), used for every pump that has no efficiency curve, the Price of power for one kilowatt hour, a Price pattern that multiplies the price at each pattern step, the Peak demand charge per kW, and a Currency text that is printed beside the costs and does not convert the costs. A pump can have its own price, price pattern, and efficiency curve in Properties. The prices, the pattern, the peak demand charge, the Pump efficiency (percent), and a pump's own values are in the Energy cost category, so a scenario can override them. When no price is stated, or the price is zero, every cost is zero and the report says so. The application suggests no price.
Open the Net1 example, which has a total run time of 24:00, and calculate. Choose Water, Reports, Pump energy. Pump L9 runs for 65.71% of the run at an efficiency of 75%, and uses 96.22 kW on average, 96.71 kW at the peak, and 1518 kWh. No price is stated, so the cost is 0 and the report says so. Enter 0.12 for Price of power in Settings, Energy, and calculate again: the cost of L9 is 182, the Total cost.
Choose Water, Graphs, Contour. The row turns the plot on in the open scenario, as a smooth fill with labeled lines, using the pressure if the nodes are not colored yet, and opens the box. The plot spreads the node colors along the pipes and up to a set multiple of the median pipe length beside them, fading out over the outer part. It does not color across pumps, valves, or closed links. The line under the color key states how many nodes and pipes the plot uses, the reach beside the pipes, and the interval of the lines. With too few nodes, it says so.
Show contours, when cleared, hides the fill and the lines and keeps the node colors. The box also holds Color nodes by and Color scheme, which are the same two settings as in Settings, Symbology, Node colors, the Fill (None, Smooth, or Bands, which paints each class flat), the Fill opacity, the Contour lines with their Interval and Labels, and the Buffer in multiples of the median pipe length. In a project placed on the Earth, the box can also take the ground between nodes from Mapbox DEM, after the visitor agrees to send the tile numbers of the network's area. These settings are saved with the project and can be overridden by a scenario. The plot changes only the display, not the network.
Open the Net1 example and choose Water, Graphs, Contour. The nodes are colored by pressure, and the line under the color key states 9 nodes, 11 pipes, a reach of 2.5 times the median pipe length beside them, and lines every 5 psi. The pump, Link 9, is not one of the 11 pipes. When Show contours is cleared, the nodes stay colored by pressure.
Choose Water, Reports, Run. The report is the text that the EPANET engine wrote for the last extended period simulation, in pages. It starts with the banner and the name of the network, then counts the junctions, reservoirs, tanks, pipes, pumps, and valves, then states the analysis options, and then lists the hydraulic status of the run with its warnings. The Copy button copies the text.
Open the Net1 example, which has been calculated already, and choose Water, Reports, Run. The summary counts 9 junctions, 1 reservoir, 1 tank, 12 pipes, 1 pump, and 0 valves. The headloss formula is Hazen-Williams, the hydraulic timestep is 1.00 hrs, and the total duration is 24.00 hrs.
Choose Water, Reports, Status changes. Each row gives the time of a change and the change: a pump, valve, or pipe now open or now closed, or a tank now filling, emptying, full, or empty. A time step that did not fully converge is listed too. The list is in time order and holds only changes, not every step. It is read from the same extended period run as the Tables pane and the Full report.
Open the Net1 example and choose Water, Reports, Status changes. Tank N2 is now filling at 1:00, emptying at 11:00, filling at 16:00, and emptying at 22:00. Pump L9 is now closed at 10:00, now open at 15:00, and now closed at 21:00.
Choose Water, Reports, Full. The table has one row for each node and link at each reporting time step, in the units of the Tables pane. Its columns are Type, ID, Demand, Head, Pressure, Chlorine concentration, Flow, Velocity, Head loss, Pump head, and Status, and a cell is blank where the asset has no such quantity. The Time step list chooses the step shown, and Download CSV and Print report carry every step. Without an extended period simulation, the table shows the current solution at one instant.
Open the Net1 example and choose Water, Reports, Full. The 24 assets are listed at 25 reporting steps, 0:00 to 24:00, which is 600 rows. At 0:00, Junction 11 has a demand of 150 gpm, a head of 985.23 ft H2O, and a pressure of 119.26 psi.
Open the Net1 example, press Ctrl+K, and type critical. Menus shows the row Criticality analysis… under Water, Analyze. Boxes shows the entries that mention it, among them Find and replace, Fire flow analysis, and Criticality analysis, and this entry. Choosing the row shows where Criticality analysis… is in the Analyze menu, and does not run it.
Choose Water, Reports, Calibration. The Parameter list chooses what the file measures: Demand, Head, Pressure, Chlorine concentration, Flow, or Velocity. One file is held for each parameter, and the Load calibration file… button opens a file chooser. The report has three pages. Statistics gives, for each location, the number of observations, the observed mean, the computed mean, the mean error, and the RMS error, then a Network row for all locations together and the correlation between the means. Correlation plot puts each measurement at its observed value across and its computed value up, with a diagonal line where the two agree. Mean comparisons draws the observed and computed means as a pair of bars for each location.
The computed value is read from the extended period run, and a measurement between two reporting steps is compared with the value interpolated between them. A measurement outside the times the run reported is skipped and counted. With a single instant solution, every measurement is compared with that one result, whatever time the file gives. The report fills in after the network is calculated.
A text file with a location ID, a time, and a measured value on each line. The time is measured from the start of the simulation, in decimal hours or hours:minutes. A semicolon starts a comment. A line with only a time and a value belongs to the location above it. The values are read in the project's units, and the report says which unit. A location that is not in the network is listed and its measurements are counted as skipped, a line that cannot be read is listed by line number, and the rest of the file is used. A file is held in memory for the open project and this page load only. It is not saved with the project or on this device. When the Time series chart shows the same quantity, the measured values are drawn on it as rings.
Open the Net1 example, calculate it, and choose Water, Reports, Calibration. With Pressure chosen, load a file that gives Junction 11 as 118.5 psi at 0:00 and 121.0 psi at 12:00, Junction 31 as 110.2 psi at 6:00 and 108.7 psi at 18:00, and Junction 99 as 50 psi at 0:00, followed by a line that is not data. The report says the file has 5 measurements at 3 locations, names Junction 99 as not in the network with 1 measurement skipped, and lists the unreadable line. Statistics shows Junction 11 with 2 observations, an observed mean of 119.75 psi, a computed mean of 116.53 psi, a mean error of 3.98, and an RMS error of 5.12. Junction 31 has 109.45, 118.71, 9.26, and 9.79. The Network row has 4 observations, a mean error of 6.62, and an RMS error of 7.81.
| Scenario | The name of the scenario. The open scenario is marked (currently open). |
| No. of overrides | The overrides of the scenario itself, counted as in the Scenarios list. A calculation option such as the demand multiplier counts as one, and an override equal to the inherited value counts. |
| Demand multiplier, Total run time, Hydraulic time step | The values the scenario was solved under, its own or those of the project. A steady-state scenario shows a dash for the time step. |
| Lowest pressure | The lowest pressure at a junction, with its ID and the time it occurs. Reservoirs and tanks are left out because each has a fixed head. |
| Highest velocity | The highest velocity in a pipe or valve, with its ID and the time it occurs. Pumps are left out. |
A scenario with a Total run time greater than 0 is run over the whole period through the EPANET engine. Its lowest pressure and highest velocity are the extremes over every time step, each shown with its time. A scenario with a Total run time of 0 is solved at one instant. The total run time is one of the options a scenario can override, so one table can hold both kinds.
Below the table, Results by asset lists one row per asset of the type chosen in Asset type, with one column for each checked result in each scenario, for example the pressure at every junction in Base, Max day, and Peak hour. A scenario with a total run time is read at the time step on screen, or at its last time step if its run ends sooner, and each heading shows the time read. A scenario that cannot be solved keeps blank columns and a note that says why, and a scenario that did not converge is marked (not converged) in its headings. Copy puts the table on the clipboard as tab-separated text, ready to paste into a spreadsheet. Download CSV saves the same table as a file. Both carry the units in the headings and the numbers in full, without the rounding shown in the box. A flow keeps the solver's internal direction sign: positive runs from the From node to the To node, and negative is the reverse. The sign has no use outside this table except to show whether a flow changed direction between scenarios.
May we save a random code in this browser, so we don't count you again? The code is made up on the spot, says nothing about you or your device, and records nothing you enter.