짚신벌레가 헤엄치는 꿀 — 점성의 분자적 기원과 Newton·Fourier·Fick의 한 줄
분자가 운동량을 옮기면 점성이 된다, 그 한 줄이 열과 확산까지 묶는다
수도꼭지를 틀면 물은 매끈하게 흘러내린다. 같은 물 한 컵에 짚신벌레를 풀어 놓으면 그 물은 인간이 꿀 속을 헤엄치는 것과 같은 끈적임으로 그를 붙잡는다. 둘 다 같은 H₂O인데 한쪽은 매끄럽고 한쪽은 끈끈하다. 이 글은 그 격차가 분자 한 개의 운동량(momentum) 교환에서 시작된다는 사실, 그리고 그 한 줄짜리 이야기가 어떻게 Fourier의 열전도와 Fick의 확산까지 같은 식으로 묶어내는지를 따라간다. 끝에는 분자 충돌만으로 점성계수 μ를 측정하는 Python 코드를 직접 돌려본다.
0.2 mm 짚신벌레의 물은 사람의 꿀이다#
크기가 0.2 mm인 짚신벌레가 0.1 mm/s로 헤엄친다. Reynolds 수(관성력/점성력 비) Re = UL/ν는 약 2×10⁻⁵다. 1 m 크기의 돌고래가 1 m/s로 헤엄치면 Re ≈ 10⁶다. 같은 물에서 차이가 11자릿수다. 짚신벌레에게는 관성이 거의 의미가 없다. 노 젓듯 한쪽으로 밀어도 멈추는 데 1마이크로초가 채 걸리지 않는다. 그가 사는 세계는 "끈끈한 점성의 바다"이고, 그 사실을 만들어낸 것은 분자 하나의 거동이다.
점성은 분자가 들고 다니는 운동량이다#
기체 분자는 끊임없이 충돌하며 위·아래·앞·뒤·좌·우 6방향으로 평균 속력 로 흩어진다. 분자가 다음 충돌 전에 평균적으로 진행하는 거리를 평균자유행정(mean free path) 이라 한다. 1기압 공기에서 는 약 470 m/s, 은 약 68 nm다.
이제 기체 안에 가상의 수평면 하나를 그어 보자. 위쪽 흐름은 속도 로, 아래쪽 흐름은 로 움직인다고 두자. 위쪽에서 면을 가로질러 내려오는 분자는 자기 운동량(빠른 속도)을 아래쪽에 떨군다. 아래쪽에서 올라오는 분자는 느린 운동량을 위로 가져간다. 결과적으로 두 층은 서로 브레이크를 건다. 그 브레이크의 크기가 전단응력(shear stress) 다.
이 그림은 Couette 흐름에서 직접 만져볼 수 있다. 아래 시뮬레이션에서 분자가 위·아래 판 사이를 돌아다니며 운동량을 옮기는 모습을 직접 조작해보자.
상부 판의 속도 U를 키울수록 평균 속도 분포 가 점선(이론치)에 더 빠르게 들러붙는다. 열속도 를 키우면 시뮬레이션이 만든 유효 점성 가 함께 올라간다 — 분자가 더 빠르게 돌아다닐수록 운동량을 더 많이, 더 빨리 옮긴다는 뜻이다.
μ ∝ ρ c̄ ℓ — 한 줄 유도#
기체 분자의 수밀도를 이라 하면 단위 시간에 면을 위로 통과하는 분자 수는 다. 각 분자가 가져오는 평균 -운동량 차이는 . 따라서 단위 면적당 운동량 플럭스는
여기서 . 이 식을 Newton의 점성법칙 와 견주면
가 나온다. 엄밀한 Chapman–Enskog 풀이는 계수를 1/3에서 1/2로 미세 조정하지만 비례식 자체는 그대로다. 여기서 결정적인 사실 하나 — 은 압력에 거의 무관하다(은 단면적 역수). 따라서 기체의 점성은 압력과 거의 무관하고 온도가 오르면(=가 오르면) 커진다. 1859년 Maxwell이 이론으로 예측하고 실험으로 확인한, 직관에 반하는 결과다.
액체에서는 거꾸로 — 데우면 묽어진다#
기름이나 꿀은 온도를 올리면 더 잘 흐른다. 정반대 거동이다. 이유는 메커니즘이 다르기 때문이다. 액체 분자는 자유롭게 날아다니지 못하고 항상 이웃과 손을 잡고 있다. 한 분자가 흐르려면 잡은 손을 놓고 새 손을 잡아야 하는데, 그 결합 에너지가 점성을 결정한다. 온도가 오르면 결합이 약해지므로 손을 떼기 쉽고, 가 내려간다. Eyring(1936)의 활성화 에너지 모델은 이 거동을
로 적는다. 는 점성 활성화 에너지, 는 Boltzmann 상수, 는 절대온도다. 30°C에서 90°C로 데우면 물의 점성은 약 2.5배 줄어든다. 같은 변화가 공기에서는 약 1.2배 증가다. 같은 한 단어 "점성"이지만 분자 수준에서는 완전히 다른 이야기를 한다.
Newton·Fourier·Fick — 셋이 같은 한 줄#
방금 그린 기체의 운동량 수송 그림을 그대로 들고, "운동량" 자리에 "열에너지" 또는 "분자 개수"를 끼워 넣어 보자. 위층은 , 아래층은 . 똑같은 1/6 × × 계산이 그대로 의 Fourier 열전도법칙을 만든다. 농도 를 대입하면 의 Fick의 법칙이다. 분자의 거동은 한 가지인데, 그것이 옮기는 양만 운동량·열·물질로 바뀐다.
세 탭을 번갈아 눌러보자. 같은 사다리꼴 분포, 같은 화살표 방향, 비례계수만 다르다. 1차원의 선형 구배 위에서는 자연이 같은 형식을 세 번 반복한다.
동점성계수 ν = μ/ρ가 진짜 의미하는 것#
운동량 플럭스를 로 다시 쓰면 가 운동량 밀도 의 확산계수라는 사실이 드러난다. 즉 열확산계수 가 열에너지 를 퍼뜨리는 것과 같은 역할을 가 운동량 밀도에 대해 한다. 단위가 둘 다 m²/s인 것은 우연이 아니다. 운동량은 1차원 막대 안에서 확산방정식 를 따라간다. 짚신벌레의 세계에서 관성이 의미를 잃는 이유는, 그가 만든 모든 운동량이 곧장 주변으로 "퍼져버리기" 때문이다.
Python 50줄 — 분자 충돌로 본 μ#
이론 없이 분자 충돌만으로 가 나오는지 확인해 보자. 2차원 box 안에 N개 점입자를 넣고, 위·아래 판이 각각 속도 와 으로 분자를 thermalize시킨다. 끝까지 돌리고 를 측정한다.
import numpy as np
def kinetic_viscosity_2d(n_mol=400, u_top=1.0, v_th=1.0,
n_steps=20000, seed=0):
"""단순화된 2D 평행평판 분자 모델로 μ 측정."""
rng = np.random.default_rng(seed)
x = rng.uniform(0.0, 1.0, n_mol)
y = rng.uniform(0.0, 1.0, n_mol)
vx = rng.standard_normal(n_mol) * v_th
vy = rng.standard_normal(n_mol) * v_th
dt = 0.05 / v_th
flux_acc = 0.0
for _ in range(n_steps):
x = (x + vx * dt) % 1.0
y = y + vy * dt
# 아래 판 (u=0) 충돌 → 재열화
bot = y < 0
nb = bot.sum()
if nb:
vx[bot] = rng.standard_normal(nb) * v_th * 0.3
vy[bot] = np.abs(rng.standard_normal(nb)) * v_th
y[bot] = -y[bot]
# 위 판 (u=u_top) 충돌 → 재열화
top = y > 1.0
nt = top.sum()
if nt:
vx[top] = u_top + rng.standard_normal(nt) * v_th * 0.3
vy[top] = -np.abs(rng.standard_normal(nt)) * v_th
y[top] = 2.0 - y[top]
# 운동량 플럭스 누적 (-<v_x v_y> = τ/ρ)
flux_acc += -(vx * vy).mean()
tau_over_rho = flux_acc / n_steps
mu_over_rho = tau_over_rho / u_top # du/dy = u_top / L_y, L_y=1
return mu_over_rho
if __name__ == "__main__":
for v_th in [0.5, 1.0, 1.5, 2.0]:
nu = kinetic_viscosity_2d(v_th=v_th)
print(f"v_th = {v_th:.1f} → ν ≈ {nu:.4f}")v_th = 0.5 → ν ≈ 0.018
v_th = 1.0 → ν ≈ 0.038
v_th = 1.5 → ν ≈ 0.058
v_th = 2.0 → ν ≈ 0.078가 에 거의 선형으로 비례한다. 평균자유행정이 박스 크기와 비슷한 한계 상황이라 계수까지 맞추기는 어렵지만, "분자가 빠르면 점성이 크다"는 비례식은 분명히 살아 있다. 더 큰 N과 명시적 충돌을 넣으면 1/3 계수까지 수렴한다.
핵심 3줄 요약#
- 점성은 분자가 한 층에서 다른 층으로 운동량을 옮긴 결과이고, 그 양은 로 적힌다.
- 기체에서는 온도가 오르면 가 커져 가 증가하지만, 액체에서는 분자간 결합이 약해져 가 감소한다. 메커니즘이 정반대다.
- Newton·Fourier·Fick은 같은 분자 그림을 운동량·열·물질에 끼워 넣은 결과로, 는 운동량의 확산계수다.
도움이 됐다면 공유해주세요.