물은 관을 얼마나 흘러야 포물선이 되는가 — 발달 길이와 Hagen–Poiseuille
측정 탭을 입구에서 지름의 0.05 Re보다 앞에 두면, 중심 속도는 평균의 두 배가 아니다.
수도꼭지를 완전히 열면 물줄기가 한동안 매끈하다. 관 속에서도 비슷한 일이 벌어진다. 입구에서 물은 벽의 존재를 거의 느끼지 못한다. 프로파일은 거의 평평하다. 그런데 조금 흐르고 나면 단면 속도 분포가 부드러운 포물선으로 바뀐다. 그 사이 구간이 오늘의 주인공이다.
Re 슬라이더를 100에서 2000으로 밀면 주황 fully developed 선이 오른쪽으로 밀린다.
선이 지름의 다섯 배에서 백 배까지 가는 동안, 입구의 평평한 분포는 아직 포물선이 아니다. 중심이 평균의 두 배가 되는 자리는 그 선 너머에만 있다.
벽이 소문을 퍼뜨리는 데 걸리는 거리#
관 벽에서 유체는 미끄러지지 않는다(no-slip, 벽 접촉면 속도 0). 이 조건은 입구에서 곧바로 전 단면에 퍼지지 않는다.
벽 근처에만 얇은 경계층(속도가 급변하는 벽 부근 층)이 생긴다. 흐를수록 이 층이 안쪽으로 자란다. 위아래 경계층이 관 중심에서 만나는 순간, 프로파일은 더 이상 변하지 않는다. 이 지점부터를 완전발달(fully developed) 구간이라 부른다.
입구에서 완전발달까지의 거리를 수력학적 발달 길이 라 한다. 층류에서는 관 지름 와 Reynolds 수(관성력/점성력 비)로 정해진다.
은 단면 평균 속도, 는 밀도, 는 점성계수다. 이면 발달 길이가 관 지름의 100배에 달한다. 가는 실험 배관에서 측정 위치를 잘못 잡으면 아직 발달 중인 유동을 재는 셈이다.
숫자만 대입해 보자. 이면 이다. 지름 2 cm면 발달 길이는 2 m다. 코드의 조건은 , m라서 m, 지름의 80배다. 입구에서 0.80 m, 즉 는 그 길이의 절반이다. 그 단면은 아직 완전발달이 아니다. 중심 속도는 m/s에 못 미친다. 반대로 이면 다. 같은 2 cm 관에서 10 cm. 실험대 위 짧은 관도 이 Reynolds에서는 거의 다 발달해 있다. 배관은 그대로 두고 유량만 올리면, 같은 탭이 발달 뒤에서 발달 중으로 바뀐다.
완전발달 구간의 포물선 — Hagen–Poiseuille#
완전발달이면 축방향 속도가 더 변하지 않는다. , 반경방향 속도 이다. 원통좌표 운동량 방정식은 단순해진다.
압력 구배 는 상수다. 벽에서 , 중심에서 을 걸고 두 번 적분한다.
는 관 반지름, 는 중심에서의 거리다. 결과가 깔끔하다. 중심 속도는 평균의 정확히 두 배다. 이 포물선이 Hagen–Poiseuille 흐름이다.
중심에 을 넣으면 이다. 코드의 m/s면 중심은 0.160 m/s다. 이 되는 반지름은 다. 벽 에서는 0이다. 압력 구배와 잇는 식은 다. , 이면 이고, Pa/m이다. 이 기울기로 10 m를 가면 64 Pa, 80 m를 가면 512 Pa이다. 다만 이 직선은 완전발달 이후의 이야기다. 1.60 m 이전에는 경계층이 운동량을 걷어 가며 중심을 가속한다. 압력 강하는 이 직선보다 가파르다.
압력은 왜 일정하게 떨어지는가 — 마찰계수#
포물선을 단면에 걸쳐 평균하면 평균 속도와 압력 구배가 직접 연결된다.
구배가 상수라는 건 압력이 관을 따라 직선으로 떨어진다는 뜻이다. 이 손실을 무차원으로 묶은 것이 Darcy 마찰계수 다.
층류 마찰계수는 오직 Reynolds 수만으로 결정된다. 관 거칠기는 끼어들지 않는다. 아래에서 Reynolds 수를 바꾸며 마찰계수 곡선 위 점을 옮겨보자.
구간에서 점은 직선을 정확히 따라간다. 문턱을 넘기면 곡선이 꺾이며 다른 법칙으로 갈아탄다.
2300이라는 문턱 — 층류에서 난류로#
가 약 2300을 넘으면 매끈하던 유동이 흐트러진다. 소용돌이가 섞이며 난류로 천이한다. 관 안에서 그 문턱이 어떻게 갈리는지는 물줄기가 흐트러지는 Reynolds에 적어 두었다.
난류에서는 발달 길이가 짧아진다. 가 대략 10~60에 머문다. 층류의 100배와 대비된다. 대신 마찰은 커진다. 매끈한 관의 경험식 하나가 Blasius 식이다.
지수가 에서 로 완만해진다. Reynolds 수를 올려도 마찰이 예전만큼 빨리 떨어지지 않는다. 같은 유량을 더 큰 압력으로 밀어야 한다.
Python으로 재현하는 발달 길이와 마찰#
작은 배관 하나를 숫자로 따라가 보자.
import numpy as np
def entrance_length(Re, D):
# 층류 수력학적 발달 길이 [m]
return 0.05 * Re * D
def poiseuille_profile(r, R, u_mean):
# 완전발달 층류 속도 분포 (Hagen-Poiseuille)
return 2.0 * u_mean * (1.0 - (r / R) ** 2)
def darcy_friction(Re):
# 층류 마찰계수 (Re < 2300)
return 64.0 / Re
D = 0.02 # 관 지름 [m]
rho, mu = 1000.0, 1e-3
u_mean = 0.08 # 평균 속도 [m/s]
Re = rho * u_mean * D / mu
print(f"Re = {Re:.0f}") # Re = 1600
print(f"발달 길이 = {entrance_length(Re, D):.2f} m") # 1.60 m
print(f"중심 속도 = {poiseuille_profile(0, D/2, u_mean):.3f} m/s") # 0.160
dpdx = -32 * mu * u_mean / D**2
print(f"압력 구배 = {dpdx:.2f} Pa/m") # -6.40 Pa/m
print(f"마찰계수 f = {darcy_friction(Re):.4f}") # 0.0400지름 2 cm 관인데 발달 길이가 1.6 m다. 관 지름의 80배다. 실험대 위 짧은 배관은 대부분 발달 중인 유동을 다룬다.
탭을 발달 길이 앞에 꽂으면#
압력 탭을 보다 앞에 두면 는 아직 상수가 아니다. 코드가 찍은 , , 구배 Pa/m는 완전발달 이후의 값이다. 1.60 m 이전에서 같은 식을 쓰면 손실을 작게 본다. 입구 쪽은 중심이 가속되는 만큼 압력 강하가 더 가파르다.
난류로 넘기면 발달 길이는 짧아지고 마찰은 커진다. 가 2300을 넘으면 는 10에서 60이다. 마찰은 를 떠나 Blasius의 로 올라탄다. 이면 이고, 의 네제곱근은 10이라 이다. 약 다섯 배다. 짧은 관이라고 층류 공식을 그대로 쓰면 펌프 양정이 모자란다. 벽 전단이 바깥 유동의 박리로 이어지는 쪽은 거친 공의 항력 위기에서 이어진다.
관련
도움이 됐다면 공유해주세요.