计算流体力学(中科院力学所)_第8讲-差分方法4

合集下载

计算流体力学CFD的基本方法与应用

计算流体力学CFD的基本方法与应用
为了得到微分方程的数值解,采用离散的方法,把原来的 微分方程近似成一个代数方程组,使其能在计算机上进行求 解。近似公式应用在空间和时间上的小区域内,从而数值解 在离散的空间上给出数值结果,这门学科称为计算流体力学。
CFD的作用像在计算机上做实验,故也称数值实验, 它 不但能取代很多实验工作,而且能做实验室无法进 行的研究。
作, Patankar也在美国工程师协会的协助下,举行了大范围的培训, 皆在推广应用 CFD。 1985年的第四界国际计算流体力学会议上,Spalding 作了 CFD 在工程 设计中的应用前景的专题报告。他将工程中常见的流动、传热、化学 反应等分为十大类问题,并指出CFD都有能力加以解决。
2、CFD的发展历程
性、可靠性及工业化推广应用。
1977年,Spalding等开发的用于预测二维边界层内的迁移现象的GENMIX 程序公开,其后,他们首先意识到公开计算源程序很难保护自己的知 识产权。
在1981年,组建的CHAM公司将包装后的计算软件(PHONNICS-凤凰)正 式投放市场,开创了CFD商业软件的先河。
LES——穷人的DNS
CFD的未来,近期的展望
CFD的未来,远期的展望
• 非线性计算方法的突破 • LES模型的逐步成熟 • 大规模计算、并行计算的发展可以解决DNS、LES、非定
常计算的海量计算等问题 • 先进的湍流模型,反应动力学模型,多相流模型等的逐
步ቤተ መጻሕፍቲ ባይዱ善
CFD的路还很长很长
• CFD是一个新兴的学科 • CFD具有重要的应用 • CFD还有很多问题
计算流体力学CFD的基本 方法与应用
CFD (Computational Fluid Dynamics) 计算流体力学——为您打开通向高科技之门

计算流体力学的发展过程

计算流体力学的发展过程

计算流体力学的发展过程计算流体力学是一种利用计算机解决流体力学问题的方法,可以模拟各种流体动力学现象,如流体的流动、湍流等。

它在现代工业、航空航天、环境保护等领域有着广泛的应用,是现代科技取得的重要成果之一。

本文将从历史和技术两个方面,探讨计算流体力学的发展过程。

一、历史1.早期研究计算流体力学的起源可以追溯到20世纪40年代,当时美国哈佛大学的约翰·冯·诺伊曼等人开始使用电子计算机来解决气体动力学问题。

他们开发出了一种名为“脉动方程”的方法,可以解决流体运动的基本方程。

这标志着计算流体力学的诞生。

2.有限差分方法20世纪50年代至60年代,人们开始使用有限差分方法来解决流体力学问题。

有限差分方法将连续的时间和空间离散化,将偏微分方程转化为代数方程,然后使用计算机求解。

有限差分方法的优点是简单易懂,计算速度快,但它也存在精度较低、稳定性差等问题。

3.有限体积方法20世纪70年代后期至80年代初,有限体积方法逐渐成为主流。

有限体积方法使用小区域的平均值代替整个区域的实际值,从而保证了守恒定律的严格符合。

此外,有限体积方法还能很好地处理边界条件和复杂流动情况,因此得到了广泛应用。

4.计算能力的提高20世纪90年代至今,随着计算机计算能力的提高,计算流体力学的应用范围越来越广泛。

基于计算流体力学的仿真技术已经应用于汽车、航空航天、电子、环保等行业和领域。

人们正在不断发掘计算流体力学在这些领域的潜力。

二、技术1.数值格式计算流体力学的数值格式是计算流体力学算法的核心。

主要分为欧拉方程和纳维-斯托克斯方程两种类型。

欧拉方程适用于高速稀薄气体流动,而纳维-斯托克斯方程适用于低速流动和液体流动。

在实际运用中,人们还可以根据具体需求制定相应的数值格式。

2.求解器计算流体力学的求解器是模拟流体力学问题并求解数学模型的软件程序。

求解器的性能直接影响到计算的精度和速度。

