连续性方程(质量守恒)
连续性方程(质量守恒)的理论基础
概述
老师,连续性方程经常和NS方程一起出现,它表示的是什么意思呢?
它是质量守恒定律的微分形式。是把“流体不会凭空产生或消失”这一物理规律用数学公式表达出来。是CFD所有计算的基础。
一般形(可压缩流)
适用于任意流体的连续性方程如下。
展开后得到,
各项应该怎么理解呢?
$\partial\rho/\partial t$ 是控制体内密度的变化率。$\nabla\cdot(\rho\mathbf{u})$ 是通过控制体表面的质量通量的净流出率。两者之和为零,意味着质量是守恒的。
物质微分形
使用物质导数 $D/Dt$ 可以写成另一种形式。
这意味着“跟随流体粒子观察时,其密度的变化率与速度场的散度成正比”。
不可压缩流的情况
不可压缩时 $\rho$ 是常数对吧?
没错。因为 $D\rho/Dt = 0$,所以连续性方程变得非常简单。
分量形式为,
这意味着“速度场是无散的(divergence-free)”。也称为螺线管条件。
有没有不可压缩但密度随位置变化的情况(比如多相流)?
很敏锐的观察。例如,温差引起的浮力流(Boussinesq近似)只在浮力项中考虑密度变化,连续性方程仍使用 $\nabla\cdot\mathbf{u}=0$。但是,在使用VOF(Volume of Fluid)法处理水与空气时,密度会发生不连续变化,这时就需要使用可压缩形式的连续性方程。
积分形
作为有限体积法基础的积分形式也很重要。对于控制体 $V$,有:
在FVM中,在每个单元上对这个积分形式进行离散化。SIMPLE算法的核心就是调整压力场,使得通过单元面的质量通量收支为零。
血管堵塞时流速会变为16倍
连续性方程(质量守恒)在日常生活中最令人心惊的例子是动脉狭窄。横截面积减半,流速会变为2倍;但如果直径减半,横截面积会变为1/4,流速则变为4倍。那么,如果发生直径减半的动脉硬化呢?流速变为4倍,而壁面剪切应力与流速的平方成正比,所以实际上会增加到16倍以上。如果已经沉积了斑块的动脉壁承受着这样的应力——斑块当然会脱落。连续性方程在教科书里看起来不起眼,但心脏外科医生每天都在使用它。
数值解法与实现
不可压缩流中压力的作用
不可压缩时连续性方程里没有压力项呢。压力是怎么确定的?
这个问题问到了核心。在不可压缩NS方程中,密度是已知的,所以连续性方程 $\nabla\cdot\mathbf{u}=0$ 作为确定压力的约束条件,起到了状态方程的作用。压力可以理解为“为使速度场保持无散而引入的拉格朗日乘子”。
压力-速度耦合方法
我们来整理一下代表性的算法。
| 方法 | 概要 | 适用 |
|---|---|---|
| SIMPLE | 压力修正法。假设速度→压力修正→速度修正 | 定常·非定常 |
| SIMPLEC | SIMPLE的加速收敛版。无需修正的松弛 | 定常问题 |
| PISO | 一个时间步内进行两次压力修正。适合非定常 | 非定常问题 |
| 分离法(Fractional Step) | 速度预测→压力泊松方程→速度投影 | 非定常·学术代码 |
| Coupled | 同时求解速度和压力 | 需要快速收敛的情况 |
感觉SIMPLE是最常见的。
SIMPLE的压力修正方程,是从连续性方程推导出的泊松型方程。
这里 $p'$ 是压力修正值,$\mathbf{u}^$ 是假设速度(从动量方程暂定求得的速度),$a_P$ 是动量方程的对角线系数。用 $p'$ 来修正 $\nabla\cdot\mathbf{u}^ \neq 0$ 的残差。
质量守恒的验证
如何确认计算结果是否满足质量守恒?
检查各个面的质量流量的收支。
在Fluent中,可以通过 Report > Fluxes > Mass Flow Rate 查看各边界面的流量。如果不平衡量在总流量的0.1%以下,就认为收敛得足够好了。
Rhie-Chow插值
在同位网格(速度和压力布置在同一位置)中,会出现棋盘式不稳定性。Rhie-Chow插值是通过在单元面的速度上添加压力梯度修正来解决此问题的方法,在现代有限体积法求解器中已成为标准配置。
连续性方程看起来简单,但在数值实现上需要相当多的技巧呢。
是的。不可压缩CFD的大部分难点,都归结于“如何满足连续性方程”,也就是压力-速度耦合的问题。
流量计都基于连续性方程工作
工厂管道中使用的差压式流量计(孔板流量计)的工作原理,就是连续性方程本身。在节流处减小横截面积以提高流速,根据伯努利定理压力会下降。测量前后的压力差,就能反算出流量。飞机的空速计(皮托管)也是同样原理。在数值分析中,计算后确认“入口流量=出口流量”是否成立也是最基本的步骤。如果连续性方程不成立,要么是网格有泄漏,要么是边界条件有矛盾。