LES基础理论 — 理论与控制方程
理论与物理
LES(大涡模拟)是什么
老师,我听说LES是介于RANS和DNS之间的一种方法,具体是怎么考虑的呢?
问得好。湍流包含各种尺度的涡,但LES通过空间滤波,直接计算大尺度的涡,而将小于滤波宽度的尺度涡(亚格子尺度,SGS)用模型来近似。
原来如此,大涡直接求解,只对小涡进行建模。那和DNS的区别是什么?
DNS需要解析直到Kolmogorov尺度 $\eta_K$ 的所有涡,因此所需的网格点数约为 $N \sim Re^{9/4}$ 量级。对于实用雷诺数的工业问题,这根本不可能计算。LES通过将滤波宽度 $\Delta$ 取得比Kolmogorov尺度大,从而大幅降低计算成本。
空间滤波的数学定义
滤波具体是什么样的数学操作呢?
对于任意物理量 $\phi(\mathbf{x}, t)$,滤波操作由卷积积分定义。
$$ \bar{\phi}(\mathbf{x}, t) = \int_{-\infty}^{\infty} G(\mathbf{x} - \mathbf{x}', \Delta) \, \phi(\mathbf{x}', t) \, d\mathbf{x}' $$
老师,我听说LES是介于RANS和DNS之间的一种方法,具体是怎么考虑的呢?
问得好。湍流包含各种尺度的涡,但LES通过空间滤波,直接计算大尺度的涡,而将小于滤波宽度的尺度涡(亚格子尺度,SGS)用模型来近似。
原来如此,大涡直接求解,只对小涡进行建模。那和DNS的区别是什么?
DNS需要解析直到Kolmogorov尺度 $\eta_K$ 的所有涡,因此所需的网格点数约为 $N \sim Re^{9/4}$ 量级。对于实用雷诺数的工业问题,这根本不可能计算。LES通过将滤波宽度 $\Delta$ 取得比Kolmogorov尺度大,从而大幅降低计算成本。
滤波具体是什么样的数学操作呢?
对于任意物理量 $\phi(\mathbf{x}, t)$,滤波操作由卷积积分定义。
这里 $G$ 是滤波核函数,$\Delta$ 是滤波宽度。代表性的滤波器有Box(顶帽)滤波器、高斯滤波器、Sharp spectral(截止)滤波器。
实际的CFD代码中,使用的是哪种滤波器呢?
基于有限体积法的代码(Fluent、STAR-CCM+、OpenFOAM等)通常使用基于单元体积的隐式滤波。滤波宽度常定义为单元的代表长度,如 $\Delta = V_{cell}^{1/3}$ 或 $\Delta = (\Delta x \cdot \Delta y \cdot \Delta z)^{1/3}$。
滤波后的Navier-Stokes方程
将滤波应用于Navier-Stokes方程,会变成什么样呢?
对于不可压缩流体,滤波后的连续方程和动量方程如下。
这里重要的是,非线性项 $\overline{u_i u_j}$ 无法用滤波后速度的乘积 $\bar{u}_i \bar{u}_j$ 来近似,因此产生了SGS应力张量。
这个 $\tau_{ij}^{sgs}$ 就是需要建模的对象对吧。
没错。为了使SGS应力张量封闭而建立的模型就是SGS模型,提出了各种模型,例如Smagorinsky模型、动态Smagorinsky模型、WALE模型等。
涡粘性假设
很多SGS模型都使用了“涡粘性”这个概念,这是什么?
将Boussinesq假设应用于小尺度涡,使SGS应力张量的偏量部分与应变速率张量成正比。
这里 $\bar{S}_{ij} = \frac{1}{2}\left(\frac{\partial \bar{u}_i}{\partial x_j} + \frac{\partial \bar{u}_j}{\partial x_i}\right)$ 是滤波后的应变速率张量,$\nu_{sgs}$ 是SGS涡粘性系数。各SGS模型的区别就在于如何评估这个 $\nu_{sgs}$。
和RANS的涡粘性想法类似呢。但LES是作为局部、瞬时的值来计算,这点不同对吧。
没错。RANS使用时间平均的涡粘性,但LES评估的是滤波操作后瞬时场中的局部涡粘性。这个区别在物理上非常重要。
“滤波”这个名字的由来
将LES的“空间滤波”概念首次系统化的是气象学家Joseph Smagorinsky。他在1963年论文中的想法很简单:“只求解大气的大尺度运动,将小尺度湍流效应平均化并进行参数化”。CFD界现在理所当然使用的“滤波宽度 $\Delta$”这个词,最初也源于气象模型的网格间距。天气预报模型的想法,如今被转用于发动机燃烧模拟,这真是一段有趣的旅程呢。
各项的物理意义
- 时间项 $\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$。直接关系到时间步长的稳定性 |
数值解法与实现
LES的空间离散化
实现LES时,空间离散化需要注意什么?
LES需要精确解析滤波宽度以上的涡结构,因此要求数值耗散小的格式。二阶中心差分是最低要求,理想情况下应使用高阶中心差分或紧致差分。
迎风格式不行吗?
一阶精度的迎风格式绝对不能用。其数值耗散会远超SGS模型的耗散,导致涡结构被人为抹除。二阶迎风格式也需注意,如果使用混合格式(例如中心差分与迎风格式的混合),应确保中心差分的比例足够高。OpenFOAM的linearUpwind或Fluent的Bounded Central Differencing是实务中的折衷选择,但如果中心差分比例过低,LES就失去意义了。
时间积分格式
时间离散化该怎么处理?
LES本质上是非定常计算,因此时间积分的精度也很重要。至少需要二阶精度,代表性的选择如下。
| 格式 | 精度 | 特点 |
|---|---|---|
| 二阶向后差分(BDF2) | 2阶 | 隐式、稳定、OpenFOAM的backward |
| Crank-Nicolson | 2阶 | 隐式、可能产生振荡 |
| Adams-Bashforth 2阶 | 2阶 | 显式、受CFL条件限制 |
| Runge-Kutta 3/4阶 | 3-4阶 | 显式、高精度、谱方法代码中常见 |
时间步长的确定有标准吗?
用CFL数(Courant-Friedrichs-Lewy数)来管理。显式格式下 $CFL < 1$ 是稳定条件,但为了确保LES精度,即使是隐式格式,最好也将 $CFL \sim 1$ 左右。CFL数定义为 $CFL = \frac{u \Delta t}{\Delta x}$。
压力-速度耦合
不可压缩LES的压力-速度耦合怎么处理?
PISO(Pressure Implicit with Splitting of Operators)法最为常用。在每个时间步内进行一次预测步和两次以上的修正步。OpenFOAM中的pimpleFoam求解器采用了PIMPLE(PISO+SIMPLE)算法,广泛用于LES。Fluent中推荐使用Non-Iterative Time Advancement (NITA) + fractional step法的组合。
网格分辨率要求
LES的网格需要多细?看起来和RANS完全不同呢。
对于壁面解析LES(wall-resolved LES, WRLES),壁面附近的网格分辨率要求非常严格。
| 方向 | 要求(壁面单位) | 备注 |
|---|---|---|
| 壁面垂直方向 $\Delta y^+$ | < 1 (第一层网格) | 解析粘性底层 |
| 流向 $\Delta x^+$ | 50 - 100 | 解析条带结构 |
| 展向 $\Delta z^+$ | 15 - 40 | 解析流向涡对 |
这里壁面单位为 $y^+ = y u_\tau / \nu$,$u_\tau = \sqrt{\tau_w/\rho}$。
需要这么细吗?计算成本看起来会非常庞大呢。
相关主题
なった
詳しく
報告