目前求解器的种类已经非常丰富,包括商业求解器和开源求解器,如ANSYS、FLUENT、OpenFOAM等。

第8讲-差分方法4

第8讲-差分方法4
u n +1 = u n − λa (u j +1 − u j ) − ∆− [ϕ j j j
TVD
单调
保单调
λa(1 − λa)
2
(u j +1 − u j )]
二阶精度区
TVD区 区
Copyright by Li Xinliang
二阶精度TVD区(二 区 二阶精度 者交集) 者交集)
4
§ 8.1 WENO格式 —— 高精度的激波捕捉法 格式 1. 基本思路
C1 = 1 / 10, C 2 = 6 / 10, C3 = 3 / 10
(1)
“理想权重”
+ C2 u ′j
( 2)
+ C3u ′j
( 3)
5阶精度
u ′j
(1)
u ′j = a1u j −3 + a2 u j − 2 + a3u j −1 + a4 u j + a5u j +1 + a6 u j + 2
模板2 模板 模板3 模板
三个模板的基架点 利用这三个模板的基架点, 利用这三个模板的基架点,可构造出 u ′j 的3阶精度差分格式 逼近 阶精度差分格式
u ′j
(1) ( ( ( = a1(1) u j −3 + a21) u j − 2 + a31) u j −1 + a41) u j
模板1 模板
IS (1) =
(3.3) 给出实际权重 )
ωk = αk α1 + α 2 + α 3
IS ( 2 ) =
1 ∂ 2u (−u j −3 + 4u j − 2 − 5u j −1 + 2u j ) = 2 + O (∆x 2 ) ∆x 2 ∂x j ∂ 2u 1 ( u j −1 − 2u j + 2u j +1 ) = 2 + O (∆x 2 ) ∆x 2 ∂x j ∂ 2u ∂x 2

计算流体力学有限差分法

计算流体力学有限差分法

计算流体力学有限差分法流体力学有限差分法(Finite Difference Method,FDM)是一种常用的计算流体力学的方法。

它是基于流体力学基本方程对系统求解压力、速度和位置变化的一种近似数值方法,这些方程可以使用有限差分法求解得到准确结果。

一、流体力学有限差分法的概念1、端点条件:端点条件是差分方程组确定变量的边界条件,主要有边界条件和内部条件。

2、场变量定义:流动的物质可以用速度、压力和密度来描述,这种变量称为场变量。

3、有限差分法:有限差分法试图使描述精度在最小情况下得到一个可以接受的结果。

它将待求解区域划分为若干个小块,并且计算每一个小块上的变量。

4、边界条件:边界条件是用来描述物理事件发生的时候的物理量,如压力、流动量等。

二、流体力学有限差分法的基本步骤1、数学模型:开发有限差分方程,用来描述流体力学问题,这种模型可以由流体力学的基本方程得到。

2、网格划分:将区域网格划分成更小的网格,为了更准确的解决流体力学问题。

3、空间离散:将每一个网格按照有限差分公式空间离散,获得离散的压力方程式。

4、时间离散:在解决大规模动态流体力学问题时,通过一个更小的时间步骤进行求解。

5、求解:用适当的方法和算法求解有限差分方程式,获得求解结果。

三、流体力学有限差分法的优势1、高精度:使用此法,可以获得较高数值精度,从而准确描述流体力学过程。

2、计算效率:该方法可以快速找出有效的解决方案,并且计算效率更高。

3、计算能力:此方法可以处理复杂的物理问题,而且没有太多的硬件限制。

4、收敛性:当求解复杂的物理问题时,有限差分法不太容易出现"收敛"的情况。

5、可靠性:此方法可以快速、准确的求解出可靠的结果,相对于其他求解方法,其精度更高。

四、总结流体力学有限差分法是一种常用的计算流体力学的方法。

它易于实施,并且可以获得较高数值精度,从而准确描述流体力学过程。

处理复杂的物理问题时,它可以提供较快、较准确的结果,更能可靠性和可靠性更好。

计算流体力学及其并行算法

计算流体力学及其并行算法

