当前位置:
文档之家› 第五章 有限差分法 知识讲解课件
第五章 有限差分法 知识讲解课件
的 m=4,即此表对应差商的精度是四阶的。从这些表可以看出,一般地说,随着
差分阶数的增大和对应差商精度的提高,差分表达式所包含的项数将增多。
表 5-1
j
n0 1 2 34
1 -1
aj 1
2 1 -2 1
3 -1 3 -3 1
4 1 -4 6 -4 1
表 5-3 j
n0 1 2345 aj
1 -3 4 -1 2 2 -5 4 -1 3 -5 18 -24 14 -3 4 3 -14 26 -24 11 -2
依此类推,任何阶差分都可由其低一阶的差分再作一阶差分得到。例如 n 阶前差
分为
∆n y = ∆(∆n−1 y) = ∆[∆(∆n−2 y)]
⋯⋯ = ∆{∆⋯[∆(∆y)]} = ∆{∆⋯[∆( f (x + ∆x) − f (x)]}
n 阶的向后差分、中心差分的型式类似。
(5-6)
函数的差分与自变量的差分之比,即为函数对自变量的差商。如一阶向前差
二阶差商多取中心式,即
∆2 y ∆x 2
=
f (x + ∆x) − 2 f (x) + (∆x) 2
f (x − ∆x) 。
(5-9) (5-10) (后的二阶差商。 以上是一元函数的差分与差商。多元函数 f(x,y,…)的差分与差商也可以类推。
如一阶向前差商为
应地,上式中的 ∆y 、 ∆x 分别称为函数及自变量的差分, dy //#######为函数对 dx
自变量的差商。 在导数的定义中 ∆x 是以任意方式趋近于零的,因而 ∆x 是可正可负的。在差
分方法中, ∆x 总是取某一小的正数。这样一来,与微分对应的差分可以有 3 种
形式: 向前差分 向后差分 中心差分
(5-24)
二阶中心差商 2[ f (xi + ∆xi )∆xi−1 − f (xi )(∆xi−1 + ∆xi ) + f (xi − ∆xi−1 )∆xi ] /[∆xi−1∆xi (∆xi−1 + ∆xi )]
(5-25)
以上都是一阶精度的。二阶精度的差商如下:
一阶向后差商 { f (xi )[(∆xi−2 + ∆xi−1 )2 − ∆xi2−1 ] − f (xi − ∆xi−1 )(∆xi−2 + ∆xi−1 )2 + f (xi − ∆xi − ∆xi+1 )∆xi2−1} /[∆xi−2∆xi−1 (∆xi−2 + ∆xi−1 )]
表 5-5 j
-1 0 aj
-1 0 1 -2 20 -4 6
12
1 1 -2 1 -4 1
表 5-6
J
n -3 -2 -1 0 1 2 3
aj
1
1 -8 0 8 -1
2
-1 16 -30 16 -1
3 1 -8 13 0 -13 8 -1
4 -1 12 -39 56 -39 12 -1
以上的差分是用 f (xi ± j∆x) 求得的,这表示是以等距离 ∆x 向前、向后进行
显然, m ≤ 0 的差商及其对应的差分是不恰当的。当且 aj 为表 5-1 至表 5-6 中所
∑ c j =
n!a j
J2
aj jn
(5-21)
j=− J1
列的数值时,可得 m>0。其中表 5-1 和表 5-2 的 m=1,即此二表对应差商的精度
是一阶的;表 5-3 至表 5-5 的 m=2,即这些表对应差商的精度是二阶的;表 5-6
表 5-2
j
n -4 -3 -2 -1 0
aj
1
-1 1
2
1 -2 1
3
-1 3 -3 1
4 1 -4 6 -4 1
表 5-4
J
n -5 -4 -3 -2 -1 0
aj
1
1 -4 3
2
-1 4 -5 2
3
3 -14 24 -18 5
4 -2 11 -24 26 -14 3
n -2
1 2 3 -1 41
差分的。在有些情况下要求自变量的增量本身是变化的,如图 5-1 中的 ∆xi−2 、 ∆xi−1 、 ∆xi和∆xi+1 ,是不相等的,相应的差分和差商就是不等距的。
∆xi−2 ∆xi−1 ∆xi
∆x i + 2
O
xi−2
x i −1
xi
x i +1
xi+2
x
图 5-1 变距离差分
下面列出一些不等距的差商供参考:
可见一阶中心差商具有二阶精度。
将 f (x + ∆x) 与 f (x − ∆x) 的 Taylor 展开式相加可得
f
(x + ∆x) − 2 f (x) + ∆x 2
f
(x − ∆x)
=
f
′′(x) + O((∆x)2 )
(5-18)
这说明二阶中心差商的精度也为二阶。 在掌握了用 Taylor 展开分析差商精度的方法后,再回过来谈一谈函数差分和
3!
4!
∴ f (x + ∆x) − f (x) = f ′(x) + f ′′(x) ∆x
∆x
2!
f ′′′(x) (∆x)2 + f IV (x) (∆x)3 + O((4x)4 ) //###
3!
4!
= f ′(x) + O(∆x)
(5-14) (5-15)
这里符号 O()表示与()中的量有相同量级的量。上式表明一阶向前差商的逼 近误差与自变量的增量同量级。我们把 O(∆xn ) 中 ∆x 的指数 n 作为精度的阶数。
∆y = f (x + ∆x) − f (x)
∆y = f (x) − f (x − ∆x)
∆y = f (x + 1 ∆x) − f (x − 1 ∆x)
2
2
(5-2) (5-3) (5-4)
上面谈的是一阶导数,对应的称为一阶差分。对一阶差分再作一阶差分,所
得到的称为二阶差分,记为 ∆2 y 。以向前差分为例,有
∆f = f (x + ∆x, y,⋯) − f (x, y,⋯) ,
∆x
∆x
∆f = f (x, y + ∆y,⋯) − f (x, y,⋯) ,
∆y
∆y
⋯⋯
(5-12) (5-13)
二.逼近误差
由导数(微商)和差商的定义知道,当自变量的差分(增量)趋近于零时,
就可由差商得到导数。因此在数值计算中常用差商近似代替导数。差商与导数之 间的误差表明差商逼近导数的程度,称为逼近误差。由函数的 Taylor 展开,可以
商为
∆y
=
f (x + ∆x) −
f (x) ;
∆x
∆x
(5-7)
一阶向后差商为
∆y
=
f (x) −
f (x − ∆x) ;
∆x
∆x
(5-8)
一阶中心差商为
∆y
=
f (x + 1 ∆x) − 2
f (x − 1 ∆x) 2
∆x
∆x
或
∆y = f (x + ∆x) − f (x − ∆x)
∆x
2∆x
差商的定义。由于差分和差商是微分和导数的近似表达式,所以不必局限于前面
的定义,而可予以扩充。设有函数 f(x),自变量 x 的增量为 ∆x ,若取
x = xi + j∆x, j = 0, ± 1, ± 2, ⋯
(5-19)
对应的函数值为 f (xi + j∆x) ,则 f(x)在 xi 处的 n 阶差分可表达为
∑J 2
∆n f (xi ) = c j f (xi + j∆x)
j =− J1
(5-20)
式中 cj 为给定系数,J1 和 J2 是两个正整数。当 J1=0 时,称为向前差分;当 J2=0 时,称为向后差分;当 J1=J2 且| c j |=| c− j | 时,称为中心差分。函数的 n 阶差分与 自变量的 n 阶差分之比为 n 阶差商,可用 Taylor 展开分析其逼近误差 O(∆xm ) 。
∆2 y = ∆(∆y)
= ∆[ f (x + ∆x) − f (x)]
= ∆f (x + ∆x) − ∆f (x)
(5-5)
= [ f (x + 2∆x) − f (x + ∆x)] − [ f (x + ∆x) − f (x)]
= f (x + 2∆x) − 2 f (x + ∆x) + f (x)
(5-28)
为例,列出对应的差分方程。 用差商近似代替导数时,首先要选定 ∆x 和 ∆t ,称为步长。然后在 x − t 坐标
算精度的前提下,有效地提高计算速度。
第二节 差分方程、截断误差和相容性
从上节所述可知,差分相应于微分,差商相应于导数。只不过差分和差商是
用有限形式表示的,而微分和导数则是以极限形式表示的。如果将微分方程中的
导数用相应的差商近似代替,就可得到有限形式的差分方程。现以对流方程
∂ζ + α ∂ζ = 0 ∂t ∂x
一阶向后差商
f (xi ) − f (xi − ∆xi−1 ) ∆xi−1
一阶中心差商
f (xi + ∆xi ) − f (xi − ∆xi−1 ) ∆xi + ∆xi−1
(5-22) (5-23)
二阶向后差商 2[ f (xi )∆xi−2 − f (xi − ∆xi−1 )(∆xi−2 + ∆xi−1 ) + f (xi − ∆xi−1 − ∆xi−2 )∆xi−1 ] / [∆xi−2∆xi−1 (∆xi−2 + ∆xi−1 )]