-293-
第十五章 常微分方程的解法
建立微分方程只是解决问题的第一步,通常需要求出方程的解来说明实际现象,并
加以检验。如果能得到解析形式的解固然是便于分析和应用的,但是我们知道,只有线
性常系数微分方程,并且自由项是某些特殊类型的函数时,才可以得到这样的解,而绝
大多数变系数方程、非线性方程都是所谓“解不出来”的,即使看起来非常简单的方程
如
22
xy
dx
dy
+=
。于是对于用微分方程解决实际问题来说,数值解法就是一个十分重
要的手段。
§1 常微分方程的离散化
下面主要讨论一阶常微分方程的初值问题,其一般形式是
⎪
⎩
⎪
⎨
⎧
=
≤≤=
0
)(
),(
yay
bxayxf
dx
dy
(1)
在下面的讨论中,我们总假定函数
),( yxf
连续,且关于
y
满足李普希兹(Lipschitz)条
件,即存在常数
L ,使得
|||),(),(| yyLyxfyxf
−
≤
−
这样,由常微分方程理论知,初值问题(1)的解必定存在唯一。
所谓数值解法,就是求问题(1)的解
)(xy 在若干点
bxxxxa
N
=
<
<
<
<= L
210
处的近似值
),,2,1( Nny
n
L= 的方法, ),,2,1( Nny
n
L
=
称为问题(1)的数值解,
nnn
xxh −=
+1
称为由
n
x 到
1+n
x 的步长。今后如无特别说明,我们总取步长为常量 h 。
建立数值解法,首先要将微分方程离散化,一般采用以下几种方法:
(i)用差商近似导数
若用向前差商
h
xyxy
nn
)()(
1
−
+
代替 )('
n
xy 代入(1)中的微分方程,则得
)1,,1,0())(,(
)()(
1
−=≈
−
+
Nnxyxf
h
xyxy
nn
nn
L
化简得
))(,()()(
1 nnnn
xyxhfxyxy
+
≈
+
如果用
)(
n
xy 的近似值
n
y 代入上式右端,所得结果作为 )(
1+n
xy 的近似值,记为
1+n
y ,
则有
)1,,1,0(),(
1
−
=
+=
+
Nnyxhfyy
nnnn
L (2)
这样,问题(1)的近似解可通过求解下述问题
⎩
⎨
⎧
=
−=+=
+
)(
)1,,1,0(),(
0
1
ayy
Nnyxhfyy
nnnn
L
(3)
得到,按式(3)由初值
0
y 可逐次算出
N
yyy ,,,
21
L 。式(3)是个离散化的问题,称
为差分方程初值问题。