常微分方程数值解法

第九章 常微分方程数值解法

一、单步法及其收敛阶

1、Euler方法

(1)显式Euler公式:yn+1=yn+hf(xn,yn)

n=0,1,2,L

这是最早的一种数值方法,由于它不够精确,很少被采用,但它是其它方法的基础。 (2) 改进的Euler公式:yn+1=yn+

h

[f(xn,yn)+f(xn+1,yn+1)]n=0,1,2,L 2

改进的Euler公式也称为梯形公式,它是一种隐式单步方法,不能直接求出yn+1,通常用迭代法进行计算,其初始迭代值由显式Euler公式提供,从而得到下述迭代公式:

(0) yn=yn+hf(xn,yn) +1

(k+1)h(k)

yn+1=yn+[f(xn,yn)+f(xn+1,yn+1)]k=0,1,2,L

2

可以证明,只要步长满足h<

L

(其中为L李普希兹常数),上述迭代公式就收敛于yn+1。2

该迭代方法的缺陷是每计算一个点,都需要反复迭代。为了减少迭代次数,减少工作量,每计算一个点,只让它迭代一次,从而得到Euler预报—校正公式:

(0) yn=yn+hf(xn,yn) +1 h(0)yyfxyfxy=++[(,)(, n+1nnnn+1n+1)] 2

n=0,1,2,L

(3)局部截断误差和整体截断误差

单步法的一般形式:yn+1=yn+hφ(xn,yn,yn+1,h)

n=0,1,2,L,其中φ与f有关,

称之为增量函数。如果φ中含有yn+1,方法称为隐式的;如果φ中不含有yn+1,方法称为显式的,通常记为yn+1=yn+hφ(xn,yn,h)

n=0,1,2,L。

定义1 对于初值问题(*),称en=y(xn) yn为某一方法的整体截断误差。它与前面各步的误差有关。

定义2 对于初值问题(*),假设yn是精确的,用某种方法求yn+1时所产生的截断误差称为该方法的局部截断误差,通常记为Tn+1。因此,局部截断误差Tn+1可以理解为以前各步没

常微分方程数值解法相关文档

最新文档

返回顶部