-179-
第十五章 常微分方程的解法
建立微分方程只是解决问题的第一步,通常需要求出方程的解来说明实际现象,并
加以检验。如果能得到解析形式的解固然是便于分析和应用的,但是我们知道,只有线
性常系数微分方程,并且自由项是某些特殊类型的函数时,才可以肯定得到这样的解,
而绝大多数变系数方程、非线性方程都是所谓“解不出来”的,即使看起来非常简单的
方程如
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,0())(,(
)()(
1
L=≈
−
+
nxyxf
h
xyxy
nn
nn
化简得
))(,()()(
1 nnnn
xyxhfxyxy
+
≈
+
如果用
)(
n
xy 的近似值
n
y 代入上式右端,所得结果作为 )(
1+n
xy 的近似值,记为
1+n
y ,
则有
),1,0(),(
1
L
=
+=
+
nyxhfyy
nnnn
(2)
这样,问题(1)的近似解可通过求解下述问题
⎩
⎨
⎧
=
=+=
+
)(
),1,0(),(
0
1
ayy
nyxhfyy
nnnn
L
(3)
得到,按式(3)由初值
0
y 可逐次算出 L,,
21
yy 。式(3)是个离散化的问题,称为差
分方程初值问题。