第二章 有限差分基础
- 格式:doc
- 大小:304.00 KB
- 文档页数:14
第⼆章有限差分基础第2章有限差分基础(finite difference method ,FDM )1.1 偏微分⽅程的⼀般形式()()φφφρρφq x x x u t j j j j +Γ=+ ( 2-1 ) 2.1 ⽹格划分⼀般有限差分采⽤结构化⽹格划分。
即节点对应于当地坐标系统的原点。
它的轴同⽹格线⼀致。
即两个同⼀族的⽹格线不相交,且没对⽹格线对应不同的族。
每⼀个节点可⽤唯⼀的⼀个坐标表⽰,如(ξ1, ξ2)。
⽹格线能⽤ξ1=const, ξ2=const 表⽰。
1D 2D有限差分法就是要将节点上的偏微分⽅程⽤相邻点上的值表⽰,变成线性代数⽅程式。
i-1ii+1N1 N jj+1 j-1j 11i-1 i i+1为流体⼒学的微分⽅程的数值求解⽅法之代表。
必要条件:连续领域内的分配有限的⽹格领域内的函数分布可⽤⽹格点上的值代表1. 计算分⼦(computational molecule )5点计算分⼦ 15点计算分⼦ 7点计算分⼦这些节点⼜称为计算分⼦。
⽅程的个数应与未知数相同,即每个节点有⼀个⽅程式。
EWNET N2. T aylor 展开例如:⼀维时间变量φ的理论解为φ(t,x),它在离散点上的值为投影(projection )的近似值为:()x i t n ?Λ,φ,n: 时间的step 数i:空间的step 数为了求得此近似解,需对微分⽅程进⾏差分近似。
利⽤T aylor 展开可得到⼏个差分表⽰形式,仅考虑空间依存问题:在?x 很⼩时,位置j ?x 内的物理量φ⽤φj 来表⽰,则位置(j+1)?x 上的值φj+1表⽰为:()+++=+ii i i x x x x 222121φφφφ( 2-2 )(j-1)?x 上的值φj+1表⽰为:()++-=-ii i i x x x x 222121φφφφ( 2-3 ) 2.2 基本差分格式1. ⼀阶导数(first derivative )的近似()xu orxφρφ( 2-4 ) i. 向前差分(forward difference ,FDS)利⽤( 1 ) 式,可得到1阶微分的向前差分形式:)(1x O xx j j j ?+?-=??+φφφ( 2-5 ) ii. 向后差分(backward difference ,BDS)利⽤( 1 ) 式,可得到1阶微分的向后差分形式)(1x O xx j j j ?+?-=??-φφφ( 2-6 ) iii. 中⼼差分(central difference ,CDS )(1)-(2) 得1阶微分的2 次精度中⼼差分法:)(2211x O xx j j j ?+?-=??-+φφφ( 2-7 ) iv. 上风法、迎风法(upwind difference, UDS )与速度有关的微分()<-->--≈??++--;0if,;0if ,1111u x x u u x x u x u ii i i i i i i φφρφφρφρ( 2-8 )2. ⼆阶导数的近似i. 中⼼差分(central difference ,CDS )利⽤(j ±1/2)?x 的T ayor 展开,可得过且1阶微分的2次精度的向前向后差分形式:11112121---+++--=??--=??i i i i i ii ii i x x x x x x φφφφφφ( 2-9 )将上⼆式相减,得2阶微分的差分⽅程式中⼼差分:(?x 相当))(2221122x O xx i i i i ?+?+-=??-+φφφφ( 2-10 )其它还有各种形式。
3第二章_有限差分方法基础有限差分方法是一种数值计算方法,用于求解偏微分方程的数值近似解。
它的基本思想是将求解域离散化,将连续的偏微分方程转化为离散的差分方程,然后通过迭代求解差分方程的解来逼近原方程的解。
有限差分方法的基础是差分近似。
差分近似是将连续函数在一组离散点上进行近似表示的方法。
差分近似的基本思想是用函数的差商来近似函数的导数。
例如,对于函数f(x),在点x上的导数可以用差商表示为f'(x)≈(f(x+h)-f(x))/h,其中h是一个小的正数。
有限差分方法的核心是离散化。
离散化是将求解域划分为有限个网格点,然后在这些网格点上进行近似计算。
通常使用均匀网格,即将求解域等分为相同大小的网格。
在每个网格点上,用差分近似来代替偏微分方程中的导数项,将偏微分方程转化为离散的差分方程。
在离散的差分方程中,未知函数在每个网格点上的值可以通过迭代求解得到。
迭代的过程是通过将差分方程中的未知函数值代入到方程中,然后求解得到新的未知函数值。
不断迭代直到满足一定的收敛准则,得到近似解。
有限差分方法有很多的变形和扩展。
其中最基础的是一维情况下的有限差分方法,它适用于求解一维偏微分方程。
在一维情况下,求解域只有一个自变量x,因此只需要在x方向上进行离散化。
除了一维情况,有限差分方法还可以扩展到更高维的情况,例如二维和三维情况。
在二维情况下,求解域有两个自变量x和y,需要在x和y 方向上都进行离散化。
在三维情况下,求解域有三个自变量x、y和z,需要在x、y和z方向上都进行离散化。
有限差分方法的优点是简单易懂,计算效率高。
它可以应用于各种偏微分方程的求解,包括椭圆方程、双曲方程和抛物方程等。
然而,有限差分方法也有一些局限性,例如对于复杂的几何形状和边界条件的处理比较困难。
总之,有限差分方法是一种常用的数值计算方法,用于求解偏微分方程的数值近似解。
它通过将求解域离散化,将连续的偏微分方程转化为离散的差分方程,然后通过迭代求解差分方程的解来逼近原方程的解。
第2章 有限差分基础(finite difference method ,FDM )1.1 偏微分方程的一般形式()()φφφρρφq x x x u t j j j j +⎪⎪⎭⎫ ⎝⎛∂∂Γ∂∂=∂∂+∂∂ ( 2-1 ) 2.1 网格划分一般有限差分采用结构化网格划分。
即节点对应于当地坐标系统的原点。
它的轴同网格线一致。
即两个同一族的网格线不相交,且没对网格线对应不同的族。
每一个节点可用唯一的一个坐标表示,如(ξ1, ξ2)。
网格线能用ξ1=const, ξ2=const 表示。
1D 2D有限差分法就是要将节点上的偏微分方程用相邻点上的值表示,变成线性代数方程式。
i-1ii+1N1 N jj+1 j-1j 11i-1 i i+1为流体力学的微分方程的数值求解方法之代表。
必要条件:∙ 连续领域内的分配有限的网格∙领域内的函数分布可用网格点上的值代表1. 计算分子(computational molecule )5点计算分子 15点计算分子 7点计算分子这些节点又称为计算分子。
方程的个数应与未知数相同,即每个节点有一个方程式。
EWNET N2. T aylor 展开例如:一维时间变量φ的理论解为φ(t,x),它在离散点上的值为投影(projection )的近似值为:()x i t n ∆Λ,φ,n: 时间的step 数i:空间的step 数为了求得此近似解,需对微分方程进行差分近似。
利用T aylor 展开可得到几个差分表示形式,仅考虑空间依存问题:在∆x 很小时,位置j ∆x 内的物理量φ用φj 来表示,则位置(j+1)∆x 上的值φj+1表示为:()⋅⋅⋅+∂∂∆+∂∂∆+=+ii i i x x x x 222121φφφφ ( 2-2 )(j-1)∆x 上的值φj+1表示为:()⋅⋅⋅+∂∂∆+∂∂∆-=-ii i i x x x x 222121φφφφ ( 2-3 ) 2.2 基本差分格式1. 一阶导数(first derivative )的近似()xu orx∂∂∂∂φρφ( 2-4 ) i. 向前差分(forward difference ,FDS)利用( 1 ) 式,可得到1阶微分的向前差分形式:)(1x O xx j j j ∆+∆-=∂∂+φφφ ( 2-5 ) ii. 向后差分(backward difference ,BDS)利用( 1 ) 式,可得到1阶微分的向后差分形式)(1x O xx j j j ∆+∆-=∂∂-φφφ ( 2-6 ) iii. 中心差分(central difference ,CDS )(1)-(2) 得1阶微分的2 次精度中心差分法:)(2211x O xx j j j ∆+∆-=∂∂-+φφφ( 2-7 ) iv. 上风法、迎风法(upwind difference, UDS ) 与速度有关的微分()⎪⎪⎩⎪⎪⎨⎧<-->--≈∂∂++--;0if,;0if ,1111u x x u u x x u x u ii i i i i i i φφρφφρφρ ( 2-8 )2. 二阶导数的近似i. 中心差分(central difference ,CDS )利用(j ±1/2)∆x 的T ayor 展开,可得过且1阶微分的2次精度的向前向后差分形式:11112121---+++--=∂∂--=∂∂i i i i i ii ii i x x x x x x φφφφφφ ( 2-9 ) 将上二式相减,得2阶微分的差分方程式中心差分:(∆x 相当))(2221122x O xx i i i i ∆+∆+-=∂∂-+φφφφ ( 2-10 ) 其它还有各种形式。
但最常用的是中心差分。
对于扩散项常采用()()11211111112121212121-+---+++-+-+---Γ---Γ≈-⎪⎭⎫⎝⎛∂∂Γ-⎪⎭⎫ ⎝⎛∂∂Γ≈⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛∂∂Γ∂∂i i i i i i i i i ii i i i i i i x x x x x x x x x x x x φφφφφφ ( 2-11 )2.3 数值误差1. 截断误差(truncation error )例如:热传递方程022=∂∂-∂∂tTt T α ( 2-12 ) 时间向前差分,空间中心差分得()()021121=+-∆-∆--++n j n j nj nj n j T T Tx tT T α( 2-13 )离散方程同精确方程的误差(i.e. 微分算子L(T)和L ’(T n j ) ) ,称为截断误差。
将1+n j u 进行时间方向的T ayor 展开和n j u 1±进行空间方向的T ayor 展开即, () (2122)21+∂∂∆+∂∂∆+=+njnj nj n j t u t t u t u u ( 2-14 )()()() (241)61214443332221njnjnj nj nj n j x u x xux x u x x u xu u ∂∂∆+∂∂∆±∂∂∆+∂∂∆±=± ( 2-15 )因此,此方程的截断误差为()()()⎥⎥⎦⎤⎢⎢⎣⎡+∂∂∆+∂∂∆-+∆+--∆-=∂∂-∂∂-++ (12224)42222211122n j n j nj n j n j njn j njnj x ux x u x x u u u tu u x ux u ααα ( 2-16 )截断误差的第一项为O(∆t, ∆x 2),为时间一次精度,空间二次精度。
2. 舍入误差计算机的精度引起的误差称为舍入误差( r ound-off error 圆误差)。
通常CFD 忽略舍入误差。
这是因为,几乎所有的CFD 程序的精度都在3阶以下,舍入精度都比它们下的缘故。
舍入精度同计算精度有关。
要注意的是,超级计算机的利用。
目前由于存储容量的限制,许多使用的是单精度(32bit )的机器。
但是使用超级计算机,往往采用特别小的格子,这时需要注意计算机的精度问题。
通常,定常解的收敛以截断误差为3阶为标准。
但必须注意单精度同双精度(64bit )的误差相差很大。
特别是,在使用广泛应用的一般坐标系上的守恒表达形式的条件下,要达到实质性的收敛解,需采用双精度,可使误差充分减少,但此时如采用单精度,可能误差都达不到3阶。
因此,要特别注意收敛的判断,尽可能使用64bit 的计算。
3. 离散误差截断误差+数值的边界条件?指在无舍入误差的条件下,差分方程的解(即差分方程的严密解)和微分方程的精确解之差。
i.耗散误差(dissipative error )由数值扩散引起的离散误差部分 ii.分散误差(dispersive error )由相位误差引起的离散误差。
iii.延迟相位误差波的位置在真波后发生 iv.前进相位误差波的位置在真波前发生v.正确解 耗散误差 分散误差xxxx2.4 显式、隐式和半隐式求解格式对于时间推进问题,有显式、半隐式和隐式三种基本格式。
()00>=+c cu u x t ( 2-17 )t u u t u nin i i∆-=⎪⎭⎫ ⎝⎛∂∂+1 ( 2-18 ) 空间CDS1. 显式格式x u u x u ni n i ∆-=⎪⎭⎫ ⎝⎛∂∂-+11 ( 2-19 )∑=+nbnnbnb n i u a u 1 ( 2-20 ) 2. 隐式格式x u u x u n i n i ∆-=⎪⎭⎫ ⎝⎛∂∂+-++1111 ( 2-21 )∑=+nbn i i n nb nb u a u a 1 ( 2-22 ) 3. 半隐式主要用于非线性问题x u u x u n i n i ∆-=⎪⎭⎫ ⎝⎛∂∂+-+111 ( 2-23 ) ∑∑=++nbnbni n n nb n u a uanb nb11 ( 2-24 )2.5 稳定性条件1. 相容性指差分方程接近微分方程的程度。
时间方向和空间方向的分割(∆t, ∆x )变小,截断误差逐渐消失,即差分方程接近原来的微分方程,则称为该差分形式与偏微分方程的相容(consistent )。
大部分差分方法满足此条件。
如上式中只要满足0→∆∆x t 的条件,则consistent. 2. 稳定性对于发展性问题,基本可以满足数值的稳定性这一条件。
稳定性是指,计算的一步步进行,不管什么原因引起的误差都不会使其成长。
3. 收敛性指差分解接近真实解的程度。
格子变小变细后,其近似解接近于元微分方程解。
离散化误差趋近零。
即只要使用足够的点,不管要求多小的误差都能达到。
注意:不是指收敛于定常流的解问题。
4. Lax 的等同定理(Lax ’s Equivalence Theorem )收敛的格式一定是稳定而且相容的格式。
这对线性的标量的时间发展问题成立。
即:稳定性+相容性为收敛性的必要条件。
即要得到正确的解,必须是用稳定且相容的方法。
5. V on Neumann 稳定性条件适用于初值问题。
基本思想可从小扰动法的角度去考虑。
假定某一时刻引入了一个误差矢量,即扰动,如果这一扰动的强度(或振幅)随时间不断增大,则这一格式是不稳定的。
反之,扰动的振幅如果是衰减的,或保持不变,格式是稳定的。
令振幅比定义为()()t t t ψψμ/∆+= ( 2-25 )初值稳定性条件: ⎣⎦1≤μ 其中:中性稳定 1=μCFL 条件:Cournat 条件:显式格式的稳定性条件1≤∆∆xtc 2.6 线性标量方程式的物理意义流体力学的基本现象: 对流和扩散1. 输运方程式或波动方程式例1:以对流为代表的典型方程式:输运方程式或波动方程式:为双曲线问题(hyperbolic problem),必须有初期条件。
),0(0∞<<∞->=∂∂+∂∂x t xu c t u ( 2-26 ) c 为正整数。
使用下列初始条件,成为时间发展问题:)0(),0(21<=≥=x u u x u u ( 2-27 )它的一种差分格式为:011=∆-+∆--+xu u ctu u nj n j n jn j ( 2-28 )即:()nj n j n j n j u u x t c u u 11-+-⎪⎭⎫⎝⎛∆∆-= ( 2-29 ) 当t x c ∆∆=时,n j n j u u 11-+=。
即在时间步长n 时,1-=j x x 处发生的现象,将在时间步长为n+1时,在j x x =处发生。
实际上,式(11)的解为:)(),(ct x u t x u -= ( 2-30 )其解在称之为特性线的ct x =上。
只有在t x c ∆∆=时其差分解才与解析解相同。