Skip to content
cfd-lab:~/en/posts/2026-07-02-froude-hydrau…online
NOTE #092DAY THU 유체역학DATE 2026.07.02READ 6 min readWORDS 1,080#유체역학#Froude-Number#Hydraulic-Jump#Open-Channel-Flow#유동현상

The Shock Wave in Your Kitchen Sink — Froude Number and the Hydraulic Jump

Specific energy, critical depth, and the shallow-water to gas-dynamics analogy

Turn on the faucet and let water fall onto the flat bottom of your sink. A thin, fast sheet spreads out from the point of impact, and then at some radius the water suddenly piles up into a thick ring. That ring is a hydraulic jump. This everyday kitchen event, remarkably, obeys the same equations as a shock wave born in a supersonic nozzle. This post walks through the Froude number that governs open-channel flow, why the water depth can leap in an instant, and how shallow water mimics a compressible gas — using a little Python and two simulations. By the end you'll see why the ring in your sink and the shock in a de Laval nozzle are cousins.

Flow That Doesn't Fill a Pipe#

An open channel is a waterway with its top open to the atmosphere. Rivers, drainage ditches, and irrigation canals all qualify. Water filling a closed pipe is pushed by a pressure difference between inlet and outlet. Open-channel water is different. Bed slope and gravity drive the flow.

The key is that the free surface can rise and fall. Waves propagate along that surface. In shallow water, the speed of a small surface wave depends on depth alone.

c=ghc = \sqrt{g h}

Here cc is the shallow-water wave speed, gg is gravitational acceleration, and hh is the flow depth. Deeper water carries faster waves.

Specific Energy and Critical Depth#

The energy of the flow measured relative to the bed, expressed as a head (energy per unit weight, in length units), is the specific energy. In a rectangular channel of constant width bb, writing the discharge per unit width as q=Q/bq = Q/b,

E=h+u22g=h+q22gh2E = h + \frac{u^2}{2g} = h + \frac{q^2}{2 g h^2}

The first term hh is potential energy (depth); the second is kinetic energy. Fix qq and plot EE as a function of hh, and an interesting curve emerges. Make the depth too shallow and velocity blows up the kinetic term; make it too deep and the potential term dominates. Somewhere in between, EE reaches a minimum.

Solving dE/dh=0dE/dh = 0 gives the depth at that point.

hc=(q2g)1/3h_c = \left( \frac{q^2}{g} \right)^{1/3}

This hch_c is the critical depth. There, Emin=32hcE_{\min} = \tfrac{3}{2} h_c, and the velocity exactly equals the wave speed: uc=ghcu_c = \sqrt{g h_c}.

Play with the diagram below. Change qq and the depth hh to see which branch of the curve you ride.

u = q/h = 4.00 m/s
Fr = u/√(gh) = 2.86
E = 1.02 m
h_c = 0.40 m
supercritical (사류)

Notice that one value of EE maps to two depths: the upper branch (deep, slow flow) and the lower branch (shallow, fast flow). Pass the nose at the critical depth hch_c and the two worlds split apart.

The Froude Number: Tranquil and Rapid#

The ratio of flow speed to wave speed sets the character of the flow. That dimensionless group is the Froude number (ratio of inertia to gravity-wave speed).

Fr=ughFr = \frac{u}{\sqrt{g h}}

When Fr<1Fr < 1, the flow is slower than its waves. A surface disturbance from a downstream obstacle can travel back upstream. This deep, tranquil flow is called subcritical. When Fr>1Fr > 1, the flow outruns its waves. Downstream signals never reach upstream. This shallow, fast flow is supercritical. Fr=1Fr = 1 is the critical state, and there the depth is exactly hch_c.

You can feel where this is going. The Froude number plays the very same role as the Mach number (ratio of flow speed to sound speed) in gas dynamics. Just as sound carries information in a compressible gas, shallow-water waves carry it in an open channel. Supercritical is supersonic; subcritical is subsonic.

The Hydraulic Jump: When Water Thickens#

Trouble appears when supercritical flow must become subcritical. On the specific-energy curve there is no smooth path from the lower branch to the upper one. Nature resolves it with a discontinuity: shallow, fast water abruptly leaps to thick, slow water. That is the hydraulic jump.

The relation across the jump comes not from energy but from momentum conservation, because a turbulent roller inside the jump devours energy without mercy. Balancing momentum flux and hydrostatic pressure on both sides gives the conjugate-depth relation between the upstream depth h1h_1 and the downstream depth h2h_2.

h2h1=12(1+8Fr121)\frac{h_2}{h_1} = \frac{1}{2} \left( \sqrt{1 + 8\,Fr_1^2} - 1 \right)

Fr1Fr_1 is the Froude number just before the jump (supercritical). The specific energy lost in the jump falls out cleanly.

ΔE=(h2h1)34h1h2\Delta E = \frac{(h_2 - h_1)^3}{4\, h_1 h_2}

That loss is exactly why engineers deliberately create hydraulic jumps at dam spillways and stilling basins. They scatter the destructive kinetic energy of fast water into turbulence, protecting the downstream bed from erosion.

