Water Distribution Network Simulator — Interactive Hazen-Williams Teaching Tool

Free interactive water distribution network simulator. Adjust junction demand and trunk-main diameter on a small reservoir-and-pipe network and watch pipe velocities and residual node pressures recompute live with simplified Hazen-Williams head-loss calculations — a teaching approximation, not a certified EPANET-style design tool.

← Environmental & Water Resources Studio
About this tool — how it works & FAQOpen ▾Close ▴

About the Water Distribution Network Simulator

This free tool lets you explore how a small water distribution network responds to changing demand and pipe sizing. A single reservoir (fixed hydraulic grade line) feeds six junction nodes through a branched tree of pipes, each with its own length, diameter, and Hazen-Williams C-factor. Move a junction's demand slider or the trunk main's diameter slider and the whole network recomputes instantly — every pipe is recolored by flow velocity and every node by estimated residual pressure, with the full calculation shown when you click on it.

How the network is solved

Because this network is a tree (no loops), the flow in every pipe can be found exactly by mass balance — the flow through any pipe equals the sum of all demand downstream of it, no iteration required. That flow is then run through the Hazen-Williams head-loss equation for each pipe, and the head losses are subtracted cumulatively from the reservoir's hydraulic grade line (HGL) to get the HGL — and therefore the residual pressure — at every downstream junction. This is exact for a branched network under steady demand, but it is not what a real EPANET model does for a looped system, where flow splits between parallel paths and must be solved iteratively (Hardy Cross or gradient methods).

The Hazen-Williams equation

h_f = 10.67 · L · Q^1.852 / (C^1.852 · D^4.87), the same SI form used throughout this studio's Hazen-Williams Pipe Flow Calculator. Head loss climbs steeply with flow (to the 1.852 power) and drops even more steeply as diameter increases (to the 4.87 power) — which is why the single trunk-main diameter slider in this tool has such an outsized effect on pressure everywhere downstream, and why utilities upsize trunk mains long before they upsize laterals.

Reading the color coding

Pipes are colored by velocity: green at or below 4 ft/s (normal), amber from 4–8 ft/s (high — worth reviewing), and red above 8 ft/s (excessive — a strong sign a pipe is undersized for the demand it's carrying, and a real risk factor for pressure surges and accelerated wear). Nodes are colored by estimated residual pressure: green at 35 psi or higher (a healthy working pressure), amber from 20–35 psi (marginal), and red below 20 psi, the typical minimum working pressure required by most U.S. state drinking-water regulations during normal operation.

What this tool intentionally leaves out

This is a teaching approximation, not a design or certification tool. It has no minor (fitting/valve) losses, no pumps or pressure-reducing valves, no elevated-tank drawdown over time, no fire-flow or transient (water-hammer) analysis, and — because the network is a tree rather than a looped grid — no parallel-path flow splitting. Real distribution system design and capacity work uses a validated hydraulic model such as EPANET, calibrated against field pressure and flow data.

Frequently asked questions

Why does raising one junction's demand change the pressure at other junctions?

Every downstream pipe's flow includes that junction's demand (flow = sum of all demand downstream of the pipe), so increasing demand anywhere raises the flow — and therefore the head loss — in every pipe between the reservoir and that junction. Because head loss is subtracted cumulatively down the tree, that higher head loss lowers the hydraulic grade line, and so the pressure, at every junction fed through those same upstream pipes.

Why is only the trunk main's diameter adjustable?

The trunk main (Reservoir → J1) carries the combined flow of the entire network, so it has the largest effect on system-wide pressure per inch of diameter change — exactly why real utilities prioritize trunk-main sizing and rehabilitation over lateral upsizing. The other five pipes keep fixed, realistic diameter/material/C-factor combinations (from an aging cast-iron branch to a smaller PVC lateral) so you can compare how pipe condition, not just size, drives velocity and head loss.

What does a negative estimated pressure mean?

It means the model's demand and pipe sizing combination would require more head than the reservoir can physically supply along that path — the simplified math still runs the numbers, but a negative number is not a real operating condition; it flags that the network as configured cannot deliver that demand. In a real system this would show up as extremely low or zero flow at the affected taps, not literal negative pressure.

How is this different from a real EPANET hydraulic model?

EPANET (and similar tools) solves the full nonlinear system of continuity and energy equations for arbitrarily looped networks using iterative methods, and can model pumps, valves, tanks filling and draining over an extended-period simulation, and water quality. This simulator is deliberately restricted to a tree network so the flows can be solved exactly by simple mass balance — a fast, transparent way to build intuition about Hazen-Williams head loss, but not a substitute for a calibrated hydraulic model in professional design.

Related tools & guides