Skip to content

Channels (Manning, normal/critical depth)

HDAT sizes open channels using Manning equation and computes:

  • normal depth \(y_n\)
  • critical depth \(y_c\)
  • regime classification (subcritical/supercritical)

Manning equation

\[ Q = \frac{1}{n}\cdot A \cdot R^{2/3}\cdot S^{1/2} \]

Where:

  • \(Q\): discharge (\(m^3/s\))
  • \(n\): Manning roughness
  • \(A\): flow area
  • \(R\): hydraulic radius \(= A/P\)
  • \(P\): wetted perimeter
  • \(S\): bed slope (dimensionless)

Geometry (legacy formulas)

Triangular (side slope \(z:1\), depth \(y\)):

[ A = z y^2 ] [ P = 2y\sqrt{1+z^2} ]

Rectangular (width \(w\), depth \(y\)):

[ A = wy ] [ P = w + 2y ]

Trapezoidal (bottom width \(w\), side slope \(z:1\), depth \(y\)):

[ A = (w+zy)\cdot y ] [ P = w + 2y\sqrt{1+z^2} ]

Normal depth \(y_n\)

Legacy behavior solves \(y_n\) iteratively by finding \(y\) such that computed \(Q(y)\) matches target discharge.

Recommended safeguards:

  • iteration caps
  • monotonic bracketing for stable convergence
  • clear “no solution” errors for invalid inputs

Critical depth \(y_c\)

Rectangular closed form:

\[ y_c = \left(\frac{(Q/w)^2}{g}\right)^{1/3} \]

Triangular/trapezoidal are solved iteratively using the critical flow condition.

Regime classification

  • if \(y_n < y_c\)supercritical
  • else → subcritical