推一本2024年的,【老铁驱动】的CFD教材

学术   2024-08-14 14:09   法国  

跟进时代的CFD书籍

我从2019年开始写我这本书,从2019年开始,我写了5年。

这本书前3章特别简单,就是我的CFD算法编程课的预习内容。前三章就是给他们写的。所有参加我得CFD算法编程课的人都必须要预习。这部分内容特别简单。

后面的内容我就开始大干一场了。所有的内容都是CFD直接相关。我还专门讨论了CFD与流体力学的区别。不知道现在会不会有人把CFD当成流体力学。这俩的研究重点完全不一样。咱这本书,侧重CFD,不是流体力学。

最近我还增加了很多数据驱动CFD的东西。这个东西比较新。很多经典CFD课题组还没有转变过来。我希望大家可以关注关注。还是挺有意思。能做一些经典CFD看起来完全不能干的事情。比如3秒出结果。

特色

有特色的地方在于:全部手敲。可能有人问,写书手敲不是应该的么?为啥还变成特色了?因为很多人都是复制粘贴,导致整个行业都变差了。这就跟卖课一样,很多纯属割韭菜,导致整个行业变差。100%的文字全部手敲。90%的图都是我自己画的,一些图是sci里面的。

我自己对CFD的理解,力求好理解。就比如里面OpenFOAM相关内容占了100多页,我都是自己从代码理解出来的。一些教材解释的思路比较奇葩也比较复杂。我的解释一般相对简单明了。

涵盖各类CFD的细节以及前沿。这本书是老铁驱动来写的。老铁对算法看不明白,我就解析一下,写进去。




下面是2024年8月14日更新的全书目录:

第一版前言

第二版前言

第一章 不只是N-S方程

第二章 方程标识

  • 2.1 方程的各种写法
  • 2.2 索引标识法
  • 2.3 偏导标识法
  • 2.4 运算符标识法
  • 2.5 的不同写法

第三章 N-S控制方程

  • 3.1 导论
  • 3.2 泰勒公式
  • 3.3 流动模型
    • 3.3.1 有限控制体模型
    • 3.3.2 无穷小微团模型
    • 3.3.3 物质导数
  • 3.4 连续性方程
    • 3.4.1 微分形式
    • 3.4.2 积分形式
    • 3.4.3 通量与速度散度
    • 3.4.4 拉格朗日观点
    • 3.4.5 连续性方程小结
  • 3.5 动量方程
    • 3.5.1 受力分析
    • 3.5.2 动量守恒
    • 3.5.3 守恒/非守恒转化
    • 3.5.4 封闭
    • 3.5.5 积分观点
  • 3.6 学习要求与思考

第四章 经典CFD

  • 4.1 湍流
    • 4.1.1 直接模拟DNS
    • 4.1.2 大涡模拟LES
    • 4.1.3 雷诺平均RANS
    • 4.1.4 二维DNS/LES
    • 4.1.5 RANS-LES混合模型、DES模型
  • 4.2 多相流
    • 4.2.1 微观模型
    • 4.2.2 宏观模型
    • 4.2.3 介尺度模型
    • 4.2.4 多尺度模型的适用性
  • 4.3 动理学方程与矩方法
    • 4.3.1 速度分布函数
    • 4.3.2 矩方程
    • 4.3.3 欧拉方程、五矩方程、十矩方程
  • 4.4 Von Neumann稳定性分析与截断误差
    • 4.4.1 变量分离法
    • 4.4.2 抛物线方程稳定性分析、无条件稳定
    • 4.4.3 截断误差
  • 4.5 双曲系统与高阶格式
    • 4.5.1 黎曼问题、双曲系统、特征变量
    • 4.5.2 积分形式与守恒方程
    • 4.5.3 封闭与基架点
    • 4.5.4 中心格式
    • 4.5.5 Lax-Friedrichs格式
    • 4.5.6 Kurganov-Tadmor格式
    • 4.5.7 Roe格式
    • 4.5.8 Godunov格式
  • 4.6 化学反应、ODE求解器
    • 4.6.1 复杂反应、基元反应、可逆反应
    • 4.6.2 反应速率、质量作用定律
    • 4.6.3 刚性方程组、一个反应实例
    • 4.6.4 ODE求解器
  • 4.7 大气边界层与大气稳定度
    • 4.7.1 湍流动能自保持
    • 4.7.2 地转风与科氏力
    • 4.7.3 中性、稳定以及不稳定大气环境
    • 4.7.4 下垫面
  • 4.8 多孔介质模型
    • 4.8.1 多孔介质平均技术
    • 4.8.2 Darcy定律
    • 4.8.3 Forschheimer-Darcy定律
    • 4.8.4 一个错误
    • 4.8.5 多相多孔介质、IMPES算法
    • 4.8.6 Darcy-Brinkman-Stokes方程、固相连续介质模型
  • 4.9 结构力学、可变形的固体
    • 4.9.1 两相固液多孔介质模型
  • 4.10 稀疏线性系统求解器
    • 4.10.1 基本迭代求解器
    • 4.10.2 多重网格求解器
  • 4.11 CFD小问题
    • 4.11.1 CFD中的能量方程
    • 4.11.2 结构网格与非结构网格
    • 4.11.3 为什么为体膨胀系数项?
    • 4.11.4 二阶张量不变量:Invariants
    • 4.11.5 什么是应力的Deviatoric与Hydrostatic部分?
    • 4.11.6 湍流方程中的涡粘近似、
    • 4.11.7 NS方程的角动量守恒
    • 4.11.8 变量有界性
    • 4.11.9 守恒与非守恒、守恒变量与原始变量
    • 4.11.10 分离式求解器与耦合式求解器
    • 4.11.11 方程奇异
    • 4.11.12 显性离散、隐性离散
    • 4.11.13 Jacobian矩阵
    • 4.11.14 非牛顿流体
    • 4.11.15 Stokes流动
    • 4.11.16 算子分裂法
    • 4.11.17 总温、驻点温度
    • 4.11.18 Sutherland法则
    • 4.11.19 波的传输与边界条件
    • 4.11.20 计算气动声学
    • 4.11.21 Partial Elimination算法
    • 4.11.22 阻力、切向力、法向力、阻力系数

