本文译自作者的韩语原文。 阅读原文(한국어)
雨滴为什么不是泪滴形 — Weber数与Taylor类比破碎(TAB)
无阻尼时最大变形是2·We/24,We=12处刚好碰到y=1。Oh不为零时,那个峰会被削掉一截。
伞的图标和表情符号都把雨滴画成泪滴形——上尖下圆的那种形状。现实中根本没有这样的雨滴。直径超过2毫米的大液滴会被压成底部扁平的汉堡面包形。再大一些,中央会像口袋一样鼓起,最后破裂。
破裂与否,一个 Weber 数就够判。O'Rourke 与 Amsden 在 1987 年把这个判定写成弹簧,也就是 TAB(Taylor Analogy Breakup)。振幅越过半径的那一刻,就是破裂。
把 Weber 滑块降到 12 以下,变形 碰不到 1;推过 12,液滴在第一个峰上裂开。
把 Ohnesorge 调高,同样的 Weber 也会很快熄掉。粘性削的就是这第一个峰。
雨滴不是泪滴
下落的液滴内部有两种力在较量。一种是周围空气拍打表面的空气动力,把液滴向两侧压扁。另一种是表面张力,想把液滴重新拉回球形。
对小液滴而言,表面张力完全占上风。所以小液滴永远是球形。液滴越大,或相对速度越快,空气动力就越强。到某个时刻,表面张力再也撑不住。液滴变扁、鼓起,最终碎成细小的液滴。这个过程称为二次破碎(secondary breakup),与喷嘴液柱断开成滴的一次破碎相区别。
柴油发动机、火箭喷注器、农药喷雾。所有把燃料或液体打碎的装置都建立在这一现象之上。液滴越小,表面积越大,蒸发和燃烧越快。
Weber数 — 惯性战胜表面张力的刻度#
把两种力的比值化为一个数,就得到Weber数(惯性力/表面张力之比)。
其中是气体密度,是液滴与气体的相对速度,是液滴直径,是表面张力。分子是气体拍打液滴的动压,分母是表面张力抓住液滴的力。
小的时候,液滴只是安静地振荡。超过某个临界值,液滴就破碎。实验上这个临界Weber数大约在12附近。无论水滴还是燃料滴,在这个值以上都无法幸存。
这里还要加上衡量粘性作用的第二个无量纲数:Ohnesorge数(粘性力/√(惯性·表面张力))。
是液体粘度,是液体密度。粘性大的液滴(想象一滴蜂蜜)对变形的阻力很大。增大会把临界Weber数往上推,也就是更难破碎。
Taylor的类比:把液滴挂在弹簧上#
Weber数只告诉你液滴"会不会破"。要知道"何时、如何"破,必须求解液滴随时间的变形。这里出现了G.I. Taylor的洞见。他把振荡并变形的液滴,对应成一个弹簧–质量–阻尼振子。
把三种力一一配对。弹簧的回复力是表面张力。作用在质量上的外力是气体的空气动力阻力。阻尼力是液体的粘性。把这个类比写成方程,就得到关于变形量的二阶常微分方程。
是液滴赤道鼓起的程度(无量纲变形),是半径。右端第一项是空气推动的强迫力,第二项是表面张力的回复,第三项是粘性阻尼。系数由实验确定,O'Rourke–Amsden分别取。
当强迫力与回复力平衡,液滴会稳定在某个定常变形。
是以半径为基准的Weber数。要点在于变形与Weber数成正比。Weber翻倍,液滴也压扁一倍。
变形参数 y 与破碎的扳机#
TAB模型的规则很简单。一旦,液滴就破碎。是液滴赤道的鼓起等于半径的时刻。振幅增大到那个程度,液滴就无法保持圆形。
这里无阻尼振荡的性质很关键。从静止状态突然受到强迫力,振子不会停在定常值,而是过冲,最大达到。所以即使只有0.5,也就是定常变形只有一半,也可能在第一次振荡就达到而破裂。这种过冲在理论上降低了临界Weber数。
上面那条曲线里,第一个峰是否越过 1,就是这次过冲。Ohnesorge 削的是这个峰。
Python — 让一个液滴振荡到破裂#
把上面的类比直接搬进代码。用无量纲时间积分,寻找越过1的时刻。
import numpy as np
def weber(rho_g, u, d, sigma):
"""气体惯性与表面张力之比(以直径为基准)。"""
return rho_g * u**2 * d / sigma
def tab_breakup(We, Oh, dt=0.01, t_max=40.0):
"""积分无量纲TAB振子,返回破碎时刻(无量纲tau)。
y>1 表示破碎;到最后 y<1 则返回 None(幸存)。"""
C_F, C_k, C_d, C_b = 1/3, 8.0, 5.0, 1/2
omega2 = C_k # 无量纲固有频率^2
forcing = (C_F / C_b) * (We / 2) # 定常变形 y_eq = forcing/omega2 = We/24
damp = C_d * Oh * np.sqrt(C_k) # Ohnesorge 增大阻尼
y, ydot, t = 0.0, 0.0, 0.0
while t < t_max:
acc = forcing - omega2 * y - damp * ydot
ydot += acc * dt
y += ydot * dt
t += dt
if y >= 1.0:
return t # 破碎!
return None
for We in [6, 10, 12, 20, 40]:
tau = tab_breakup(We, Oh=0.02)
tag = f"破碎 tau={tau:.2f}" if tau else "幸存"
print(f"We={We:5.1f} -> {tag}")输出直接读出了临界Weber数。
We= 6.0 -> 幸存
We= 10.0 -> 幸存
We= 12.0 -> 破碎 tau=1.14
We= 20.0 -> 破碎 tau=0.74
We= 40.0 -> 破碎 tau=0.50把阶梯上的 Weber 刻度往上推,形态从振荡走到袋状,接着是薄膜剥离,再是灾变。
到We=10为止,过冲够不到1,液滴幸存。到We=12,第一个峰勉强越过红线。Weber越大,破碎时刻越短。打得越狠,破得越快。与物理精确吻合。
代码注释里的常数把这个临界钉死。、、 时 。无阻尼过冲的顶点是 。顶点等于 1 的地方就是 。 时顶点为 , 时为 。都在 1 以下,和输出里的幸存一致。 时 ,加上过冲, 提前到 。 时 ,平衡本身已经越过 1, 缩到 。 时, 是 114 步, 是 50 步。阻尼是 ,,所以大约 。输出里的 是贴在 12 正上方的一层薄值。
破碎模式的阶梯
越过临界值并不意味着每个液滴都以同样方式破碎。随着Weber数升高,破碎的形态会变化:振荡 → 袋状(bag) → 混合(multimode) → 薄膜剥离(sheet-thinning) → 灾变(catastrophic)。每个阶段都有实验能清晰区分的大致Weber边界。
上面阶梯的低档就是袋状。附近的袋状破碎,是液滴中央鼓成薄膜然后爆开的最低能量破碎。当达到数百,表面本身像波浪一样剥离,成为灾变破碎。TAB模型最初就是针对袋状破碎区域设计的。所以在低Weber下吻合得好,但在Weber极大的区域(如超过40MPa的高压喷射)会低估贯穿距离。那个区域要叠加KHRT或波动破碎模型。
把 We=12 钉成无粘边界,会漏掉粘稠的液滴#
无阻尼时顶点是 。 时顶点正好是 1。输出里 把峰削掉一点,仍在 越过。再把 抬高,同样的 12 也可能够不到 1。把临界钉死在 12、再拿掉 Ohnesorge,蜂蜜那样的液体还活着,模型却已经把它打碎。
变形变大时,抗力一起变。TAB 只看 来切破碎时刻,压扁液滴的抗力对轨迹的改动就进不来。 的 已经离开袋状区,再往上这根弹簧会把贯穿距离估短。
相关文章
如果对您有帮助,请分享。