推荐教材: a lecture in computational fluid dynamics of incompressible flow: mathematics, algorithms and implementations.

Author:  J. M. McDonough, Depart. of Mechanical Engineering and Mathematics, University of Kentucky

第一本参考,李新亮老师的CFD课程,偏压缩流,差分格式/误差分析是所有CFD课都涉及的, 间断激波处理的格式估计是特有的。课件里没有不可压的部分。所以...

第二本参考: MIT OpenCourse Numerical Fluid Mechanics, 从解线性代数方程组,差分格式,到网格,有限元CFD都有,全面不细。

第三本参考:推荐教材。差分/有限体积法CFD,入手方程性质/解性质,交错网格上的空间离散,介绍MAC, 投影法,SIMPLE等。数学比较多。看完整个CFD框架清晰很多,也有很多数学搞不定。

另外参考基于有限元的CFD,数学理论比差分更坚实, 算法精度/数值问题的解答更有据可循,单要求更多的数学基础。代表作 open source project:  libmesh

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

一  数学基础

1.1 基于Fourier展开分析的微分方程求解

斯托姆-刘维尔问题的特征方程可形成一组完备函数空间基,构成Banach 空间。其中满足内积运算(标量积)的子空间即Hilbert空间(L^2)。Hilbert函数空间内的任意函数可按Fourier展开,并具有上限(Cauchy - Schwarz 不等式),表示为函数的2-范数有界,亦即能量范数有限。

Hilbert空间的某类子集,满足其导函数仍然在Hilbert空间并满足2-范数有界,称为Sobolev空间。 可见对于需要解函数的导数仍然有界的PDE(比如,二阶以上或非线性PDE),其解必须存在于Sobolev空间。例如,NS方程的解就存在于Sobolev空间,如果存在的话。

1.2 算子空间

du(x,y,z)/dt = f(u) with u(t=0) = u_0

上式微分空间描述:  C^3(x, y, z ) 空间函数映射到 C^3 * C^1(o, infinite)时空域。

考察一阶微分方程的经典解: u(x, t) = c1 * int ( u_0 * exp(c2) ) from  (-infinite) to  (+inifinite)

即表示:通过Fourier变换(或其他线性变换)将初值u_0空间映射到C^3 * C^1 时空。

1.3 弱解

大部分PDE不存在经典解,主要是在某些求解区域(比如边界)不协调。对于这些奇点位置采用广义函数定义解,那么结合这个奇点解就构成全域的弱解。广义函数不是真正的函数,但具有无限可导性和紧致性(奇点区域以外广义函数值为0)。 (试) 函数空间连续性定义为积分连续(弱形式),不同于函数连续要求每个点微分存在。故试探解在弱形式下具有连续性。

1.4  伴随算子

定义微分算子 L =  sum ( A_k(x) d^k / dx^k )

其伴随算子  L‘ = sum (-1)^k * d^k(A_k(x)) / dx^k )

举例: L = A d^2/ dx^2 + B d/dx + C,  弱形式解表述:

< Lu, v> = int( A u'' v) + int(B u' v) + int (C uv) = int ( (Av)'' u) - int( (Bv)' u) + int ( u (Cv)) = < u, L'v>

两点注意: 1 因为试探解(v) 具有紧致性,边界自动消掉; 2 if L = L' 自伴随, 此时对应BVP矩阵具有对称性,此为大型有限元方法的基础。

定义微分算子P, 其伴随算子P‘,那么微分方程 Pu = f 的弱解 是任意满足  < u*, P'v> = < f, v>  的 u* ,  其中v 来自试探解空间, f满足弱形式连续性要求, 注意这里u* 是定义在全域上的哟,即有限元方法里的Ritz法,Galerkin法将全域上定义的弱解分片到单元上满足,即更弱的形式,单元边界只满足C0连续。

1.5 Galerkin过程

1 L^2函数空间中的某类系统(NS方程),对其中各项采用Fourier展开,基函数为空间坐标的函数;

2 展开后各项与Fourier所有基函数内积,单只截取前N个基函数的乘积表达式,以此求解N个Fouerier系数。

数值方法解得系数,并带回原因变量的Fourier多项式,就是原问题的数值解。

这里采用Fouerier展开构造原方程的弱形式,此即基于Fouerier展开数值求解微分方程的基本数学原理。

1.6  Helmholtz 分解与 Leray 投影

Helmoholtz分解,有界向量场 v 可表示为  v = grad_ phi + u, 其中 phi 无旋,u 散度为0 (diver_u = 0 )

Lapalace ( phi) = grad_ v       :: Possion Equation

考虑固面边界(不可穿透条件),  u * n =0  -->  grad_phi * n = v * n -->   d phi/ dn = v * n  on B.C.

上述泊松方程加边界条件即构成了描述 phi 的 Newman问题。

解存在条件要求满足,  边界积分int( v * n) = 0     <----  对于不可穿透,无滑移边界,满足。 即对一般意义上流动模型,标量 phi总是存在的;

然后考虑    u = v - grad_ phi  (*), 即可解速度场。

(*) 式 即 Leray Projector。当向量场u散度为0,其Lp 运算等于自身。即  LP(u) = u  if  diver_ u = 0

1.7 NS 方程 Lp投影  / 弱解

对2D不可压缩NS方程作LP运算, u, du/dt 为其自身, 压力梯度项为0, Laplace项的LP操作得到Stokes算子 Au, 对流项的LP操作得到B(u, v)。整理即

du/dt + miu * Au + B(u) = f

