CH01 绪论框架
- 本章目标
- 了解CFD发展、现状及地位
- 掌握CFD基本环节
- 思考CFD未来方向
§1.1 流体力学与计算流体力学的发展
流体力学发展四阶段
- 萌芽阶段(16世纪前)
- 代表:阿基米德
- 独立学科基础(16世纪文艺复兴–18世纪中叶)
- 代表:达芬奇、牛顿
- 两大方向形成(18世纪中叶–19世纪末)
- 理论派:欧拉
- 实验派:伯努利
- 飞速发展(19世纪末至今)
- 推动力:航空航天、计算机
计算流体力学(CFD)发展三阶段
- 初创阶段(1920s–1960s)
- Richardson (1922):首个天气数值模拟系统(有限差分法)
- Courant-Friedrichs-Lewy (1928):稳定性分析奠基
- 早期应用:Thom (1933) 圆柱绕流、Kawaguti (1953) NS方程求解
- 走向工程阶段(1970s–1990s)
- Spalding团队:SIMPLE算法、湍流k-ε模型、PHOENICS软件
- 标志性软件:Tempest (FLUENT原型)
- 首部专著:Roache《Computational Fluid Dynamics》(1976)
- 大规模应用阶段(1990s至今)
- 算法突破:
- 矢通量分裂 (Steger-Warming, Van Leer)
- TVD格式 (Harten)、ENO/WENO格式 (Liu/Osher/Jiang-Shu)
- NND格式 (张涵信)、AUSM格式 (Liou)
- 商业软件兴起:FLUENT, CFX, OpenFOAM
- 硬件发展:计算速度提升亿倍(E级计算),TOP500超算榜单
- 算法突破:
CFD发展特征总结
- 依赖计算机硬件
- 以工程应用为牵引
- 多学科交叉的新兴学科
§1.2 计算流体力学的“WWW”
What is CFD?
- 核心要素:
- 流体物理 + 数学控制方程(如NS方程)
- 数值方法 → 离散形式
- 几何模型 → 网格生成 → 计算程序 → 模拟结果
Why use CFD?
- 理论流体力学局限:方程难求解,工业应用少
- 实验流体力学局限:缩比效应、全尺寸试验难、环境模拟不完整
- CFD优势:参数灵活控制、全尺寸模拟、成本低
Where is CFD used?
| 领域 | 应用案例 |
|---|---|
| 航空航天 | 飞行器气动设计(波音787风洞实验仅3次)、发动机燃烧模拟、旋翼流动模拟 |
| 航海舰船 | 船舶横风分析、潜艇噪声优化、螺旋桨效率提升 |
| 轨道交通 | 高铁减阻、隧道入口效应、横风干扰 |
| 汽车工业 | F1赛车流场优化、量产车经济性设计、风噪分析 |
| 建筑环境 | 建筑群风载评估、室内通风模拟 |
| 天气预报 | 大气运动数值模拟(依赖气象观测初值) |
| 能源化工 | 泵/换热器优化、风力涡轮机设计 |
| 生物医学 | 血液流动模拟(非牛顿流体)、病毒传播路径、仿生学研究(翅膀/鱼类游动) |
| 体育竞技 | 高尔夫球轨迹、游泳阻力分析、自行车轮空气动力学 |
§1.3 计算流体力学建模
五大建模环节
- 几何模型
- 工具:CAD/CAE软件(AutoCAD, ANSYS, Abaqus)
- 坐标系模型
- 类型:笛卡尔、柱坐标、球坐标系(简化问题)
- 物理模型
- 流动分类:无黏/有黏、层流/湍流、可压缩/不可压缩、内流/外流
- 控制方程
- 核心方程:质量守恒、动量守恒、能量守恒方程
- 初边值条件
- 初始条件:不影响最终结果,仅影响收敛速度
- 边界条件:壁面(无滑移/自由滑移)、周期性、入口/出口、无反射边界
§1.4 数值计算方法
离散方法
| 方法 | 特点 | 代表 |
|---|---|---|
| 有限差分法(FDM) | 简单成熟、易高精度;复杂网格适应性差 | Richardson (1910), Thom (1933) |
| 有限体积法(FVM) | 控制体形状灵活、守恒性好;高阶精度复杂 | Evans & Harlow (1957) |
| 有限元法(FEM) | 扩散问题精度高;流体求解慢,多用于固体力学 | Courant (1943) |
| 谱方法 | 高精度但计算成本高 |
网格技术
- 类型:
- 结构网格(FDM常用)
- 非结构/混合网格(FVM/FEM适用)
- 网格变换:物理平面 ↔ 计算平面
求解器与后处理
- 求解算法:
- 直接法(Gauss消去、LU分解)
- 迭代法(Jacobi、Gauss-Seidel)
- 后处理:
- 导出量计算(力/力矩/剪应力)
- 可视化:等值线、矢量图、流线动画
可信度评估
- 验证 (Verification):数值解准确性(代码/离散误差)
- 确认 (Validation):模型物理正确性(与实验对比)
§1.5 CFD模拟的未来
- 多学科融合
- 流体-固体/热/噪声/电磁耦合(如飞机气动弹性分析)
- 分区求解技术
- 多软件协同(例:直升机模拟耦合SAMCart/FUN3D/OVERFLOW)
- 机器学习
- 应用:湍流模型优化、气动数据建模、雷诺应力修正
- 云计算
- 低成本按需计算(例:OpenFOAM 0.11元/核心时)
- 虚拟/增强现实
- CFD+VR场景可视化(如STAR-COM+VR平台)
- 交互式仿真
- 实时设计优化(如ANSYS Discovery Live)
CH02 流体力学控制方程及其分类
§2.1 计算流体力学控制方程
1. 流体力学基本方程
- 三大物理定律:
- 质量守恒:
- 动量守恒(牛顿第二定律):
- 能量守恒(热力学第一定律):
2. 流体描述方法
- 欧拉法:
- 固定控制体,研究空间点物理量随时间变化。
- 控制体形状不变,内部流体可变,与外界有质量/动量/能量交换。
- 拉格朗日法:
- 跟踪流体微团,研究其物理量随时间变化。
- 系统质量不变,形状可变,边界与外界有力/能量交换。
3. 控制方程的四种形式
| 形式 | 连续方程示例 | 特点 |
|---|---|---|
| 积分守恒形式 | 固定控制体,适用于有限体积法 | |
| 微分守恒形式 | 空间无限小微元 | |
| 积分非守恒形式 | 随流体运动的有限控制体 | |
| 微分非守恒形式 | 随流体运动的无限小微元 |
4. 物质导数
- 定义:
- 物质导数:运动流体微团的物理量变化率。
- 局部导数:固定空间点的物理量时间变化率。
- 迁移导数:物理量随空间位置的变化率。
5. 流动分类与方程简化
| 分类依据 | 类型 | 简化条件 | 控制方程特点 |
|---|---|---|---|
| 可压缩性 | 不可压流 | (密度恒定) | ,压力为约束变量 |
| 可压流 | (马赫数分类) | 压力可推进求解,可能出现激波 | |
| 黏性 | 无黏流(Euler方程) | (忽略黏性和热传导) | |
| 黏性流(N-S方程) | 考虑黏性应力 和热传导 | 含黏性项 | |
| 时间依赖性 | 定常流 | 时间导数为零 | |
| 非定常流 | 物理量依赖时间 | 含时间导数项 | |
| 流体类型 | 牛顿流体 | 应力-应变率线性() | 本构关系简单 |
| 非牛顿流体 | 假塑性/胀流性/Bingham流体等(非线性本构) | 需复杂本构模型 | |
| 相态 | 单相流 | 单一流体相 | 标准控制方程 |
| 多相流 | 多相共存(液气/液固等) | 需额外相分数方程(如) |
6. 典型流动的方程简化案例
- 定常管道层流:忽略局部/对流加速度,保留压力梯度和黏性力 →
- 突然启动平板流:忽略对流加速度/压力梯度,保留局部加速度和黏性力 →
- 边界层流动:忽略局部加速度,保留对流加速度和黏性力 →
- 无黏定常绕翼型流:忽略黏性力/局部加速度,保留压力梯度与对流加速度 →
§2.2 流体力学控制方程组的分类
1. 方程分类的意义
- 适定性要求:解的存在性、唯一性、连续依赖性。
- 影响域与依赖域:决定数值方法(如双曲型用迎风格式,椭圆型用中心差分)。
- 边界条件提法:需匹配方程类型(如超声速流入口需指定全部参数)。
2. 偏微分方程分类
- 二阶拟线性方程判别式:
-:双曲型(e.g. 超声速势流方程)
-:抛物型(e.g. 声速流动)
-:椭圆型(e.g. 亚声速势流方程)
3. 一阶方程组分类
- 特征值判据:
- 纯双曲型:所有特征值为互异实数(e.g. 一维非定常Euler方程,)。
- 纯抛物型:所有特征值为重实根。
- 纯椭圆型:所有特征值为复数。
- 混合型(e.g. 定常可压流):
-:椭圆-抛物型
-:抛物-双曲型
4. 流体方程组类型汇总
| 方程类型 | 定常流 | 非定常流 |
|---|---|---|
| 可压N-S方程 | 椭圆-双曲型 | 抛物-双曲型 |
| 可压Euler方程 | 亚声速:椭圆-抛物型 超声速:抛物-双曲型 |
抛物-双曲型 |
| 不可压N-S方程 | 椭圆型 | 椭圆-抛物型 |
| 不可压Euler方程 | 椭圆-双曲型 | 椭圆-双曲型 |
5. 定解条件提法
- 初始条件:
- 定常问题:影响收敛速度,不影响最终解。
- 非定常问题:需给定全场初始参数。
- 边界条件:
- 物理边界条件:
- 壁面:无滑移,等温,绝热。
- 入口:指定速度/压力(根据特征线指向域内数量)。
- 出口:法向梯度为零。
- 数值边界条件:补充物理条件不足(如外推法)。
- 物理边界条件:
§2.3 不同类型方程的特性与数值处理
1. 双曲型方程
- 特性:
- 存在特征线,信息沿特征线有限速度传播。
- 解可能间断(e.g. 激波)。
- 数值方法:
- 特征线法:沿特征线积分相容方程。
- 时间推进法:依赖区内步进求解(e.g. 一维Euler方程解耦为三个对流方程)。
- 边界条件:入口特征线数量 = 需指定的物理条件数量。
2. 抛物型方程
- 特性:
- 信息无限速度传播(指数衰减),依赖域为半无限区域。
- 单向依赖性(e.g. 时间向前,空间双向)。
- 数值方法:初始条件+边界条件,沿主方向推进求解(e.g. 非稳态热传导)。
3. 椭圆型方程
- 特性:
- 信息瞬时传遍全解域,无时间依赖。
- 需封闭解域和全场边界条件。
- 数值方法:全场联立求解(e.g. 定常不可压流压力方程)。
§2.4 模型方程及应用
典型模型方程
| 方程 | 形式 | 物理意义 | 数值研究用途 |
|---|---|---|---|
| 线性对流方程 | 无耗散波动 | 格式稳定性、色散误差分析 | |
| 扩散方程 | 黏性/热传导主导 | 耗散误差分析 | |
| Burgers方程 | 对流-扩散耦合 | 激波捕捉格式验证 | |
| Laplace方程 | 稳态场分布 | 椭圆型求解器验证 | |
| 非线性单波方程 | 非线性波动(激波形成) | 间断解处理验证 |
Burgers方程的特性
- 物理意义:简化动量方程(含非线性对流和线性扩散)。
- 数学性质:整体抛物型,兼具波动(特征线传播)和耗散特性。
核心图示总结
- 雷诺数效应(Page 35):圆柱绕流流态随 变化( 层流 → 湍流)。
- N-S方程四项平衡(Page 52):
- 局部加速度(非定常)、对流加速度、压力梯度、黏性力的重要性分布。
- 特征线传播(Page 91, 93):双曲型方程信息沿特征线有限速度传播。
- 非牛顿流体分类(Page 40):应力-应变率曲线(牛顿流/假塑性/胀流性/Bingham流体)。
CH03 有限差分法基础
一、差分格式基础
-
离散化概念
- 定义:用有限离散点/控制体上的表达式近似连续数学表达式
- 核心术语:
- 网格点(节点)
- 空间步长(Δx)、时间步长(Δt)
- 坐标系索引(如 表示位置j、时间层n的值)
-
差商近似原理
- 微商差分:取消极限过程,用差商代替偏导数
- 一阶偏导:
- Taylor展开分析:
- 截断误差(T.E.):
- 微商差分:取消极限过程,用差商代替偏导数
-
常用差分格式
导数阶数 差分类型 公式 精度 一阶导数 前向差分 后向差分 中心差分 二阶导数 中心差分 混合导数 中心差分 时间导数 前差/后差/中心差 , , 依格式而定 -
差分格式构造方法
- 直接差分逼近法:基于Taylor展开
- 待定系数法:
- 例:二阶精度三点前向差分:
- 四阶精度五点中心差分:
- 积分方法:结合控制体积分(见有限体积法)
-
时间-空间组合格式
- 显式格式:逐点求解(如FTBS:)
- 隐式格式:需联立求解方程组(如BTCS)
- 常见组合:
- FTCS(时间前差空间中心差)
- FTBS(时间前差空间后差,迎风格式)
二、差分离散基本原则
-
相容性(Consistency)
- 定义:当 时,差分方程截断误差
- 分类:
- 无条件相容:FTCS格式对扩散方程()
- 条件相容:Lax格式对对流方程(需 固定)
-
稳定性(Stability)
- 定义:计算误差随迭代有界()
- 误差组成:
- 离散误差():差分精确解与PDE解析解之差
- 舍入误差():计算机字长限制
- 分析方法:
- Von Neumann法(Fourier级数)
- 矩阵分析法(谱半径 )
- Hirt法
-
收敛性(Convergence)
- 定义:当 时,数值解趋近解析解()
- 收敛率:
-
Lax等价定理
- 核心:对适定线性初值问题,相容的差分格式收敛 ⇔ 稳定
- 适用条件:
- 初值问题(含周期性边界)
- 问题适定(解存在、唯一、连续依赖初值)
- 线性问题(非线性问题需特殊处理)
三、稳定性分析方法
-
Von Neumann方法
- 步骤:
- 初始误差Fourier展开:
- 定义层间放大因子:
- 稳定性条件:$ |G| \leq 1 $(标量)或 (矩阵)
- 应用案例:
- FTBS格式(对流方程):稳定条件
- Lax-Wendroff格式:稳定条件
- 隐式热传导格式:恒稳定($ |G| = \frac{1}{1+4r \sin^2(\beta h/2)} < 1 $)
- 步骤:
-
多维问题稳定性
- 例:二维扩散方程显式格式:
- 例:二维扩散方程显式格式:
四、有限体积法(FVM)
-
基本思想
- 控制体积分:
- 对比有限差分法:
特性 有限差分法(FDM) 有限体积法(FVM) 基础 微分形式 积分形式 守恒性 依赖格式 天然保证 网格适应性 结构网格易高精度 非结构网格更灵活 几何处理 需度量系数(易引几何守恒问题) 几何量与物理量独立计算
-
离散过程
- 半离散:空间积分 → 常微分方程
- 全离散:时空积分 → 代数方程
- 重构(Reconstruction):由单元均值 $ \bar{u}_j $ 重构分布 $ u(x) $
- 常数重构:$ u(x) = \bar{u}_j $(等价一阶迎风)
- 线性重构:$ u(x) = \bar{u}_j + D_j (x - x_j) $(可提至二阶精度)
- 演化(Evolution):解Riemann问题求通量 $ \hat{f}_{j+1/2} $
- 重构(Reconstruction):由单元均值 $ \bar{u}_j $ 重构分布 $ u(x) $
- 半离散:空间积分 → 常微分方程
-
与FDM等价性
- 一维均匀网格下:
- 常数重构 → FTBS格式
- 线性重构 + 中心差分 → Lax-Wendroff格式
- 一维均匀网格下:
五、关键案例与编程
-
污染物扩散问题
- 控制方程:
- 边界条件:,
- FTCS显式格式:
- 稳定性条件:
- 编程实现:Fortran代码(见Page 34)
-
收敛性验证
- 网格收敛实验:
- 误差定义:
- 结果:高阶格式(如WCNS-E5)收敛更快
CH04 一维抛物型与双曲型方程的数值方法
一、抛物型方程数值方法
§4.1 显格式
-
一般形式
-
一维拟线性抛物型方程:
-
算子形式:,其中。
-
-
Taylor展开法
-,,。
- 中心差分算子:。
- 逆算子:。
-
常系数方程()
-
显格式:,。
- 截断误差:。
-
高阶显格式(取前三项):
- 当 时精度更高。
-
-
自伴随方程()
- 显格式:。
§4.2 隐格式
-
一般形式
-,其中:
-:显格式;:Crank-Nicolson;:全隐格式。 -
典型格式
-
Crank-Nicolson格式:
- 精度:,稳定性:无条件稳定()。
-
全隐格式:
- 精度:,无条件稳定。
-
Du Fort-Frankel格式(蛙跳):
- 稳定性:无条件稳定,但需 保证相容性。
-
-
非线性方程处理
-
隐式离散:。
-
线性化:。
-
追赶法求解三对角方程组,需保证对角占优条件:
-
-
案例:热传导问题
-
方程:。
-
Crank-Nicolson离散:
-
二、双曲型方程数值方法
§4.3 经典差分格式()
-
迎风格式
-
一阶迎风:()。
- 精度:,CFL条件:。
-
二阶迎风(Beam-Warming):
- 精度:,CFL条件:。
-
-
Lax格式
-。
- 精度:,CFL条件:。
-
Lax-Wendroff格式
-
构造:Taylor展开 + 微分方程替换。
- 精度:,CFL条件:。
-
-
MacCormack格式
- 预测步:。
- 校正步:,。
- 等价于Lax-Wendroff格式(线性方程),精度。
§4.4 双曲型方程组()
-
特征分析
- 严格双曲型: 有 个互异实特征值。
- 特征变量:,解耦为。
-
格式构造
-
特征迎风格式:
-
Lax-Wendroff格式:
-
MacCormack格式:
- 预测:。
- 校正:,。
-
-
案例:准一维喷管流动
-
守恒型方程组:
-
MacCormack格式推进,边界条件:
- 左边界:,。
- 右边界:特征相容条件(超声速/亚声速)。
-
三、差分格式分析工具
§4.5 修正方程
-
定义与推导
-
差分方程解析延拓得到的等效微分方程:
-
自循环消元法:用Taylor展开消去时间导数(避免使用原方程)。
-
-
应用
- 稳定性分析:如FTFS格式修正方程含负耗散项(),导致不稳定。
- 格式构造:如Lax-Wendroff格式通过添加 项抑制振荡。
- 人工耗散:添加 项,调节 可得不同格式( 即Lax-Wendroff)。
§4.6 耗散与色散性质
-
概念
- 耗散:振幅衰减(正耗散)或增长(负耗散)。
- 色散:相位误差导致波形畸变(超前/滞后)。
- 来源:修正方程中偶阶项主导耗散,奇阶项主导色散。
-
定量分析
-
放大因子:
-:耗散;:色散。
- 相位误差:,。
-
典型格式特性:
格式 耗散性 色散性 CFL条件 FTBS (迎风) 正 正 CTCS (中心) 无耗散 负 Lax-Wendroff 弱耗散 负 Beam-Warming 弱耗散 正
-
-
高分辨率格式示例
- WENO格式:通过加权组合模板抑制振荡,网格加密可提升激波分辨率(见双马赫反射案例)。
四、特殊方程与数学基础
§4.7 Burgers方程()
-
物理意义
- Navier-Stokes方程的简化模型(含非线性对流与粘性扩散)。
-
数值挑战
- 网格雷诺数:(避免振荡)。
- FTCS格式需满足(即)。
-
耗散与色散平衡
- 中心差分: 时物理耗散不足,引发振荡。
- 迎风差分:引入数值耗散抑制振荡,但可能掩盖物理粘性。
§4.8 双曲守恒律的弱解
-
间断解问题
- 非线性方程(如)特征线相交产生间断。
- Rankine-Hugoniot条件:间断速度。
-
弱解定义
- 积分形式: 或()。
-
熵条件
-
Oleinik条件:对任意,满足
-
物理意义:激波需满足特征线汇聚(左特征速度 > > 右特征速度)。
-
-
案例:交通流模型
- 方程:。
- 激波解(拥堵形成):,。
- 稀疏波解(拥堵解除):,连续解。
核心结论
- 格式选择准则:
- 抛物方程:隐式格式(无条件稳定,需求解矩阵)。
- 双曲方程:迎风/Lax-Wendroff(抑制振荡),高阶格式(如WENO)用于激波捕捉。
- 稳定性与精度:
- CFL条件是必要非充分条件,修正方程揭示深层稳定性。
- 耗散/色散分析是格式优化的理论基础。
- 工程应用:
- 网格雷诺数限制实际计算分辨率,人工耗散不可或缺。
- 弱解与熵条件确保物理可信的间断解(激波、接触间断)。
CH05 可压缩流动的差分方法
一、可压缩流动特性与挑战
- 流动复杂性
- 激波(Shock Wave):厚度约,物理量剧变(熵增过程)。
- 膨胀波(Expansion Wave):物理量连续变化,等熵过程。
- 接触间断(Contact Discontinuity):压力、速度连续,密度不连续。
- 控制方程类型
- 可压NS方程:定常(椭圆-双曲),非定常(抛物-双曲)。
- 可压Euler方程:亚声速(椭圆-抛物),超声速(双曲-抛物)。
- 关键性质:解域存在特征线;守恒型双曲方程存在弱解;差分格式要求高精度、低振荡。
二、Riemann问题(间断分解问题)
1. 定义与重要性
- 初始条件:$ t=0$ 时,$ x<0$ 区,$ x>0$ 区。
- 解的结构:分解为激波、接触间断、中心稀疏波(共5类解)。
- 应用:CFD核心基础,高分辨率格式的基石(如Godunov格式)。
2. 解的类型(基于初值条件)
| 类型 | 结构 | 条件 |
|---|---|---|
| 激波-接触间断-激波 | 两激波夹接触间断 | $ u_1 - u_2 \geq F(P_2)$ |
| 稀疏波-接触间断-激波 | 左稀疏波,右激波 | $ F(P_2) > u_1 - u_2 \geq F(P_1)$ |
| 激波-接触间断-稀疏波 | 左激波,右稀疏波 | 对称于第二类 |
| 稀疏波-接触间断-稀疏波 | 两侧稀疏波 | $ F(P_1) > u_1 - u_2 \geq F(0)$ |
| 稀疏波-真空-稀疏波 | 含真空区 | $ u_1 - u_2 < F(0)$ |
3. 求解方法
- 关键关系式:
- 激波:Rankine-Hugoniot(R-H)关系(质量、动量、能量守恒)。
- 稀疏波:黎曼不变量沿特征线不变:$ u \pm \frac{2c}{\gamma-1} = \text{const}$。
- 数值求解:迭代求解压力$ \overline{P}$ 和速度$ U$,再确定各区流动参数。
三、激波捕捉格式
1. 基本分类
| 方法 | 代表格式 | 特点 |
|---|---|---|
| 激波装配法 | 预先设定激波位置 | 精度高但复杂,适用于简单激波结构。 |
| 激波捕捉法 | 所有主流格式 | 无需预设激波,通过数值耗散自动捕捉。 |
2. 核心问题
- 激波抹平(Smearing):激波跨越多个网格。
- 数值振荡(Oscillation):激波前后非物理波动(色散误差导致)。
3. 改进方法
-
人工粘性法:在激波区添加滤波项(如MacCormack格式+开关函数$ Q$)。
-
混合格式法:上游用$ v_3>0$ 格式(如Beam-Warming),下游用$ v_3<0$ 格式(如Lax-Wendroff)。
-
矢通量分裂(FVS):
- Steger-Warming分裂:$ F = F^+ + F^-$(特征值分裂)。
- van Leer分裂:基于马赫数分段定义(光滑性优于Steger-Warming)。
-
通量差分分裂(FDS):
-
Roe格式:线性化Riemann解,通量公式:
- Roe平均:密度加权平均($ \tilde{u}, \tilde{H}, \tilde{c}$)。
- 熵修正:Harten修正避免非物理解(如激波失稳)。
-
-
混合格式:
- AUSM/AUSM+:对流项与压力项分离处理,格式简洁高效。
四、高分辨率格式
1. Godunov格式
- 思想:网格内物理量片状常数分布 → 求解局部Riemann问题 → 时间步进后网格平均。
- 缺点:一阶精度,耗散大;需精确求解Riemann问题(计算量大)。
2. MUSCL格式(Monotonic Upstream Schemes)
-
核心:高阶插值(线性/二次重构)提升精度。
-
限制器函数:抑制振荡(如
minmod、van Leer、Superbee)。
-
通量计算:结合Roe等近似Riemann求解器。
3. TVD格式(Total Variation Diminishing)
- 思想:保证总变差$ TV(u^{n+1}) \leq TV(u^n)$(抑制振荡)。
- 构造方法:
- Harten条件:系数约束($ D_{j+1/2} \geq 0, C_{j-1/2} \geq 0, D_{j+1/2} + C_{j-1/2} \leq 1$)。
- 限制器设计:如
minmod(保守)、superbee(高分辨率)。
- 推广:方程组需特征分解,多维问题逐维应用。
4. NND格式(无波动、无自由参数耗散格式)
-
思想:激波上游用迎风差分,下游用中心差分(通过
minmod函数自动切换)。 -
通量构造:
五、高精度格式进阶
1. ENO/WENO格式
-
ENO:自适应选择光滑模板($ k$阶多项式插值),本质无振荡。
-
WENO:加权组合多个模板,达到$ 2k-1$ 阶精度(如5阶WENO):
- 光滑因子$ IS_k$:衡量模板光滑度。
2. 紧致格式(Compact Scheme)
- 特点:用邻近点导数值构造高阶格式(模板窄,边界处理难)。
- 例:Lele格式(隐式求解导数,高分辨率但计算复杂)。
六、关键算法对比
| 格式类型 | 代表 | 精度 | 计算量 | 适用场景 |
|---|---|---|---|---|
| FVS | Steger-Warming | 中 | 低 | 高速流动 |
| FDS | Roe | 高 | 中 | 激波分辨率要求高 |
| 混合 | AUSM+ | 高 | 低 | 广泛(不需熵修正) |
| TVD/MUSCL | van Leer限制器 | 二阶+ | 中 | 平衡精度与稳健性 |
| 高阶 | WENO5 | 五阶 | 高 | 复杂流场(高精度需求) |
七、应用示例
- Sod激波管问题:经典Riemann问题验证(激波、接触间断、稀疏波结构)。
- 前向台阶激波反射:对比格式性能(Roe分辨率高,AUSM+无熵修正但易现"毛刺")。
- 激波风洞:利用Riemann问题设计高超音速风洞(激波压缩+等熵膨胀)。
CH06 不可压缩流动
一、不可压缩流动基础
-
数学特性
- 定常不可压NS方程:椭圆型方程(全域联立求解)
- 非定常不可压NS方程:椭圆-抛物型方程
- 关键性质:
- 信息向所有方向传播
- 需封闭解域和完整边界条件
- 压强$ p$ 为约束变量(非热力学参数),密度近似常数
-
直接求解困难
- 压力-速度耦合导致奇偶失联(棋盘振荡)
- 连续方程需严格满足
- 压力需通过泊松方程隐式求解(计算量大)
- 边界误差全场传播
二、数值方法分类
§6.2 人工压缩性方法
- 核心思想:引入伪时间项,将不可压流视为虚拟可压缩流
- 连续方程改造:
- 为自由参数(影响收敛速度)
- 连续方程改造:
- Chorin方法步骤:
- 交错网格布置( 在整点, 在半网格)
- 显式求解动量方程得
- 更新压力
- 迭代至(稳态解)
- 局限:瞬态解无物理意义,仅适用于稳态问题
§6.3 投影法与MAC法
- 投影法(分步求解):
- 步骤:
- 预测步:忽略压力项求解中间速度
- 修正步:解泊松方程
- 投影:
- 特点:一阶时间精度,空间精度依赖离散格式
- 步骤:
- MAC法:投影法 + 交错网格 + 中心差分
§6.4 SIMPLE系列方法
- 基本思想(压力修正法):
- 分解变量:,
- 通过压力修正 驱动速度满足连续性
- SIMPLE算法步骤:
- 假设初始压力场 和速度场
- 求解动量方程得
- 解压力修正方程:
- 更新
- 亚松弛处理:()
- 改进算法:
- SIMPLEC:协调速度修正(收敛提速 20-30%)
- SIMPLER:压力场独立更新(收敛提速 30-50%,计算量增 50%)
§6.5 预处理方法(补充)
- 目的:解决低速流 () 的刚性收敛问题
- 核心:修改时间导数项矩阵,优化特征值条件数
- 预处理后特征值:
- 使(原方法 时)
- 限制:仅适用于定常问题
三、关键技术与应用
-
网格技术
- 交错网格:避免奇偶失联
- 在, 在, 在 - 压力梯度离散:中心差分
- 交错网格:避免奇偶失联
-
边界条件
- 需封闭解域 + 完整物理边界条件
- 压力参考点设定(某点,减少舍入误差)
-
商业软件方法对比
软件 压力基方法 离散格式 FLUENT SIMPLE/SIMPLEC/PISO UD/TVD/QUICK Star-CD SIMPLE/SIMPISO/PISO UD/TVD/QUICK/CD CFX SIMPLE UD/TVD/QUICK/CD
四、示例问题
- 库埃特流动(平板剪切流):
- 几何:板间距,板长,
- 方法验证:人工压缩性法、SIMPLE、SIMPLER
- 结论:
- 定常问题结果与初值无关
- 亚松弛因子 显著影响收敛速度
总结:不可压缩流动求解核心
| 方法 | 适用场景 | 优势 | 局限 |
|---|---|---|---|
| 人工压缩性法 | 稳态问题 | 简单易实现 | 瞬态解无物理意义 |
| 投影法/MAC法 | 非定常问题 | 物理意义清晰 | 时间精度低 |
| SIMPLE系列 | 工业应用主流 | 可扩展至可压缩流 | 需亚松弛,收敛慢 |
| 预处理方法 | 低速可压流求解器 | 统一全速域求解 | 仅限定常问题 |
附:压力泊松方程来源
其中。
CH07 多维问题的差分方法
§7.1 多维问题差分格式特点
-
显式算法直接推广
- 一维扩散方程:
- 格式:$ u_i^{n+1} = [1 + r \delta_{xx}]u_i^n r = \frac{\Delta t}{\Delta x^2}$
- 增长因子:$ G = 1 - 4r \sin^2 \left( \frac{k \Delta x}{2} \right)$
- 稳定性条件:$ r \leq \frac{1}{2}$
- 二维/三维推广:
- 二维格式:$ u_{i,j}^{n+1} = [1 + r_x \delta_{xx} + r_y \delta_{yy}]u_{i,j}^n r_x = \frac{\Delta t}{\Delta x^2}, r_y = \frac{\Delta t}{\Delta y^2}$
- 增长因子:$ G = 1 - 4r \left[ \sin^2 \left( \frac{k_1 \Delta x}{2} \right) + \sin^2 \left( \frac{k_2 \Delta y}{2} \right) \right]$
- 稳定性条件(等步长):$ r \leq \frac{1}{4}$
- 三维稳定性:$ r \leq \frac{1}{6} \Delta x = \Delta y = \Delta z$)
- 一维扩散方程:
-
隐式算法直接推广
- 一维 Crank-Nicolson 格式:
- 格式:$ u_j^{n+1} - \frac{r}{2} \delta_{xx} u_j^{n+1} = u_j^n + \frac{r}{2} \delta_{xx} u_j^n$
- 无条件稳定。
- 二维推广:
- 格式:包含$ x, y$ 方向的隐式差分项。
- 问题:生成 五对角矩阵,直接求解困难(计算量大)。
- 一维 Crank-Nicolson 格式:
§7.2 多维问题求解算法
-
算子分裂算法
- 思路:将多维问题分解为多个一维问题分步求解。
- 示例(二维扩散方程):
- 第一步($ y$ 方向):$ \frac{\partial u}{\partial t} = \beta \frac{\partial^2 u}{\partial y^2}$(半时间步)
- 第二步($ x$ 方向):$ \frac{\partial u}{\partial t} = \beta \frac{\partial^2 u}{\partial x^2}$(半时间步)
- 稳定性:需满足单维稳定性条件($ r \leq \frac{1}{2}$)。
-
交替方向隐式格式(ADI)
- P-R 格式(1955年提出):
- 分两步交替隐式处理$ x$ 和$ y$ 方向。
- 二维示例:
- 第一步(隐式$ x y u_{j,m}^{n+1/2} - u_{j,m}^n = \frac{\beta \Delta t}{2} \left( \delta_x^2 u_{j,m}^{n+1/2} + \delta_y^2 u_{j,m}^n \right)$
- 第二步(显式$ x y u_{j,m}^{n+1} - u_{j,m}^{n+1/2} = \frac{\beta \Delta t}{2} \left( \delta_x^2 u_{j,m}^{n+1/2} + \delta_y^2 u_{j,m}^{n+1} \right)$
- 优点:无条件稳定,精度$ O(\Delta t^2, \Delta x^2)$。
- 三维推广(Douglas-Brian 格式):
- 分三步处理$ x, y, z$ 方向,但稳定性非无条件。
- P-R 格式(1955年提出):
-
跳点算法
- 思路:按网格点位置(奇偶性)交替更新解。
- 二维示例:
- 若$ n + j + k + 1$ 为偶数:显式更新
$ \overline{u}{j,k}^{n+1} = u{j,k}^n + r_1 \delta_x^2 u_{j,k}^n + r_2 \delta_y^2 u_{j,k}^n$ - 若$ n + j + k + 1$ 为奇数:隐式更新
$ u_{j,k}^{n+1} = u_{j,k}^n + r_1 \delta_x^2 \overline{u}{j,k}^{n+1} + r_2 \delta_y^2 \overline{u}{j,k}^{n+1}$
- 若$ n + j + k + 1$ 为偶数:显式更新
- 特点:二阶精度、无条件稳定。
§7.3 差分方程组的时间积分法
-
Runge-Kutta 方法
-
通用形式:
-
常用阶数:
- 一阶(欧拉格式):$ U^{n+1} = U^n + \Delta t L(U^n)$
- 二阶:
$ U^{(1)} = U^n + \Delta t L(U^n)$
$ U^{n+1} = \frac{1}{2} (U^n + U^{(1)}) + \frac{1}{2} \Delta t L(U^{(1)})$ - 三阶(TVD 格式):
$ U^{(1)} = U^n + \Delta t L(U^n)$
$ U^{(2)} = U^n + \frac{1}{4} \Delta t L(U^n) + \frac{1}{4} \Delta t L(U^{(1)})$
$ U^{n+1} = U^n + \frac{1}{6} \Delta t L(U^n) + \frac{1}{6} \Delta t L(U^{(1)}) + \frac{2}{3} \Delta t L(U^{(2)})$
-
-
近似因子分解法(AF 法)
- 步骤:
- 线性化通量(Beam-Warming):
$ F^{n+1} \approx F^n + A^n \delta U^n G^{n+1} \approx G^n + B^n \delta U^n$ - 构造增量方程:
$ [I + \theta \Delta t (D_x A^n + D_y B^n)] \delta U^n = -\Delta t (D_x F^n + D_y G^n)$
- 线性化通量(Beam-Warming):
- 特点:需迭代求解大型稀疏矩阵。
- 步骤:
§7.4 差分方程组的数值解法
-
直接法
- Gauss 消去法:计算量$ O(n^3/3)$,适合小规模问题。
- LU 分解法:
- 分解$ A = LU Ly = b Ux = y$。
- 优点:可复用分解结果,保留矩阵稀疏性。
- 追赶法:专用于三对角/五对角矩阵,计算量$ O(n)$.
-
迭代法
- Jacobi 迭代:
$ x_i^{k+1} = \frac{1}{a_{ii}} \left( b_i - \sum_{j \neq i} a_{ij} x_j^k \right)$ - Gauss-Seidel 迭代:
$ x_i^{k+1} = \frac{1}{a_{ii}} \left( b_i - \sum_{j<i} a_{ij} x_j^{k+1} - \sum_{j>i} a_{ij} x_j^k \right)$ - 松弛迭代法:引入松弛因子$ \omega$ 加速收敛。
- Jacobi 迭代:
-
LU-SGS 方法
- 思想:矩阵分裂$ A \approx (D + L) D^{-1} (D + U)$。
- 步骤:
- 解下三角系统:$ (D + L)y = b$
- 解上三角系统:$ (D + U)x = D y$
- 优点:高效、稳定性好,广泛用于定常流动。
-
双时间步方法
- 思路:在真实时间步内嵌套虚拟时间迭代。
- 格式:
$ \frac{U^{p+1} - U^p}{\Delta \tau} + \frac{3U^{p+1} - 4U^n + U^{n-1}}{2\Delta t} = L_{\Delta x}(U^{p+1})$ - 应用:非定常流动的高效求解。
-
多重网格法
- 原理:利用不同尺度网格消除不同频率误差分量。
- 步骤:
- 细网格迭代,计算残差。
- 残差限制到粗网格。
- 粗网格求解误差。
- 误差插值回细网格修正解。·
- 迭代方式:V 型、W 型循环。
-
预处理法
- 目的:解决刚性问题(如不可压流模拟中矩阵条件数大)。
- 方法:调整方程条件数,加速收敛。
案例与关键结论
-
污染物扩散案例:
- 方程:$ \frac{\partial C}{\partial t} = \beta \left( \frac{\partial^2 C}{\partial x^2} + \frac{\partial^2 C}{\partial y^2} \right)$
- 显式 FTCS 推广:时间步过大导致发散(需$ r \leq \frac{1}{4}$)。
-
重要结论:
- 显式格式:维数增加导致稳定性更严格(二维$ r \leq \frac{1}{4} r \leq \frac{1}{6}$)。
- 隐式格式:直接推广生成高维稀疏矩阵,需专用算法(如 ADI、算子分裂)。
- 高效方法:LU-SGS(定常流)、双时间步(非定常流)、多重网格(加速收敛)。
知识框架总结:
1 | graph LR |
以下是基于《第7章-多维问题的差分方法》讲义整理的适合出简答题、判断题和分析题的知识点,按题型分类归纳:
一、简答题知识点
-
显式格式的稳定性条件
- 问题:为什么二维显式FTCS格式的稳定性条件($ r \leq 1/4 r \leq 1/2$)更严格?
- 答案:维数增加导致增长因子中的正弦项叠加(如$ \sin^2(k_1 \Delta x/2) + \sin^2(k_2 \Delta y/2)$),误差放大更快。
-
ADI方法的核心思想
- 问题:交替方向隐式(ADI)格式如何解决二维隐式差分矩阵的求解困难?
- 答案:将时间步拆分为两半,交替在 和 方向隐式求解(如第一步隐式 显式,第二步隐式 显式),转化为两个三对角方程组。
-
双时间步方法的原理
- 问题:双时间步方法如何提高非定常流动的计算效率?
- 答案:在真实时间层内嵌套虚拟时间迭代,用隐式格式(如LU-SGS)处理刚性项,允许大时间步长。
-
多重网格法的加速机理
- 问题:多重网格法为什么能加速迭代收敛?
- 答案:不同频率的误差分量在不同尺度网格上衰减速度不同(粗网格消除低频误差,细网格消除高频误差)。
二、判断题知识点
-
稳定性条件
- 命题:三维显式FTCS格式的稳定性条件是$ r \leq 1/4$。
- 答案:错误(正确应为$ r \leq 1/6$)。
-
隐式格式特性
- 命题:二维Crank-Nicolson格式直接推广后无条件稳定,且易于求解。
- 答案:错误(无条件稳定但生成五对角矩阵,直接求解困难)。
-
跳点算法
- 命题:跳点算法通过奇偶网格交替更新,其稳定性与显式格式相同。
- 答案:错误(跳点算法无条件稳定,显式格式有条件稳定)。
-
LU-SGS方法
- 命题:LU-SGS是一种显式时间推进方法。
- 答案:错误(是隐式方法,通过矩阵分裂高效求解)。
-
Runge-Kutta法
- 命题:所有三阶Runge-Kutta格式均满足TVD性质。
- 答案:错误(仅特定系数组合如TVD-RK3满足)。
三、分析题知识点
-
显式与隐式格式对比
- 问题:分析显式和隐式格式在多维问题中的优缺点及适用场景。
- 分析要点:
- 显式:简单但 小(稳定性严),适合小规模问题。
- 隐式: 大但求解复杂(需迭代/分裂),适合高维刚性系统。
-
ADI格式的误差来源
- 问题:从P-R格式的修正方程(Page 25)分析其截断误差阶数。
- 分析要点:
- 修正项含$ \frac{\beta^2 \Delta t^2}{4\Delta x^4} \delta_x^2 \delta_y^2 O(\Delta t^2, \Delta x^2)$。
-
多重网格的误差衰减
- 问题:结合Fourier分析(Page 71-72),解释为何粗网格能加速低频误差衰减。
- 分析要点:
- 低频误差在细网格上衰减慢($ |G| \approx 1 |G| \approx 0.33$),衰减更快。
-
算子分裂的精度损失
- 问题:算子分裂算法为何可能降低精度?如何改进?
- 分析要点:
- 分裂误差源于非交换性算子(如$ L_x L_y \neq L_y L_x$);
- 改进:采用Strang分裂(半步长对称分裂)。
四、综合应用题
案例:二维污染物扩散问题
-
方程:
-
边界条件:
- 排污口(左下角):$ C(t,0,0)=20.0$
- 右/上边界:零梯度边界。
问题:
- 若用显式FTCS计算,取$ \Delta x = \Delta y = 1 \text{m} \Delta t$。
- 计算结果发散(Page 6),分析原因。
- 提出两种改进算法并说明优势。
参考答案:
-
稳定性条件:
-
发散原因:实际$ \Delta t$ 过大(如取1000步),违反$ r \leq 1/4$。
-
改进方案:
- ADI格式:无条件稳定,允许大$ \Delta t$;
- 跳点算法:无条件稳定且易于并行。
CH08 数值网格生成技术
§8.1 网格技术概述
- 网格与CFD的关系
- 网格生成占CFD总耗时的60%-80%,是影响计算精度和收敛性的关键因素。
- 复杂外形网格生成是CFD推广的主要障碍。
- 网格分类
- 结构网格:
- 数据按数组索引(i,j,k)存储,索引高效。
- 优点:计算精度高、贴体性好;缺点:复杂外形生成困难。
- 退化形式:二维三角形、三维五面体。
- 非结构网格:
- 基本单元:二维三角形、三维四面体。
- 优点:适应复杂外形、支持自适应加密;缺点:内存和计算开销大、数据结构复杂。
- 混合网格:
- 结合结构与非结构网格优势(如金字塔形、三棱柱网格)。
- 结构网格:
- 流场计算对网格的要求
- 结构网格:物理空间到计算空间的映射需一一对应;网格线接近流线;满足正交性。
- 共同要求:网格变化连续;流动参数剧烈区域需加密网格。
§8.2 结构网格生成
-
贴体坐标系
-
物面条件处理方便,控制方程通过坐标变换转化为规则区域求解。
-
二维变换公式:
其中,, 为雅可比行列式。
-
-
物理空间到计算空间的映射
- 单连域:区域内任意封闭曲线可连续收缩至一点。
- 多连域:采用"H型"或"C型"网格拓扑(如翼身组合体)。
-
生成方法
- 代数生成法:
- 插值函数(Lagrange/Hermite/样条函数)快速生成,但网格质量难控制。
- 椭圆型方程法:
- 控制方程:(椭圆型)。
- 通过源项 控制网格疏密(如向特定 加密)。
- 优点:映射一一对应、光滑性好;缺点:计算量大。
- 双曲型方程法:
- 正交条件:,面积分布函数。
- 比椭圆法快1-2个量级,需沿方向推进求解。
- 代数生成法:
-
多区技术
- 拼接网格(Patched Grid):通量守恒性好,连接处理复杂。
- 重叠网格(Overlapped Grid):适于多体相对运动,但通量守恒性难保证。
§8.3 非结构网格生成
-
基本方法
- 用简单几何体(三角形/四面体)填充计算域。
-
核心算法
- Delaunay方法:
- 准则:三角形外接圆内无其他节点。
- 优点:网格质量高(最小角最大化)、效率高;缺点:三维可靠性低。
- 关键步骤:Lawson算法(交换对角边)、Bowyer-Watson算法(插入新点)。
- 推进波前法:
- 从边界阵面推进生成单元,优先选择质量最优(接近等边)的单元。
- 优点:网格质量好;缺点:算法复杂度适中。
- 有限叉树法:
- 二维/三维:四叉树/八叉树细分,再划分为三角形/四面体。
- 优点:易自适应;缺点:边界网格质量差。
- Delaunay方法:
-
方法对比
性能 Delaunay 有限叉树法 推进波前法 计算效率 网格质量 2D优,3D差 边界差 2D/3D均优 自适应支持 是 是 是 可靠性(3D) 低 中 高
§8.4 特殊网格方法
- 混合网格:
- 近壁面用结构网格,远场用笛卡尔网格(结合精度与效率)。
- 多区重叠网格:
- 不同区域用独立求解器(如机身用FUN3D非结构网格,旋翼用OVERFLOW结构网格)。
- 网格自适应技术:
- 基于流场梯度(如压力、马赫数)动态加密网格。
- 网格变形技术:
- 用于运动边界问题(如气动弹性分析)。
§8.5 网格生成软件
- 主流软件:
- Pointwise:
- 支持结构/非结构网格,操作流程:几何导入→生成Connector→Domain→Block→导出。
- ICEM CFD:
- 优势:多区结构网格生成,文件类型:.tin(几何)、.blk(块拓扑)、.uns(网格)。
- Hypermesh:侧重有限元前处理;Gambit:已被ICEM取代。
- Pointwise:
- 操作共性:
- 几何导入→网格尺寸设置→生成/优化网格→边界条件定义→导出求解器格式。
§8.6 几何守恒律(GCL)
- 核心问题:
- 动网格变换需满足:(无物理源项时保证解守恒)。
- 物理意义:
- 雅可比行列式 表示网格控制体积,度量系数对应有向面积。
- 重要性:
- 高精度格式需满足GCL以避免几何诱导误差(如涡输运、激波捕捉问题)。
关键结论
- 网格选择:简单外形优选结构网格;复杂外形用非结构/混合网格。
- 方法趋势:推进波前法(质量优)、Delaunay法(效率高)是主流。
- 软件应用:Pointwise/ICEM支持工业级复杂网格生成。
- 守恒律:GCL是动网格高精度计算的基础。

