Translated from the author's Korean original. Read the original (한국어)
Two Faces of a Whirl — Free Vortex, Forced Vortex, and Helmholtz
A leaf that keeps one face toward the drain is only revolving. The spin, and the vorticity 2ω, sit in the yellow core.
Pull the plug from a bathtub and the water spins. We call that scene "the water rotates." A fluid dynamicist, looking at most of that same region, will say the opposite: nothing there is rotating (irrotational). The contradiction is fake. Inside it lives the real definition of a vortex. The same picture holds a free vortex at and a forced vortex at . Vorticity — twice the spin rate of a fluid particle — is the difference. Helmholtz's theorem is why that vortex is so hard to kill.
Is a bathtub whirl really 'rotation'?#
Two meanings hide inside one word. One is revolution: motion in a circle around some point. The other is spin: the particle turning on its own axis.
In a bathtub whirl, water particles revolve. Spin, far from the drain, is almost absent. A small leaf traces a circle and never turns its body. The same face always points toward the drain.
In fluid mechanics, "rotation" means spin. A free vortex is non-rotating everywhere except at the singular center.
Shrinking the core radius narrows the yellow spinning region, and raising raises the core vorticity .
Yellow particles spin in place. Blue particles revolve while keeping one face toward the drain, and the inset curve is linear for and outside.
Forced vs. free: same picture, different soul#
Stir a bucket long enough and the entire liquid spins as a rigid body. This is the forced vortex. Each particle revolves and spins together.
Here is the tangential speed, the rigid-body angular velocity, the distance from the axis. Speed is proportional to radius.
The whirl that arises in an ideal (inviscid) fluid is the free vortex, also called the potential vortex.
is the circulation, the line integral of velocity around a closed loop. Speed falls as and blows up at the center. Viscosity tames that singularity in a real fluid.
| Forced | Free | |
|---|---|---|
| Speed | ||
| Spin | yes | no |
| Energy input | continuous | once at birth |
| Everyday example | stirred cup | bathtub, tornado |
Same circular streamlines, opposite spin. One scalar quantifies the difference.
What vorticity measures#
Vorticity is the curl of the velocity field.
In two dimensions only the -component survives:
where are velocity components in . The value equals twice the angular velocity of a fluid particle's spin.
Plug in the forced vortex: , uniform across the whole region. Plug in the free vortex: everywhere except the center. Identical round streamlines, opposite spin.
Rankine combined vortex — the tornado blueprint#
Real whirls follow neither formula alone. Near the center, viscosity is strong and the fluid spins like a solid. Far away, viscosity drops out and the free-vortex law takes over. The splice is the Rankine combined vortex.
is the core radius and the peak tangential speed at the core boundary. The two pieces match at . Tornado wind profiles, wing-tip vortices, and the suction whirl above a drain all sit close to this shape. Inside the core: rotational. Outside: irrotational.
Drop the code defaults straight into the formulas. and . At both pieces give . At the inner piece gives . At the outer piece gives . Same distance from the axis, same speed, opposite slope.
Circulation on an outer loop does not grow with radius. For , , so . The numbers give . Core vorticity is . Core area is , and . The area integral and the loop integral close on the same circulation. How that becomes lift is the subject of a spinning ball.
Helmholtz's theorem — the immortality of vortices#
In an inviscid fluid the only force on a particle is pressure, and pressure points at the particle's center. No torque. A particle that is not spinning never starts, and a particle that is spinning never stops. That is Helmholtz's vortex theorem in one line.
Kelvin's theorem is the sharper statement. Circulation on a closed material curve does not change in time.
is the material derivative, the one that follows a fluid parcel. Vortex tubes cannot be cut or ended. Stretch one and it spins faster, the same move as a figure skater pulling her arms in. Real fluids have viscosity, so vortices eventually diffuse, but in water or air they last for days. That is why an aircraft's condensation vortex stays visible long after the plane is gone.
The door velocity potential opens#
In an irrotational region () a vector identity hands over one line:
The scalar is the velocity potential. If the flow is also incompressible, , then
Laplace's equation. Inviscid, irrotational, incompressible flow reduces to a single scalar. That is how nineteenth-century fluid mechanics handled airfoils, sources, and sinks on paper. The free vortex itself is , a potential proportional to the angle.
Two vortices in code#
Plotting Rankine speed and discrete vorticity makes the split obvious.
import numpy as np
def rankine_speed(r, R_core, U_max):
"""Tangential speed of a Rankine combined vortex."""
speed = np.where(r <= R_core,
U_max * r / R_core,
U_max * R_core / np.maximum(r, 1e-9))
return speed
def vorticity_field(u, v, dx, dy):
"""Discrete curl in 2D: omega_z = dv/dx - du/dy."""
dvdx = (v[1:-1, 2:] - v[1:-1, :-2]) / (2 * dx)
dudy = (u[2:, 1:-1] - u[:-2, 1:-1]) / (2 * dy)
return dvdx - dudy
# Sample on a 200x200 grid
N, L = 200, 2.0
x = np.linspace(-L, L, N)
y = np.linspace(-L, L, N)
X, Y = np.meshgrid(x, y)
R = np.hypot(X, Y)
THETA = np.arctan2(Y, X)
U_max, R_core = 1.0, 0.5
u_theta = rankine_speed(R, R_core, U_max)
u = -u_theta * np.sin(THETA)
v = u_theta * np.cos(THETA)
dx = dy = x[1] - x[0]
omega = vorticity_field(u, v, dx, dy)
# Mean vorticity inside and outside the core
mask_in = R[1:-1, 1:-1] < R_core
mask_out = R[1:-1, 1:-1] > 1.5 * R_core
print(f"core mean omega_z ~ {omega[mask_in].mean():.3f}") # ~ 2 * U_max / R_core
print(f"outer mean omega_z ~ {omega[mask_out].mean():.3f}") # ~ 0Inside the core, and stays nearly constant. Outside, it drops to zero. The same circular flow carries a sharp boundary at .
The grid is the same set of numbers. and , so the box runs from to and the spacing is . A core of is about twenty-five cells from the origin. The outer mask opens at , so cells between and stay out of both averages. The comment expects inside and outside.
Where the core radius should sit#
Cut the core too small and outgrows the mesh. With and , vorticity is . Halve and the same formula gives . A centered difference across that jump dirties the core mean with a value that is neither nor . That is why the outer mask starts at .
Push the core to the edge of the domain and the tail disappears. Circulation can still be written down, but there is no irrotational stretch where a leaf keeps one face toward the center. Whether the Bernoulli constant stays flat across those streamlines is a separate calculation, the one in which total pressure fell while dissipation stayed at zero.
Related
Share if you found it helpful.