第7章常微分方程初值问题的数值解法.doc
文本预览下载声明
第章 常微分方程数值解法
.1 引 言
(initial condition)和边界条件(boundary condition). 只含初始条件作为定解条件的微分方程求解问题称为初值问题(initial-value problem); 例如天文学中研究星体运动,空间技术中研究物体飞行等,都需要求解常微分方程初值问题(initial-value problem for ordinary differential equations). 只含边界条件作为定解条件的微分方程求解问题称为边值问题(boundary-value problem).
除特殊情形外,微分方程一般求不出解析解,即使有的能求出解析解,其函数表示式也比较复杂,计算量比较大,而且实际问题往往只要求在某一时刻解的函数值. 为了解决这个问题,有两种方法可以逼近原方程的解。第一种方法是:将原微分方程化简为可以准确求解的微分方程,然后使用化简后的方程的解近似原方程的解;第二种方法是:将求原微分方程的解析解转化为求原方程的数值解,这是实际中最常用的方法。
本章将介绍求解常微分方程初值问题的常用的数值方法。第8章将介绍常微分方程的边值问题的常用的数值方法。
为简明起见,本章主要介绍形如
(7.1.1)
的初值问题的数值解法. 在介绍这些方法之前,需要了解常微分方程的一些相关定义和结果.
定义7.1.1 函数称为在集合上关于变量满足Lipschitz条件(Lipschitz condition)Lip条件,如果存在常数,使得
(.1.2)
对所有都成立. 常数称为Lipschitz常数(Lipschitz constant)Lip常数..1.2 如果对所有,都有
, (.1.3)
其中,那么称集合为(convex set).
注 如果没有特别说明,本章中的集合为,显然它是凸集。
定理7.1.1 设函数在上连续. 如果在上关于变量满足Lipschitz条件,那么初值问题(.1.1)对有唯一解..1.2 设函数定义凸集上. 如果存在常数,使得
(.1.4)
对一切成立,那么在上关于变量满足Lipschitz条件,且为Lipschitz常数. 因为Lipschitz条件一般不易验证,所以往往用条件(.1.4)代替Lipschitz条件(.1.2)。
由定理.1.1立得.1.3 设函数在上连续. 如果存在常数,使得对一切成立,,那么初值问题(.1.1)对有唯一解.. 事实上,初始数据可能有误差,计算过程中的数字的舍入也会产生误差。对初值问题(7.1.1),若初值有误差,即实际得到的初值是,再考虑到计算过程中的数字的舍入也会产生误差,则得到的初值问题变为
(7.1.5)
这种误差的扰动在计算过程中是否会增长很快,以至影响结果,这就是初值问题的适定性问题.
定义7.1.3 设初值问题(7.1.1)和(7.1.5)的均有唯一解,分别是和,且连续。若对任意,存在常数,当时,对任意,恒有,则称初值问题(7.1.1)是适定的(well-posed)。
定理7.1.6 设函数在上连续. 如果在上关于变量满足Lipschitz条件,那么初值问题(.1.1)是适定的。
注 初值问题只有是适定的才有意义,因此本章考察的所有初值问题都是适定的。
求微分方程数值解的主要问题:
(1) 如何将原微分方程离散化, 并建立求其数值解的递推公式;
(2) 如何求递推公式的局部截断误差, 数值解与精确解的误差估计;
(3) 递推公式的稳定性与收敛性.
7.2 Euler方法及改进的Euler方法
.2.1 Euler格式与梯形格式
考虑一阶常微分方程的初值问题
(7.2.1)
设,其中为等距节点,步长.
在上对积分,得
(7.2.2)
7.2.1.1 Euler格式
用左矩形求积公式计算式(7.2.2)右端积分项,得
,
代入式(7.2.2)右端,得
. (7.2.3)
用的近似值代入式(7.2.3)右端,记所得结果为,得
(7.2.4)
并称(7.2.4)为求解初值问题(7.2.1)的Euler(Euler’s method)或Euler格式(Euler scheme),(difference equation).
注 Euler方法是最早的解决一阶常
显示全部