欧拉-欧拉双流体模型
理论与物理
概述
老师,欧拉-欧拉双流体模型是什么?从名字看是同时处理两种流体吗?
没错。欧拉-欧拉法是将气相和液相(或固相与气相)都作为连续体处理,并为每个相求解独立守恒方程的方法。它在分散相体积分数较高的系统中大显身手,例如鼓泡塔、浆态反应器、蒸汽-液两相流管道等。
和VOF法有什么不同?
VOF法是锐利捕捉界面的“界面捕捉法”,适用于具有大尺度界面结构的自由表面流动。而欧拉-欧拉法是处理大量气泡或液滴分散系统的“分散流模型”。它不解析单个气泡,而是将其作为局部的体积分数进行统计处理。
控制方程
请告诉我具体的方程。
对每个相 $k$ 求解连续性方程和动量方程。连续性方程如下。
这里 $\alpha_k$ 是相 $k$ 的体积分数,$\dot{m}_{lk}$ 是从相 $l$ 到相 $k$ 的质量传递率。体积分数的约束条件是 $\sum_k \alpha_k = 1$。
动量方程是怎样的?
相 $k$ 的动量方程如下。
$\mathbf{M}_k$ 是相同力(interfacial force)的总和,这里是双流体模型的核心部分。压力 $p$ 在所有相之间共享(共享压力模型)是标准的做法。
相同力模型
相同力有哪些种类?
以气泡流为例,作用于分散相(气泡)的主要力如下。
| 力 | 代表模型 | 物理意义 |
|---|---|---|
| 曳力 | Schiller-Naumann, Ishii-Zuber, Grace | 相对速度引起的阻力 |
| 升力 | Tomiyama, Legendre-Magnaudet | 速度梯度引起的横向力 |
| 壁面润滑力 | Antal, Tomiyama | 壁面附近的排斥力 |
| 虚拟质量力 | $C_{VM} = 0.5$ | 加速度引起的附加质量 |
| 湍流分散力 | Lopez de Bertodano, Burns | 湍流脉动引起的分散 |
曳力模型该怎么选择?
球形气泡用 Schiller-Naumann,变形气泡(Eotvos 数较大)则适合 Ishii-Zuber 或 Grace 模型。Ishii-Zuber 会根据气泡流态(球形、椭球体、帽形)自动切换曳力系数,因此通用性很高。
双流体模型的哲学——“平均化”所失去的东西
欧拉-欧拉(双流体)模型将气液两相作为独立的连续体处理,因此经过了“体积平均·时间平均”的“双重平均化”过程。这个操作抹去了单个气泡/液滴的位置信息,取而代之的是需要“相同界面面积密度”、“曳力系数”等闭合模型。Ishii & Hibiki 的双流体模型教科书至今仍是多相流 CFD 的必备书籍,但作者本人也反复强调“闭合模型的不确定性是最大的课题”。选择的曳力模型不同,鼓泡塔高度的预测可能相差 50% 以上,模型的“哲学正确性”与“实用精度”之间的背离是长久以来争论的源泉。
各项的物理意义
- 时间项 $\partial(\rho\phi)/\partial t$:想象一下打开水龙头的瞬间。一开始水流会不稳定地喷溅,过一会儿才变成稳定的水流,对吧?描述这个“正在变化的过程”的就是时间项。心脏搏动导致血流脉动,发动机阀门每次开闭引起流动变化,这些都是非定常现象。那么定常分析是什么?就是“只观察经过足够长时间、流动稳定之后的状态”——也就是将此项设为零。计算成本大幅降低,因此先用定常求解是 CFD 的基本策略。
- 对流项 $\nabla \cdot (\rho \mathbf{u} \phi)$:把落叶丢进河里会怎样?会被水流带着往下游漂,对吧?这就是“对流”——流体的运动搬运物体的效果。暖气的热风能到达房间的另一端,也是因为空气这个“搬运工”通过对流输送热量。这里有个有趣的地方——这项包含“速度×速度”,因此是非线性的。也就是说,流速加快时此项会急剧增强,变得难以控制。这就是湍流的根本原因。常见的误解:“对流和传导差不多”→ 完全不一样!对流是流动搬运,传导是分子传递。效率有天壤之别。
- 扩散项 $\nabla \cdot (\Gamma \nabla \phi)$:有过把牛奶倒入咖啡后放置的经历吗?即使不搅拌,过一会儿也会自然混合。那就是分子扩散。那么下一个问题——蜂蜜和水,哪个更容易流动?当然是水,对吧?因为蜂蜜的粘度($\mu$)高,所以不易流动。粘度越大,扩散项越强,流体的运动就变得“粘稠”。雷诺数小的流动(缓慢、粘稠)中扩散占主导。相反,Re 数大的流动中对流占压倒性优势,扩散则成为配角。
- 压力项 $-\nabla p$:推注射器的活塞,液体就会从针头有力地射出,对吧?为什么呢?因为活塞侧压力高,针头侧压力低——这个压差产生了推动流体的力。水坝放水也是同样的原理。天气图上等压线密集的地方会怎样?没错,会刮强风。“有压差的地方就会产生流动”——这就是纳维-斯托克斯方程压力项的物理意义。这里容易误解的点:CFD 的“压力”大多是表压而非绝对压力。切换到可压缩分析后结果突然变得奇怪,原因可能就是混淆了绝对压力/表压。
- 源项 $S_\phi$:被加热的空气会上升——为什么呢?因为比周围空气轻(密度低),被浮力推上去了。这个浮力作为源项添加到方程中。此外,燃气灶火焰产生化学反应热、工厂电磁泵对金属熔液施加洛伦兹力……这些都是“从外部向流体注入能量或力”的作用,都用源项表示。忘记源项会怎样?自然对流分析中忘记加入浮力,流体就完全不动——就像冬天在房间里开了暖气,暖空气却不上浮一样,得到物理上不可能的结果。
假设条件与适用范围
- 连续体假设:克努森数 Kn < 0.01(分子平均自由程 ≪ 特征长度)时成立
- 牛顿流体假设:剪切应力与应变速率呈线性关系(非牛顿流体需要粘度模型)
- 不可压缩假设(Ma < 0.3 时):将密度视为常数。马赫数 0.3 以上需考虑可压缩性效应
- Boussinesq 近似(自然对流):仅在浮力项中考虑密度变化,其他项使用恒定密度
- 不适用的情况:稀薄气体(Kn > 0.1)、超音速·极超音速流动(需要捕捉激波)、自由表面流动(需要 VOF/Level Set 等)
量纲分析与单位制
| 变量 | SI单位 | 注意点·换算备忘 |
|---|---|---|
| 速度 $u$ | m/s | 入口条件从体积流量换算时,注意截面积单位 |
| 压力 $p$ | Pa | 区分表压与绝对压力。可压缩分析使用绝对压力 |
| 密度 $\rho$ | kg/m³ | 空气: 约1.225 kg/m³@20°C、水: 约998 kg/m³@20°C |
| 粘性系数 $\mu$ | Pa·s | 注意与运动粘度 $\nu = \mu/\rho$ [m²/s] 混淆 |
| 雷诺数 $Re$ | 无量纲 | $Re = \rho u L / \mu$。层流/湍流转换的判定指标 |
| CFL数 | 无量纲 | $CFL = u \Delta t / \Delta x$。直接关系到时间步长的稳定性 |
数值解法与实现
数值解法的细节
请告诉我欧拉-欧拉法的数值解法。
基本上使用 SIMPLE 系列算法的扩展版。基本流程是依次求解各相的动量方程,然后根据共享压力进行压力修正。
1. 用临时速度场求解各相的动量方程
2. 更新体积分数方程
3. 求解压力修正方程(对各相的连续性方程求和)
4. 修正速度场
5. 更新湍流方程
6. 重复直至收敛
压力是所有相共享的,对吧?
是的。不过,分散相的压力项有时会加入额外的项。例如,在颗粒流(Eulerian Granular)中,固相压力 $p_s$ 会作为体积分数的函数加入。
湍流模型的处理
两相流的湍流模型怎么处理?
有三种方法。
| 方法 | 概要 | 适用 |
|---|---|---|
| 混合湍流模型 | 将混合物作为整体求解一组 k-ε 方程 | 低空隙率、简易计算 |
| 分相湍流模型 | 为每个相分别求解 k-ε 方程 | 精度高但计算成本大 |
| 分散相湍流模型 | 从连续相的 k-ε 推导分散相的湍流 | 气泡流的标准方法 |
在鼓泡塔分析中,气泡诱导湍流(BIT: Bubble-Induced Turbulence)的附加源项很重要。最常用的是 Sato & Sekoguchi 模型。
意思是气泡会产生湍流吗?
没错。气泡的尾流会额外产生湍流动能。在高空隙率情况下,BIT 有时会占主导地位。
求解器设置要点
有什么收敛的技巧吗?
欧拉-欧拉法非线性很强,有时难以收敛。
| 参数 | 推荐值 | 理由 |
|---|---|---|
| 体积分数松弛因子 | 0.2〜0.5 | 抑制急剧变化 |
| 动量松弛因子 | 0.3〜0.5 | 相同力的非线性 |
| 压力-速度耦合 | Phase Coupled SIMPLE | 相间的压力耦合 |
| 时间步长 | $10^{-3}$〜$10^{-2}$ s | 基本进行非定常计算 |
定常计算常常不收敛,所以通常进行非定常计算并取时间平均。对于像鼓泡塔这样的系统,一般先计算数十秒的物理时间,然后才开始取统计量。
SIMPLE vs Coupled Solver——气液双流体计算的收敛策略
欧拉-欧拉型双流体模型的压力-速度耦合解法,如果直接使用单相流的 SIMPLE,压力方程中会交织两相的体积分数,导致收敛变慢。ANSYS CFX 采用的 Coupled Solver(压力·速度·体积分数同时求解的完全隐式法)即使在气液界面陡峭的情况下稳定性也很高,收敛迭代次数有实例显示仅为 SIMPLE 的 1/3〜1/5。不过,每次迭代的计算成本比 SIMPLE 高,最终的计算时间因案例而异。OpenFOAM 的 twoPhaseEulerFoam 在高空隙率(α_g > 0.7)时容易发散,需要谨慎管理时间步长。
迎风格式(Upwind)
一阶迎风:数值扩散大但稳定。二阶迎风:精度提高但有振荡风险。高雷诺数流动中必须使用。
中心差分(Central Differencing)
二阶精度,但 Pe 数 > 2 时会产生数值振荡。适用于低雷诺数的扩散主导流动。
TVD 格式(MUSCL、QUICK 等)
通过限制器函数抑制数值振荡同时保持高精度。对捕捉激波或陡峭梯度有效。
有限体积法 vs 有限元法
FVM:自然满足守恒定律。CFD 的主流。FEM:对复杂形状·多物理场有利。SPH 等无网格法也在发展中。
CFL条件(库朗数)
显式法:CFL ≤ 1 是稳定条件。隐式法:即使 CFL > 1 也稳定,但影响精度和迭代次数。LES:推荐 CFL ≈ 1。物理意义:一个时间步内信息传播不超过一个网格。
残差监控
连续性方程·动量·能量的各项残差下降 3〜4 个数量级可判断为收敛。质量守恒的残差尤其重要。
松弛因子
压力:0.2〜0.3、速度:0.5〜0.7 是一般的初始值。发散时降低松弛因子。收敛后可提高以加速。
非定常计算的内部迭代
在每个时间步内迭代直至收敛到定常解。内部迭代次数:5〜20 次为参考值。如果残差在时间步之间波动,则需要重新审视时间步长。
相关主题
なった
詳しく
報告