计算流体力学及其并行算法一、引言计算流体力学(Computational Fluid Dynamics, CFD)是研究流体运动和相互作用的一门学科,广泛应用于工程、天文、地球科学等领域。

随着计算机技术的发展,CFD的数值模拟方法也得到了极大的发展,其中并行算法在加速CFD计算过程中起到了重要的作用。

二、计算流体力学基础1. 流体力学基本方程计算流体力学的基础是流体力学的基本方程,包括质量守恒方程、动量守恒方程和能量守恒方程。

这些方程描述了流体的运动、力学性质和能量转换。

2. 数值离散化方法为了将流体力学方程转化为计算模型,需要对连续域进行离散化。

常用的数值离散化方法包括有限差分法、有限体积法和有限元法等。

这些方法将连续的流体域离散为网格,通过在网格上的节点上进行数值计算,得到流体的各个物理量。

三、并行算法在计算流体力学中的应用1. 并行计算的需求计算流体力学涉及大规模的计算,需要处理大量的数据和复杂的计算操作。

传统的串行计算方式往往难以满足计算需求,因此并行算法成为加速CFD计算的重要手段。

2. 并行算法分类并行算法根据不同的并行计算方式,可以分为共享内存并行和分布式内存并行两大类。

共享内存并行算法使用多个处理器共享同一块内存,通过线程间的数据共享和同步来实现并行计算;分布式内存并行算法则将计算任务分配到不同的处理器上,通过消息传递来实现并行计算。

3. 并行算法的优势并行算法在加速CFD计算中具有显著的优势。

首先,通过并行计算,可以将计算任务分配到多个处理器上,实现计算资源的充分利用。

其次,并行算法可以处理大规模的计算问题,提高计算效率和精度。

此外,并行算法还可以实现实时计算和交互式计算,提供更好的用户体验。

四、并行算法的挑战和发展方向1. 数据通信和负载均衡在并行计算过程中,处理器之间需要进行数据通信,这涉及到数据传输和同步操作。

数据通信的效率和负载均衡是并行算法面临的挑战之一,需要合理设计算法和优化通信过程。

第二章 计算流体力学的基本知识

第二章  计算流体力学的基本知识

第二章计算流体力学的基本知识流体流动现象大量存在于自然界及多种工程领域中,所有这些工程都受质量守恒、动量守恒和能量守恒等基本物理定律的支配。

这章将首先介绍流体动力学的发展和流体力学中几个重要守恒定律及其数学表达式,最后介绍几种常用的商业软件。

2.1 计算流体力学简介2.1.1计算流体力学的发展流体力学的基本方程组非常复杂,在考虑粘性作用时更是如此,如果不靠计算机,就只能对比较简单的情形或简化后的欧拉方程或N-S方程进行计算。

20世纪30~40年代,对于复杂而又特别重要的流体力学问题,曾组织过人力用几个月甚至几年的时间做数值计算,比如圆锥做超声速飞行时周围的无粘流场就从1943年一直算到1947年。

数学的发展,计算机的不断进步,以及流体力学各种计算方法的发明,使许多原来无法用理论分析求解的复杂流体力学问题有了求得数值解的可能性,这又促进了流体力学计算方法的发展,并形成了"计算流体力学"。

从20世纪60年代起,在飞行器和其他涉及流体运动的课题中,经常采用电子计算机做数值模拟,这可以和物理实验相辅相成。

数值模拟和实验模拟相互配合,使科学技术的研究和工程设计的速度加快,并节省开支。

数值计算方法最近发展很快,其重要性与日俱增。

自然界存在着大量复杂的流动现象,随着人类认识的深入,人们开始利用流动规律来改造自然界。

最典型的例子是人类利用空气对运动中的机翼产生升力的机理发明了飞机。

航空技术的发展强烈推动了流体力学的迅速发展。

流体运动的规律由一组控制方程描述。

计算机没有发明前,流体力学家们在对方程经过大量简化后能够得到一些线形问题解析解。

但实际的流动问题大都是复杂的强非线形问题,无法求得精确的解析解。

计算机的出现以及计算技术的迅速发展使人们直接求解控制方程组的梦想逐步得到实现,从而催生了计算流体力学这门交叉学科。