令 F = f - miu * Au - B(u), 得到 u' = F  此即NS方程的LP格式,其中压力梯度项不再了...

通过Galerkin过程给定NS弱解格式。但是这里不要求试探函数v具有C^inifite_0 无穷连续性,实际上v存在于一阶Soblev空间即可,另附加条件 v 满足 div_v = 0

d/dt < u, v>  + miu * < u, v> + b(u, u, v> = <f, v>

< grad_p , v> =  p * div_v + p * v *n = 0 ( div_v =0 & no flux no slip)

可见 弱解格式也不含压力梯度项。

计算不可压缩流体 -- 数学基础相关推荐

  1. 人工智能数学基础专栏目录

    ☞ ░ 前往老猿Python博文目录 ░ 本专栏为人工智能数学基础,相关内容介绍人工智能相关的数学知识,在老猿学习过程中,会将一些知识的基础知识都在本专栏内体现,尽量做到本专栏涉及知识点的内容闭环. ...

  2. 有限单元法基本原理和数值方法_SPH法介绍

    SPH法介绍 Smoothed Particle Hydrodynamics 基于网格的数值方法虽然已经有广泛的应用,但是在很多方面仍存在不足之处,比如在计算流体动力学的大变形.运动物质交界面.自由表 ...

  3. 我的研究生这三年(含腾讯AI Lab实习、CVPR发表经验)

    作者:梦里风林 原文:https://zhuanlan.zhihu.com/p/54161673 之前在知乎发过实习和秋招的面经.见[2019秋招算法面经],许多同学私信我,表达了他们初入研究生期间的 ...

  4. SE-第一章-整理-CCUT-ZY

    SE-第一章-整理-CCUT-ZY <现代软件工程--构建之法> (作业一计算机相关专业术语整理) 第一章 概论 1.1软件 = 程序+软件工程 程序=数据结构+算法.软件企业=软件+商业 ...

  5. 经验 | 本硕985回忆研究生这三年

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|计算机视觉联盟 之前在知乎发过实习和秋招的面经,许多同学 ...

  6. 研究生图像处理该怎的自学_我的研究生这三年

    之前在知乎发过实习和秋招的面经,许多同学私信我,表达了他们初入研究生期间的迷茫,希望了解我研究生期间的成长路线.虽然说没有适合每个人的方法,因为每个人的特点和所处的环境都不一样,但有个参考总是好的,所 ...

  7. offer拿到手软的大佬,研究生三年是如何度过的?

    点击上方"AI算法与图像处理",选择加"星标"或"置顶" 重磅干货,第一时间送达 转载自知乎:梦里风林 很多小伙伴对于未来的研究生三年很迷茫 ...

  8. 山科大数字高程模型(朱红春版)复习 2021

    数字高程模型(朱红春版)复习 2021 19-3 DSH,CBW 2021年遥感系数字高程模型考试,这个去年(2020年)疫情期间的题目,附参考答案,仅代表编写者个人观点,不及格概不负责. 附CBW整 ...

  9. 20194616 第一次作业

    (一)<构建之法--现代软件工程> 第一章 概论  (计算机相关术语整理) 1.1 软件=程序+软件工程 程序在这里指源程序,程序还要对数据进行操作,这些操作有时候是静态的,有时候是动态的 ...

  10. 软件工程《构建之法》—概论

    一.第一章计算机专业术语 1.1 软件=程序+软件工程 程序=数据结构+算法 软件=程序+软件工程 可以扩展为 软件企业=软件+商业模式 1968年提出了"软件工程"这个概念,软件 ...

最新文章

  1. 基于HttpModule扩展
  2. 【外贸人必看骗术】和中东客户做生意
  3. vue 时间插件_Vue3 插件开发详解尝鲜版「值得收藏」
  4. 通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧
  5. 深度学习之 SSD(Single Shot MultiBox Detector)
  6. linux命令解释程序实验,实验二 命令解释程序的使用
  7. 正则表达式与html信息提取,基于正则表达式的HTML信息提取.pdf
  8. java导入项目存在,如何将预先存在的Java项目导入Eclipse并启动并运行?
  9. Sharepoint中的Feature Stapling功能
  10. 道路建立拓扑关系的规则_建立真正社区关系的5条规则
  11. JAVA-初步认识-第七章-this关键字内存图解
  12. 关系代数中的除法运算
  13. php cbd架构,ThinkPHP教程--15--CBD模式
  14. 我不谈ChatGPT
  15. 真正的程序员的工作与生活应该是这样的
  16. 酒店智能门锁方案功能介绍_模组_西城微科
  17. 软件工程方法论对开发的有多大用?
  18. 无人零售的黑科技:RFID技术
  19. Android怎么自定义充电铃声,充电提示音怎么设置
  20. openpyxl官方手册

热门文章

  1. 初探Linux--鸟哥私房菜读书笔记
  2. 阿里巴巴面试指南(2020最新版)
  3. 冰河竟然被腾讯邀请去做技术分享了,这是要起飞的节奏吗?
  4. tc275怎么移植到ram中去,把函数
  5. 2022年全球与中国石油和天然气固井服务行业发展趋势及投资战略分析报告
  6. 获取某一日期的毫秒数
  7. 沃特世推出SELECT SERIES MRT多反射飞行时间质谱平台,树立高分辨质谱性能新标杆
  8. 卡诺图化简 之 和之积形式 与 积之和形式
  9. 人人网主页登录_“人人网”回来了!网友炸锅:有人想找前女友,有人想删“黑历史”……...
  10. attiny85(digispark)零延迟启动探究