회오리의 두 얼굴 — 자유와동·강제와동, 그리고 헬름홀츠
욕조 회오리부터 토네이도까지, 와동과 와도의 진짜 의미
욕조 마개를 뽑으면 물이 빙글빙글 돈다. 우리는 그 광경을 "물이 회전한다"고 부른다. 그런데 유체역학자는 그 영역 대부분에 대해 "거기서는 회전이 일어나지 않는다(irrotational)"라고 답한다. 모순처럼 들리는 이 진술에 와동(vortex)의 정체가 숨어 있다. 이 글은 같은 그림 안에 공존하는 자유와동(free vortex, 속도)과 강제와동(forced vortex, 속도)을 갈라보고, 와도(vorticity, 자전 각속도의 두 배)가 정확히 무엇을 재는지 짚은 뒤, 헬름홀츠(Helmholtz) 정리가 왜 와동을 "불멸"이라 부르는지까지 따라간다.
욕조 회오리는 정말 '회전'인가#
답부터 적자. 회전이란 단어에 두 의미가 섞여 있다. 첫째는 공전 — 어떤 점을 중심으로 원운동을 한다. 둘째는 자전 — 입자 자신이 돌고 있다. 욕조 회오리에서 물 입자는 공전한다. 그러나 자전은? 마개에서 멀리 떨어진 영역에서는 거의 일어나지 않는다. 떠 있는 작은 나뭇잎은 빙글빙글 도는 길을 따라가지만, 자기 자신을 회전시키지는 않는다. 항상 같은 면이 마개를 향한다.
유체역학에서 "회전"은 자전을 의미한다. 그래서 자유와동에서는 모든 영역이 "회전 없음"으로 분류된다.
강제와동과 자유와동: 같은 그림, 다른 영혼#
회전 원통에 든 물을 오래 저으면 액체 전체가 강체처럼 함께 돈다. 이를 강제와동이라 부른다. 입자는 공전하면서 동시에 자전한다.
여기서 는 접선 속도, 는 강체 회전의 각속도, 은 중심으로부터의 거리다. 속도가 거리에 비례한다.
반대로 점성을 무시한 이상 유체에서 자연스럽게 만들어지는 회오리는 자유와동(=포텐셜와동)이다.
는 순환(circulation, 닫힌 경로를 따라 적분한 속도). 속도가 로 감소한다. 중심에서는 무한대로 발산한다 — 이 특이점을 점성이 길들인다.
| 강제와동 | 자유와동 | |
|---|---|---|
| 속도 | ||
| 자전 | 있음 | 없음 |
| 에너지 공급 | 외부에서 계속 | 처음 한 번만 |
| 일상 예 | 회전 컵의 물 | 욕조·토네이도 |
같은 원운동인데 자전 여부가 다르다. 이 차이를 정량화하는 단 하나의 양이 와도다.
와도가 측정하는 것#
와도 는 속도장의 회전(curl)이다.
2차원에서는 성분만 살아남아
가 된다. 는 각각 방향 속도. 이 값은 유체 입자 자전 각속도의 두 배다.
강제와동에 대입하면 로 일정 — 영역 전체가 자전한다. 자유와동에 대입하면 중심 한 점을 빼고 어디서나 이다. 모양은 똑같이 둥근 흐름인데, 자전 정도는 정반대다.
랭킨 조합와동 — 토네이도의 청사진#
현실의 회오리는 한쪽만 따르지 않는다. 중심 부근에서는 점성이 강해 강체처럼 돌고, 멀리서는 점성이 무시되어 자유와동을 따른다. 이 둘을 이은 모형이 랭킨 조합와동이다.
은 코어 반지름, 는 코어 경계에서의 최대 접선 속도. 두 식은 에서 매끈하게 이어진다. 토네이도의 풍속 분포, 비행기 날개 끝에서 떨어지는 wing-tip 와동, 욕조 흡입 와동이 모두 이 형태에 가깝다. 코어 안은 회전 영역, 코어 밖은 비회전 영역이다.
헬름홀츠 정리 — 와동의 불멸#
점성을 무시하면 유체 입자에 작용하는 힘은 압력뿐이고, 압력은 입자 중심을 향하므로 자전을 만들지 못한다. 그래서 자전이 없는 입자는 영원히 자전하지 않고, 자전을 시작한 입자는 영원히 자전한다. 이것이 헬름홀츠 와동 정리의 한 줄 요약이다.
좀 더 정밀하게는 켈빈(Kelvin) 정리가 있다. 닫힌 물질 곡선을 따라 잰 순환 는 시간이 흘러도 변하지 않는다.
는 물질 미분(입자를 따라가는 미분). 와동 튜브는 자르거나 끊을 수 없고, 늘어나면 더 빠르게 돈다 — 피겨 스케이터가 팔을 모으는 것과 같다. 실제 유체에는 점성이 있어 와동은 결국 흩어지지만, 점성이 작은 물·공기에서는 며칠씩 살아남는다. 비행기가 지나간 자리의 응결 와동이 한참 동안 보이는 이유다.
속도 포텐셜이 여는 수학의 문#
비회전() 영역에서는 벡터 항등식이 한 줄 선물을 준다.
스칼라 함수 를 속도 포텐셜이라 부른다. 비압축 흐름이라면 도 성립하므로
라플라스 방정식이다. 비점성·비회전·비압축 흐름은 단 하나의 스칼라 함수로 풀린다는 뜻. 19세기 유체역학이 익체 분포·날개 양력·소스/싱크 모형을 분석적으로 다룰 수 있었던 비결이 이것이다. 자유와동은 로 표현된다 — 각도 에 비례한 포텐셜이다.
코드로 보는 두 와동#
랭킨 와동의 속도와 와도를 그려보면 차이가 한눈에 들어온다.
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)
# 코어 안 평균 와도와 코어 밖 평균 와도
mask_in = R[1:-1, 1:-1] < R_core
mask_out = R[1:-1, 1:-1] > 1.5 * R_core
print(f"코어 안 평균 ω_z ≈ {omega[mask_in].mean():.3f}") # ~ 2 * U_max / R_core
print(f"코어 밖 평균 ω_z ≈ {omega[mask_out].mean():.3f}") # ~ 0코어 안에서는 로 상수에 가깝고, 코어 밖에서는 0에 가깝다. 같은 둥근 흐름인데 자전을 가르는 경계가 코어 반지름 에 정확히 그려진다.
시뮬레이션에서 직접 만져보자#
아래 시뮬레이션에서 직접 파라미터를 조작해보자. 노란 입자가 갇힌 영역이 강제와동 코어, 파란 입자가 떠다니는 영역이 자유와동이다.
코어 반지름 을 줄이면 자전이 일어나는 영역이 좁아진다 — 토네이도의 "눈"이 좁아지는 모형. 를 키우면 코어 안 와도 가 함께 커진다. 오른쪽 위 그래프를 보면 구간은 직선(), 구간은 쌍곡선()으로 매끈하게 이어진다.
다음에 회오리를 보면#
자전이 있는 영역과 없는 영역을 가른다. 그것이 이 한 시간이 남기는 한 줄이다. 다음에 욕조 회오리·찻잔의 소용돌이·태풍 위성사진을 볼 때 세 가지를 떠올려보자.
- 공전과 자전은 다르다. 같은 원형 흐름이라도 와도는 0일 수 있다.
- 랭킨 조합와동은 가장 단순한 현실 모형이다. 코어 안은 강체 회전, 밖은 .
- 헬름홀츠 정리는 왜 와동이 잘 사라지지 않는가의 답이다 — 점성이 작을수록 더 오래 산다.
이 세 줄을 가지고 있으면, 다음번 난류 강의에서 "와도 수송 방정식"이 등장해도 당황하지 않을 것이다. 와도 자체가 보존되지 않을 뿐, 그 정신은 같은 자리에 있다.
도움이 됐다면 공유해주세요.