计算流体力学是一门用数值计算方法直接求解流动主控方程(Euler或Navier-Stokes方程)以发现各种流动现象规律的学科。

计算流体力学入门

计算流体力学入门
不需要去逼近对空间的偏导数项了。 在数值 那弱解的好处在哪里?那就是放宽了限制, 方法中如何体现?方法之一就是有限体积法(Finite Volume Method)。 3. 有限体积法 在介绍有限体积法之前,先重复一下要解决的问题。 控制方程是
u f 0 ,对于流动问题,这个偏微分方程实际上是来源于积分形式的 t x
u f (u ) f 0 ,但要求Jacobi矩阵 可对角化,方程(组)才是双曲型守恒方程. t x u
2. 欧拉方程 对于一维欧拉方程对应的 u 和 f(u)分别为:
u p u2 u u , f (u ) uu p ,其中 E ( 1) 2 uE pu E
控制体(称之为有限体积,这也是有限体积法的来历) ,认为 u 是每个网格单元上的平均值
并 且 数 值 上 等 于 格 心 处 的 流 场 参 数 值 , Fi 是 每 个 控 制 面 上 F 的 平 均 值 , 即 记
u
1 V
1 , F d u V i C.V Si
u V F 。那相当于求解 F dS i Si 0 。这个方程就 c.si t i
通常,我们都假设 u 是连续的,也认为 均自由程厚度的间断面来说,实际计算中实际采用的 x 都太大了,这就造成了在间断面上
f f f f 完全不能逼近 ,甚至 与 南辕北辙。这就造成了用来逼近描述守恒律的差分方 x x x x u f 程 求解的精度将无法得到保证。 0 不再能很好地表达守恒律,甚至是完全错误的。 t x
u u a(u, x) 0 t x
以中心差分方法为例来说明。 对于第 i 点:

《计算流体力学》课程教学大纲(本科)

《计算流体力学》课程教学大纲(本科)

计算流体力学(Computational Fluid Dynamics)课程代码:02410028学分:2学时:32 (其中:课堂教学学时:32实验学时:0 上机学时:0 课程实践学时:0 )先修课程:微积分、线性代数、物理、流体力学等适用专业:能源与动力工程等专业教材:计算流体力学及应用;中国人民总装备部军事训练教材编辑工作委员会;国防工业出版社;2003年一、课程性质与课程目标(一)课程性质(需说明课程对人才培养方面的贡献)本课程是能源与动力工程(流体机械及工程)专业的一门主要的专业基础课。

本课程主要介绍流体力学问题的计算机数值计算方法,包括计算流体力学的数学基础、控制方程、离散化方法、有限差分法、单元与插值函数、流体力学典型问题的数值分析等。

使学生掌握计算流体力学的基础理论、方法和技能,为今后从事本专业的科学研究工作和工程技术工作打下基础。

(二)课程目标(根据课程特点和对毕业要求的贡献,确定课程目标。

应包括知识目标和能力目标。

)总目标在学习完本课程后,学生应该应掌握以下技能:(1)熟悉流动现象的微分方程和近似求解的数值方法,并且能设计数值解决方案,使用和开发流动模拟软件对工程和科学的领域中的重要流动现象进行模拟;(二)能够通过建立正确合理的数学模型,选择有效的计算方法进行流动模拟;(三)利用现有的最佳模型进行数值模拟,对模拟结果进行合理分析评价,为后续专业课的学习和将来从事科学研究和专业技术工作打下良好基础。

阶段目标.理解对于可压,不可压,粘性及无粘流体流动的基本流体力学控制方程的数学描述及数学特性。

1.对数值分析中稳定性,逼近和收敛性和代数方程组的数值解的概念和基本原则有深刻的理解。

2. 了解对于可压及不可压流体流动的数值模拟求解方法及在工程实践基础研究中的应用。

3.理解数值模拟的原理和技术,并且明白模拟的局限性。

4.通过商用CFD软件包(ANSYS或COMSOL),解决实际工程问题。

二、课程内容与教学要求(按章撰写)第一章计算流体力学的基本原理(2学时)(一)课程内容1.什么是计算流体力学.计算流体力学的工作步骤2.计算流体力学解决的问题.计算流体力学的应用领域(二)教学要求. 了解计算流体力学的相关基础知识。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