第五章 OpenFOAM模型速查

  • 5.1 OpenFOAM中的非结构网格
    • 5.1.1 polyMesh中的points
    • 5.1.2 polyMesh中的faces
    • 5.1.3 polyMesh中的owner、neighbour
    • 5.1.4 虚拟的cells,体心,体积
    • 5.1.5 line和edge
    • 5.1.6 偏斜度
    • 5.1.7 非结构网格TVD格式
  • 5.2 OpenFOAM中的fvc显性离散
    • 5.2.1 fvc::ddt显性时间项计算
    • 5.2.2 fvc::div显性对流项离散
    • 5.2.3 fvc::laplacian显性拉普拉斯项计算
    • 5.2.4 fvc::snGrad显性面法向梯度项计算
    • 5.2.5 fvc::grad显性梯度项计算
    • 5.2.6 fvc操作符的单位
  • 5.3 OpenFOAM中的fvm隐性离散
    • 5.3.1 稀疏线性系统、lduMatrixfvMatrix
    • 5.3.2 fvm::ddt隐性时间项离散
    • 5.3.3 fvm::laplacian隐性拉普拉斯项离散
    • 5.3.4 拉普拉斯项非正交修正
    • 5.3.5 fvm::div隐性对流项离散
    • 5.3.6 fvm操作符的单位
  • 5.4 OpenFOAM中的fvMatrix稀疏线性系统
    • 5.4.1 fvMatrix之Gauss-Seidel求解器
    • 5.4.2 fvMatrix之PCG、PBiCG求解器
    • 5.4.3 fvMatrix的H()、H1()函数
    • 5.4.4 fvMatrix的操作符重载
    • 5.4.5 fvMatrix的correction()函数
    • 5.4.6 fvMatrix中的setValue()函数
    • 5.4.7 fvMatrix的单位
    • 5.4.8 稀疏线性系统带宽减小算法
  • 5.5 OpenFOAM中的MULES
    • 5.5.1 寻找最大值最小值
    • 5.5.2 反扩散通量
    • 5.5.3 可流入/流出的最大反扩散通量、反扩散通量限制器
    • 5.5.4 标准FCT限制器
    • 5.5.5 限制器迭代更新算法
  • 5.6 OpenFOAM中的多重参考系
  • 5.7 OpenFOAM中的多孔介质模型
  • 5.8 OpenFOAM中的IATE模型
  • 5.9 OpenFOAM中的常用代码
    • 5.9.1 div(U) = div(phi)?
    • 5.9.2 laplacian(φ) = div(grad(φ))?
    • 5.9.3 fvm::ddt(alpha1) - fvc::ddt(alpha1)?
    • 5.9.4 -fvc::flux(-phir,..) = fvc::flux(phir,..)?
    • 5.9.5 pEqn.flux()函数与fluxRequired关键词
    • 5.9.6 fvc::div(phiHbyA)函数
    • 5.9.7 fvc::reconstruct()函数
    • 5.9.8 fvc::smooth()函数
    • 5.9.9 setReference()函数
    • 5.9.10 bound()函数
    • 5.9.11 adjustPhi()函数
    • 5.9.12 CourantNo三维库朗数
    • 5.9.13 deltaCoeffs()函数
    • 5.9.14 R、sigma、prime2Mean、以及雷诺应力相关量
    • 5.9.15 OpenFOAM中的ODE求解器
  • 5.10 OpenFOAM中的曳力模型
  • 5.11 OpenFOAM中的状态方程
  • 5.12 OpenFOAM中的边界条件
    • 5.12.1 边界条件计算方法
    • 5.12.2 OpenFOAM边界条件速查
  • 5.13 OpenFOAM中的湍流模型
    • 5.13.1 RANS湍流模型
    • 5.13.2 LES湍流模型
    • 5.13.3 RANS-LES混合模型
  • 5.14 OpenFOAM中的壁面函数
    • 5.14.1 物理理解
    • 5.14.2 模型本质
    • 5.14.3 CFD的实施
    • 5.14.4 计算流程

第六章 数据驱动CFD

  • 6.1 监督学习
  • 6.2 流场重组、超分辨率、扩散模型
  • 6.3 数据驱动加速求解
  • 6.4 数据驱动湍流模型
  • 6.5 数据驱动多相计算流体力学
  • 6.6 循环神经网络与瞬态流场预测
  • 6.7 正向逆向PINN、隐藏流体力学
  • 6.8 PyTorch与libtorch
  • 6.9 数据驱动CFD侧重点

附录 A 洞见偏微分方程

  • A.1 稳态扩散方程
  • A.2 非均一源项
  • A.3 扩散系数的影响
  • A.4 全局守恒与边界条件限定
  • A.5 OpenFOAM离散的矩阵系数




阅读原文,免费下载。
怎么还有人卖这本书??
不是一直在免费下载么?

CFD界
更多的原创CFD开脑洞算法
 最新文章