Skip to content
cfd-lab:~/zh/posts/2026-07-23-pipe-entrance…online
NOTE #112DAY THU 유체역학DATE 2026.07.23READ 2 min readWORDS 1,201#Pipe-Flow#Boundary-Layer#Hagen-Poiseuille#Friction-Factor#유동현상

水要流多远才变成抛物线 — 入口段长度与Hagen–Poiseuille

管道入口发展段、Hagen–Poiseuille抛物线以及64/Re摩擦系数

把水龙头开到最大,水流会在一段距离内保持顺滑。管道内部也有类似的事发生。在入口处,水几乎感觉不到管壁的存在。速度分布几乎是平的。可是流过一段之后,断面速度分布就变成一条光滑的抛物线。中间这一段就是今天的主角。

管壁把消息传遍断面所需的距离

在管壁处流体不滑移(no-slip,壁面速度为零)。这个条件不会在入口一下子传遍整个断面。

一开始只有壁面附近出现一层薄薄的边界层(速度急剧变化的近壁层)。流动越往前走,这层就越往内生长。当上下两侧边界层在管中心相遇的那一刻,速度分布不再改变。从这一点起就称为充分发展(fully developed)流动。

从入口到充分发展的距离叫做水力入口段长度 LhL_h。层流中它由管径 DD 和雷诺数(惯性力与黏性力之比)决定。

LhD0.05ReD,ReD=ρumDμ\frac{L_h}{D} \approx 0.05\,\mathrm{Re}_D, \qquad \mathrm{Re}_D = \frac{\rho\,u_m D}{\mu}

其中 umu_m 是断面平均速度,ρ\rho 是密度,μ\mu 是黏性系数。当 ReD=2000\mathrm{Re}_D=2000 时,入口段长度可达管径的100倍。在细实验管路里若测点选错,测到的就是仍在发展中的流动。

在下面的模拟中亲手调节雷诺数吧。

把 Re 从100升到2000,橙色的“fully developed”线会向右移。入口处平坦的速度分布需要更长的距离才能落到抛物线上。

发展段的抛物线 — Hagen–Poiseuille#

一旦充分发展,轴向速度不再变化。此时 u/x=0\partial u/\partial x = 0,径向速度 v=0v=0。圆柱坐标下的动量方程随之简化。

1rddr ⁣(rdudr)=1μdpdx\frac{1}{r}\frac{d}{dr}\!\left(r\frac{du}{dr}\right) = \frac{1}{\mu}\frac{dp}{dx}

压力梯度 dp/dxdp/dx 是常数。在壁面施加 u(R)=0u(R)=0,在中心施加 du/dr=0du/dr=0,然后积分两次。

u(r)=14μdpdx(R2r2)=2um ⁣(1r2R2)u(r) = -\frac{1}{4\mu}\frac{dp}{dx}\left(R^2 - r^2\right) = 2\,u_m\!\left(1 - \frac{r^2}{R^2}\right)

其中 R=D/2R=D/2 是管半径,rr 是到中心的距离。结果很干净。中心线速度恰好是平均速度的两倍。这条抛物线就是Hagen–Poiseuille流动。

压力为何以恒定速率下降 — 摩擦系数

把抛物线在断面上取平均,平均速度就与压力梯度直接挂钩。

dpdx=32μumD2\frac{dp}{dx} = -\frac{32\,\mu\,u_m}{D^2}

梯度是常数,意味着压力沿管道线性下降。把这份损失打包成一个无量纲数,就得到达西摩擦系数 ff

f=(dp/dx)D12ρum2=64ReDf = \frac{-\,(dp/dx)\,D}{\tfrac{1}{2}\rho u_m^2} = \frac{64}{\mathrm{Re}_D}

层流摩擦系数只由雷诺数决定。管壁粗糙度根本不参与。下面拖动雷诺数,让点沿着摩擦系数曲线移动。

regime: laminarf = 0.0640Lh/D ≈ 50.0

ReD<2300\mathrm{Re}_D<2300 区间,点精确地贴着 64/Re64/\mathrm{Re} 直线。越过门槛后曲线拐弯,换上另一条规律。

2300这道门槛 — 从层流到湍流#

ReD\mathrm{Re}_D 超过约2300,原本顺滑的流动开始破碎。旋涡掺混进来,过渡为湍流。

湍流中入口段长度反而变短。Lh/DL_h/D 大致停在10到60之间,与层流的100倍形成对比。代价是摩擦增大。光滑管的一条经验式就是Blasius公式。

f=0.316ReD1/4(4000ReD105)f = 0.316\,\mathrm{Re}_D^{-1/4} \quad (4000 \lesssim \mathrm{Re}_D \lesssim 10^5)

指数从 1-1 变缓到 1/4-1/4。即便提高雷诺数,摩擦也不再像以前那样快速下降。要以更大的压力推动同样的流量。

用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倍。实验台上那些短管路,大多处理的是仍在发展中的流动。

下次遇到管内流动时

管内流动的本质是“管壁的信息渗向中心的过程”。记住三点。

  • 入口段里速度分布一直在变。入口段长度可伸长到 0.05ReD0.05\,\mathrm{Re}\,D
  • 充分发展的层流是抛物线。中心速度是平均值的两倍,摩擦系数是 64/Re64/\mathrm{Re}
  • Re2300\mathrm{Re}\approx2300 附近过渡。湍流发展快,但摩擦更大。

如果对您有帮助,请分享。