9
3. Jiang & Shu 的五阶WENO格式
守恒型;目 前使用的WENO格式均为守恒型 针对方程:
u f (u ) 0, x x f (u) au, a 0 (1)
模板2 模板1 模板3
构造差分格式如下:
f WENO x ( f jWENO f WENO ) / x 1 / 2 j 1 / 2
Copyright by Li Xinliang 5
2. WENO格式的原理描述
注: 为了简便,以非守恒型形式为例讲授其思路,实际使用时,请采 用下一节介绍的守恒形式
考虑线性单波方程:
u u a 0 x x (1)
a0
计算
u x
j
(1) 确定网格基架点: 6个点 {j-3 , j-2,j-1,j,j+1,j+2} 构造出该基架点上的目标差分格式 这6个点可构造5阶迎风差分:
k
Ck ( IS k ) p
特点: 间断区权重很小 光滑区,趋近于理想权重
(3.4) 给出最终的差分逼近
光滑区逼近 1 间断区 x
2
2u x 2
O(1)量级 量级,很大
j
u j 1u j
(1)
2u j
( 2)
3u j
( 3)
Copyright by Li Xinliang
IS (1)
(3.3) 给出实际权重
k k 1 2 3
IS ( 2 )
1 2u (u j 3 4u j 2 5u j 1 2u j ) 2 O(x 2 ) x 2 x j 1 2u (u j 1 2u j 2u j 1 ) 2 O(x 2 ) x 2 x j
u n 1 u n a(u j 1 u j ) [ j j j
TVD
单调
保单调
a(1 a)
2
(u j 1 u j )]
二阶精度区
TVD区
Copyright by Li Xinliang
二阶精度TVD区(二 者交集)
4
§ 8.1 WENO格式 —— 高精度的激波捕捉法 1. 基本思路
仍利用程序coeff-schemes.f求系数
H (j3)1 / 2 1 / 3 f j 5 / 6 f j 1 1 / 6 f j 2
k k 1 2 3
k
实际 权重
Ck , ( IS k ) p
k 1,2,3
C1 1 / 10, C 2 6 / 10, C3 3 / 10
光滑度量因子
理想权重
Copyright by Li Xinliang 10
光滑度量因子的计算 (Jiang & Shu)

IS k

l 1
2
x j 1 / 2
x
2 l 1
x j 1 / 2
l (qk ) 2 dx l x
ISk x [ qk ( x)]2 dx x 3 x j 1 / 2 x
Copyright by Li Xinliang 1
知识回顾
1. Roe 格式—— 准确特征方向的守恒型格式
标量方程的情况:
u f (u ) 0 t x
f 1 ( f jn1 / 2 f jn1 / 2 ) x j x
n
平均 斜率
f (u n1 ) f (u n ) j j u n1 u n j j
模板2 模板3
利用这三个模板的基架点,可构造出 逼近 u j 的3阶精度差分格式
u j u j u j
(1) ( ( ( a1(1) u j 3 a21) u j 2 a31) u j 1 a41) u j ( ( ( a1( 2 ) u j 2 a22 ) u j 1 a32 ) u j a42 ) u j 1 ( ( ( a1( 3) u j 1 a23) u j a33) u j 1 a43) u j 2 ( 2)
计算流体力学讲义

