-294-
需要说明的是,用不同的差商近似导数,将得到不同的计算公式。
(ii)用数值积分方法
将问题(1)的解表成积分形式,用数值积分方法离散化。例如,对微分方程两端
积分,得
∫
+
−==−
+
1
)1,,1,0())(,()()(
1
n
n
x
x
nn
Nndxxyxfxyxy L
(4)
右边的积分用矩形公式或梯形公式计算。
(iii)Taylor 多项式近似
将函数
)(xy 在
n
x 处展开,取一次 Taylor 多项式近似,则得
))(,()()(')()(
1 nnnnnn
xyxhfxyxhyxyxy
+≈
+
再将
)(
n
xy 的近似值
n
y 代入上式右端,所得结果作为 )(
1+n
xy 的近似值
1+n
y ,得到离
散化的计算公式
),(
1 nnnn
yxhfyy +
+
以上三种方法都是将微分方程离散化的常用方法,每一类方法又可导出不同形式的
计算公式。其中的 Taylor 展开法,不仅可以得到求数值解的公式,而且容易估计截断
误差。
§2 欧拉(Euler)方法
2.1 Euler 方法
Euler 方法就是用差分方程初值问题(3)的解来近似微分方程初值问题(1)的解,
即由公式(3)依次算出
)(
n
xy 的近似值 )1,,2,1(
Nny
n
L 。这组公式求问题(1)
的数值解称为向前 Euler 公式。
如果在微分方程离散化时,用向后差商代替导数,即
h
xyxy
xy
nn
n
)()(
)('
1
1
−
≈
+
+
,
则得计算公式
⎩
⎨
⎧
=
−=+=
+++
)(
)1,,1,0(),(
0
111
ayy
Nnyxhfyy
nnnn
L
(5)
用这组公式求问题(1)的数值解称为向后 Euler 公式。
向后 Euler 法与 Euler 法形式上相似,但实际计算时却复杂得多。向前 Euler 公式
是显式的,可直接求解。向后 Euler 公式的右端含有
1+n
y ,因此是隐式公式,一般要用
迭代法求解,迭代公式通常为
⎪
⎩
⎪
⎨
⎧
=+=
+=
++
+
+
+
),2,1,0(),(
),(
)(
11
)1(
1
)0(
1
Lkyxhfyy
yxhfyy
k
nnn
k
n
nnnn
(6)
2.2 Euler 方法的误差估计
对于向前 Euler 公式(3)我们看到,当
1,,2,1
Nn L 时公式右端的
n
y 都是近似
的,所以用它计算的
1+n
y 会有累积误差,分析累积误差比较复杂,这里先讨论比较简
单的所谓局部截断误差。
假定用(3)式时右端的
n
y 没有误差,即 )(
nn
xyy
,那么由此算出
))(,()(
1 nnnn
xyxhfxyy
=
+
(7)
评论0
最新资源