Try the simulation below. Vary the upstream Fr1Fr_1 and watch the thin supercritical sheet turn into thick subcritical flow, seen from the side.

h2/h1 = 3.77Fr2 = 0.41ΔE/h1 = 1.41

Drop Fr1Fr_1 toward 1.5 and the jump weakens into a gentle swell. Push it past 5 and h2/h1h_2/h_1 exceeds six, with a violent white foam roller.

Reproducing It in Code#

Let's compute the conjugate depth and the energy loss directly. Take a unit-width discharge q=0.8 m2/sq = 0.8\ \mathrm{m^2/s} and an upstream depth h1=0.2 mh_1 = 0.2\ \mathrm{m}.

import numpy as np
 
g = 9.81  # m/s^2
 
def froude(u, h):
    """Froude number = flow speed / shallow-water wave speed."""
    return u / np.sqrt(g * h)
 
def critical_depth(q):
    """Critical depth for unit-width discharge q (minimum specific energy)."""
    return (q**2 / g) ** (1.0 / 3.0)
 
def specific_energy(h, q):
    """Specific energy E = h + q^2 / (2 g h^2)."""
    return h + q**2 / (2.0 * g * h**2)
 
def conjugate_depth(h1, q):
    """Downstream depth h2 for an upstream (supercritical) depth h1."""
    u1 = q / h1
    fr1 = froude(u1, h1)
    return 0.5 * h1 * (np.sqrt(1.0 + 8.0 * fr1**2) - 1.0)
 
def jump_dissipation(h1, h2):
    """Specific energy lost in the jump (turbulent dissipation)."""
    return (h2 - h1)**3 / (4.0 * h1 * h2)
 
q, h1 = 0.8, 0.2
u1 = q / h1
h2 = conjugate_depth(h1, q)
u2 = q / h2
 
print(f"upstream (super)  u1={u1:.2f} m/s  Fr1={froude(u1,h1):.2f}")
print(f"after jump        h2={h2:.3f} m  u2={u2:.2f} m/s  Fr2={froude(u2,h2):.2f}")
print(f"critical depth    hc={critical_depth(q):.3f} m")
print(f"energy loss       dE={jump_dissipation(h1,h2):.3f} m")

The output:

upstream (super)  u1=4.00 m/s  Fr1=2.86
after jump        h2=0.714 m  u2=1.12 m/s  Fr2=0.42
critical depth    hc=0.403 m
energy loss       dE=0.238 m

A supercritical flow at Fr1=2.86Fr_1 = 2.86 became a subcritical flow at Fr2=0.42Fr_2 = 0.42. The depth thickened by a factor of 3.6 and the velocity slowed by the same factor (continuity, uh=constu h = \text{const}). The price is 0.238 m of specific energy scattered into turbulence. That the downstream depth h2=0.714h_2 = 0.714 m exceeds the critical depth hc=0.403h_c = 0.403 m confirms the flow is now subcritical.

When Shallow Water Impersonates a Gas#

Here is the highlight. The steady continuity equation for shallow water in a channel of constant width is uh=constu h = \text{const}. The steady continuity equation for a compressible gas in a duct of constant area is ρv=const\rho v = \text{const}. Depth hh maps exactly onto gas density ρ\rho.

Differentiate the shallow-water energy equation h+u2/(2g)=consth + u^2/(2g) = \text{const} to get udu+gdh=0u\,du + g\,dh = 0, insert the wave speed uc=ghu_c = \sqrt{g h}, and you find that shallow-water waves occupy the same seat as acoustic waves in a gas. Collecting it all yields this analogy.

Shallow waterCompressible gas
depth hhdensity ρ\rho
wave speed gh\sqrt{gh}sound speed κRT\sqrt{\kappa R T}
Froude number FrFrMach number MM
supercritical / subcriticalsupersonic / subsonic
hydraulic jumpshock wave

This analogy corresponds to a fictitious gas with κ=2\kappa = 2 (hTh \leftrightarrow T, h2ph^2 \leftrightarrow p). That is why early aeronautical researchers, instead of expensive supersonic wind tunnels, placed objects in a "shallow water table" and studied shock patterns qualitatively by watching the surface jumps. The ring in your sink resembles a bow shock ahead of a two-dimensional body for exactly this reason.

Key Takeaways#

  • The Froude number Fr=u/ghFr = u/\sqrt{gh} is the Mach number of open-channel flow. Fr<1Fr<1 is subcritical (tranquil), Fr>1Fr>1 is supercritical (rapid), Fr=1Fr=1 is critical.
  • The hydraulic jump is the discontinuity where supercritical flow becomes subcritical. The conjugate depth h2/h1=12(1+8Fr121)h_2/h_1 = \tfrac{1}{2}(\sqrt{1+8Fr_1^2}-1) follows from momentum, not energy, conservation, and the leftover energy dissipates into turbulence.
  • The shallow-water/compressible analogy maps depth to density, shallow-water waves to sound, and the hydraulic jump to a shock. The water ring in your kitchen sink is a shock-wave experiment you run every day.

Share if you found it helpful.