第八讲 差分方法(4)
李新亮 lixl@ ;力学所主楼219; 82543801
知识点: 高精度激波捕捉格式——WENO 激波捕捉方法—— Godnov,MUSCL 常用的隐式处理方法——LU-SGS
讲义、课件上传至 (流体中文网) -> “流体论坛” ->“ CFD基础理” 讲课录像及课件上传至网盘 /browse.aspx/.Public
1 1 f jn1/ 2 [ f jn f jn1 ] a n1/ 2 (u n1 u n ) j j j 2 2
a
n j 1 / 2
f (u n1 ) f (u n ) j j , a(u j 1 , u j ) u n1 u n j j a (u n ) j
构造方法与前文相同 (但注意这里构造的是通量, 而前文是直接构造差分格式) 针对整个网格基,构造出5阶精度的通量(理想情 1 况下的通量) f j 1/ 2 60 (2 f j 2 13 f j 1 47 f j 27 f j 1 3 f j 2 ) 并构造出每个模板上的通量,计算出理想权重。
平均斜率
双曲守恒方程组的Roe 格式
U f (U) 0 t x
f 1 ˆ (f j 1/ 2 f j 1 / 2 ) f j 1 / 2 f (U j 1 , U j ) x j x 1 1 ~ f j 1/ 2 [f(U j 1 ) f(U j )] A (U j 1 U j ) 2 2
u ( L u L R u R ) /( L R ) H ( L H L R H R ) /( L R )
Roe 平均
含义: 点 U 处的瞬时增长率刚好为区间
U , U 上的平均增长率
j j 1
2. TVD 格式 概念: 网格Reynolds数 Re x Rex 单调格式、保单调格式及TVD格式 Harten定理: 正系数原则 TVD格式= 1阶迎风+ *(LW格式-1阶迎风)
( ( ( a1(1) u j 3 a21) u j 2 a31) u j 1 a41) u j ( ( ( a1( 2 ) u j 2 a22 ) u j 1 a32 ) u j a42 ) u j 1 ( ( ( a1( 3) u j 1 a23) u j a33) u j 1 a43) u j 2
实际上,还可利用分辨率优化技术,可构造出新的目标 格式(降低精度、提高分辨率,见第4讲)。目前大量 WENO的优化版做这种工作。 Copyright by Li Xinliang 6
(2)
(2) 将这6个基架点分割成3个组(称为模板) 每个组独立计算 u j 的差分逼近 模板1: {j-3,j-2,j-1,j} 模板2: {j-2,j-1,j,j+1} 模板3: {j-1,j,j+1,j+2}
j
1) 2 3) f WENO 1 f j(1/ 2 2 f j(1)/ 2 3 f j(1/ 2 j 1 / 2
H (j1)1 / 2 1/ 3 f j 2 7 / 6 f j 1 11 / 6 f j
) H (j 21 / 2 1 / 6 f j 1 5 / 6 f j 1 / 3 f j 1

x j 1 / 2

2 [ 2 qk ( x)]2 dx x j 1 / 2 x
x j 1 / 2
k=1
k=2
k=3
其中:
qk (x) 是使用模板k x 得到的插值函数
(k ) j
代入
q1 ( x)
1 qk ( x) f j ( x x j ) f j( k ) ( x x j ) 2 f j( k ) 2
~ A S 1 Λ S
~ A(U R , U L )
ˆ f (U j 1 , U j )
ˆ 经常记为 f (U R , U L )
~ A S 1 ΛS
~ f(U j 1 ) f(U j ) A(U j 1 U j )
~ A A( U)
平均增长率矩阵
[( L R ) / 2]2
(2)
( 2)
u j
( 3)
Copyright by Li Xinliang
8
(3.2) 度量每个模板内函数的光滑程度
IS ( k ) f (u j )
(k )
u
j
(k )
:第k个模板
IS越大,表示越不光滑。 光滑区,不同模板上的IS趋近同一值。 构造IS方法很多, 例如: 具体形式见下一节。
uj a1u j 3 a2u j 2 a3u j 1a4u j a5u j 1 a6u j 2 (2)
该格式为WENO 的“目标”格式, 即, 光滑区WENO 逼近于该格式。
利用Taylor展开,可唯一确定系数 (可利用小程序coeff-schemes.f )
uj (2u j 3 15u j 2 60u j 120u j 30u j 1 3u j 2 ) /(60x)
(2u j 3 9u j 2 18u j 1 11u j ) /( 6x)
……
Copyright by Li Xinliang
7
(3) 对这3个差分值进行加权平均,得到总的差分值
u j 1u j
(1)
2u j
( 2)
3u j
( 3)
原则: A. 模板内函数越光滑,则权重越大; 模板内有 间断时,权重趋于0 B. 三个模拟内函数都光滑时,这三个三阶精度 的逼近式可组合成一个五阶精度的逼近式。 (3.1) 确定理想权重 令: u j C1u j 容易解出:
相关文档
最新文档