## All functions

velocity() reynolds_number() colebrook()
Calculates the Darcy-Weisbach Friction Factor f
darcyweisbach()
Solves the Darcy-Weisbach Equation for the either head loss (hf), flow rate (Q), diameter (D), or roughness height (ks).
hardycross()
Applies the Hardy-Cross method to solve for pipe flows in a network.
manningc()
Solves the Manning Equation for gravity flow in a circular pipe
manningt()
Solves the Manning Equation for water flow in an open channel
moody()
Creates a Moody diagram with optional manually added points
operpoint()
Uses input pump and system curves to find the operating point for a pump and create a plot.
pumpcurve()
Fits a polynomial curve to three or more points from a pump characteristic curve to be used in solving for an operating point of the pump in a piping system.
spec_energy_trap()
Creates a specific energy diagram for a trapezoidal channel
systemcurve()
Creates a system curve for a piping system using the static head and a coefficient.
dvisc() dens() kvisc() svp() surf_tension() Ev()
Functions to calculate water properties: density, dynamic and kinematic viscosity, saturation vapor pressure, surface tension, and bulk modulus.
xc_circle()
Creates a cross-section plot for a partially filled pipe
xc_trap()
Creates a cross-section plot for an open channel