数值分析简明教程0-1 (14)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中的导数项 y ' ( xn +1) , 再进行离散化, 再进行离散化,可导出公式: 可导出公式:
y n+1 = yn + hf ( xn+1 , y n+1)
称为隐式欧拉格式。 称为隐式欧拉格式。它也是一阶方法。 它也是一阶方法。
12
三、 两步欧拉格式
为了改善精度, 为了改善精度,用中心差商 21h [ y ( x n + 1 ) − y ( x n − 1 )]
则初值问题(1)的解存在且唯一
对于问题(1),要求它的数值解
就是求未知函数y( x )在区间[ a , b ]上的一系列离散点(节点)
a = x0 < x1 < x2 < L < xn = b
上函数值y( xk )的近似值yk ( k = 1,2 ,L , n ) 而yk ( k = 1,2 ,L , n )就是问题(1)的数值解
-----------(4)
本课程主要研究问题(1)的数值解法,对(2)~(4)只作简单介绍 我们首先介绍初值问题(1)的解存在的条件
6
定理1. 如果f ( x , y )满足Lipschitz条件,即
∃正数L , 使得∀x ∈ [ a , b ],均有 | f ( x , y1 ) − f ( x , y2 )| ≤ L| y1 − y2 |
10
• 对于欧拉格式, 对于欧拉格式,假设 y n = y ( xn ) ,则有: 则有:
' y n +1 = y ( x n ) + hf ( xn , y ( x n )) = y ( x n ) + h y ( xn )
• 按泰勒展开有: 按泰勒展开有:
y ( x n +1) = y ( xn ) + h y ( xn ) +
y2 = y1 + h( y2 −
2 × 0. 2 2 x2 ) = 1.1763 ) = 1.0918 + 0.1(1.1827 − 1.1827 y2
20
依此类推,得
[ x, y] =
1 .8
1 .7
精 精精 前 前 E ule r公公
1 .6

y′ = f ( x , y ) y ( a ) = y0 a≤ x≤b
-----------(1) -----------(2)
5
y′′ = f ( x , y , y′) a ≤ x ≤ b y( a ) = y0 , y′( a ) = α
y′′ = f ( x , y , y′) a ≤ x ≤ b y ( a ) = y0 , y ( b ) = y n
14
• 为了提高精度, 为了提高精度,采用梯形法计算积分: 采用梯形法计算积分:
h x n +1 ∫xn f ( x, y ( x ))dx ≈ 2 [ f ( xn , y ( xn)) + f ( xn+1 , y ( xn+1))]
• 再代入( 再代入(5)式有: 式有:
h y ( xn +1) ≈ y ( x n ) + [ f ( xn , y ( x n )) + f ( x n +1 , y ( xn +1))] 2
0 依此类推,有 0.1000 0.2000 0.3000 0.4000 0.5000 [ x, y] = 0.6000 0.7000 0.8000 0.9000 1.0000

1.0000 1.1000 1.1918 1.2774 1.3582 1.4351 1.5090 1.5803 1.6498 1.7178 1.7848
• 离散化就可得到: 离散化就可得到:
h y n +1 = y n + [ f ( x n , y n ) + f ( x n +1 , y n +1)] 2
• 称为梯形格式。 称为梯形格式。
15
五、 改进的欧拉格式 • 欧拉格式是一种显式格式 欧拉格式是一种显式格式, 格式是一种显式格式,计算量小, 计算量小,但精度很低。 但精度很低。 • 梯形格式虽然精度高, 梯形格式虽然精度高,但它是一种隐式格式, 但它是一种隐式格式,计算 复杂且计算量大。 复杂且计算量大。 综合两种方法。 综合两种方法。先用欧拉格式求一个初步的近似 值 y ,称为预报值; 称为预报值;再代入梯形格式的右端计算 出一个新值 y ,称为校正值。 称为校正值。这样就构造了一个 预报—校正系统: 校正系统:

1.8 1.7 1.6 1.5 1.4 1.3 1.2 1.1 1 0
前前 Euler公 公 精精 精
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9 19
1
例2. 解:
用改进的Euler公式(预测—校正系统)求解例 求解例1.
2×0 2 x0 ) = 1.1 y1 = y0 + h( y0 − ) = 1 + 0.1(1 − 1 y0 2 × 0.1 2 x1 ) = 1.0918 y1 = y0 + h( y1 − ) = 1 + 0.1(1.1 − 1.1 y1 2 × 0.1 2 x1 ) = 1.1827 y2 = y1 + h( y1 − ) = 1.0918 + 0.1(1.0918 − 1.0918 y1
显然 f ( x , y ) = y − 2x y
x0 = a = 0, n = 10, b = 1, y0 = 1
由Euler格式
yn +1 = yn + hf ( xn , yn )
= yn + h ( yn −
2 xn ) yn
n = 1,2,L, m
18

2×0 2 x0 y1 = y0 + h( y0 − ) = 1 + 0.1(1 − ) = 1 .1 y0 1 2 x1 2 × 0 .1 y2 = y1 + h( y1 − ) = 1.1 + 0.1(1.1 − ) = 1.1918 y1 1 .1
第三章 常微分方程的差分法
第三章 常微分方程数值解
3.1 欧拉方法 § 3.2 龙格-库塔方法 § 3.3 亚当姆斯方法 § 3.4 收敛性与稳定性 § 3.5 方程组和高阶方程 §
2
本章要点: 本章要点 本章主要研究常微分方程的定解问题。 本章主要研究常微分方程的定解问题。 这类问题最简单的形式是: 这类问题最简单的形式是:
差分方法 差分方法是一类重要的数值解法 。这类方法 是寻求一系列离散节点 x1 < x2 < L < xn < L 上的近似 解 y1 , y 2 ,L, y n ,L
Байду номын сангаас
通常采用“步进式”方法。 方法。即:
y1 ⇒ y 2 ⇒ L ⇒ y n ⇒ L
4
§3.1 欧拉方法
在工程和科学技术的实际问题中, 在工程和科学技术的实际问题中,常需要求解微分方程. 只有简单的和典型的微分方程可以求出解析解 而在实际问题中的微分方程往往无法求出解析解 在高等数学中我们见过以下常微分方程: 在高等数学中我们见过以下常微分方程
y' = f (x, y) y ( x 0) = y 0
这也是本章研究的重点。 这也是本章研究的重点。 主要求解方法有: 主要求解方法有 线性单步法: 线性单步法:Euler方法、 方法、Simpson方法、 方法、 Runge-Kutta方法 线性多步法: 线性多步法:Adams方法
3
• 平均化形式是: 平均化形式是:
y = y + hf ( x n , y ) p n n y c = y n + hf ( x n + 1 , y p ) 1 y n +1 = 2 ( y p + y c )
17
例1. 用Euler格式求解初值问题 y′ = y − 2 x 0 ≤ x ≤ 1 y 取 h = 0 .1 y( 0 ) = 1 解:
n +1
n +1
预报: yn +1 = y n + hf ( x n , y n ) h 校正: [ f ( x n , y n ) + f ( x n +1 , yn +1)] = + yn +1 y n 2
改进的欧拉格式
16
• 其嵌套形式是: 嵌套形式是:
h yn +1 = y n + [ f ( x n , y n ) + f ( x n +1, y n + hf ( x n , y n ))] 2
的近似值, 的近似值,
• 就可得到 y ( xn +1) 的近似值。 的近似值。 • 例如, 例如,用矩形法: 用矩形法: x f ( x, y ( x ))dx ≈ hf ( xn , y ( xn )) ∫
n +1
xn
• 代入( 代入(5)式有: 式有: y ( xn +1) ≈ y ( xn ) + hf ( xn , y ( xn )) • 离散化即得欧拉格式。 离散化即得欧拉格式。
' h2 2
y
''
(ξ )
x n < ξ < x n +1
• 从而有: 从而有:
y ( x n +1) − y n +1 =
h2 2
y
''
(ξ )
• 这说明欧拉格式是一阶方法。 这说明欧拉格式是一阶方法。
11
二、 隐式欧拉格式
y ( x n +1 ) − y ( x n ) 若用向后差商 h
' y 代替方程 ( xn +1) = f ( xn +1 , y ( x n +1))
13
四、 梯形格式 • 将方程
' y = f ( x, y ) 的两端从 x n
到 x n+1 求积分得: 求积分得:
(5)
x n +1 y ( x n +1) = y ( x n ) + ∫ f ( x, y ( x ))dx xn
• 显然, 显然,只要计算出
x n +1 ∫xn f ( x, y( x))dx
代替方程 y ' ( xn ) = f ( x n , y ( x n )) 中的导数项 y ' ( xn ) 。 再进行离散化, 再进行离散化,可导出公式: 可导出公式:
y n +1 = y n −1 + 2hf ( xn , y n )
称为欧拉两步格式。 称为欧拉两步格式。 显然, 显然,欧拉格式和隐式欧拉格式都是单步法。 欧拉格式和隐式欧拉格式都是单步法。 易证, 易证,欧拉两步格式是二阶方法。 欧拉两步格式是二阶方法。
-----------(3)
(1),(2)式称为初值问题,(3)式称为边值问题 另外,在实际应用中还经常需要求解常微分方程组:
′ = f 1 ( x , y1 , y2 ) y1 ′ = f 2 ( x , y1 , y 2 ) y2 y1 ( x0 ) = y10 y2 ( x0 ) = y20
7
从(1)的表达式
y ′ = f ( x, y ) y ( a ) = y0 a≤ x≤b
可以看出,求它的数值解的关键在于
y′( x )数值计算问题
因此, 因此,数值解法的第一步就是设法消去其导数项, 数值解法的第一步就是设法消去其导数项, 这项手续称为离散化。 这项手续称为离散化。由于差分是微分的近似运算, 由于差分是微分的近似运算, 实现离散化的基本途径是用差商近似代替导数。 实现离散化的基本途径是用差商近似代替导数。
8
一、 欧拉格式
为了讨论方便,假设以下节点为等距节点
a = x0 < x1 < x2 < L < xn = b
b−a , xk = a + kh h= n
若在节点列出方程(1): y ' ( x n ) = f ( xn , y ( x n ))
' 并用差商 y ( x n +1) − y ( x n ) 代替其中的导数项 y ( x n ) ,
h
结果为: 结果为: y ( x n +1) = y ( xn ) + hf ( x n , y ( xn ))
9
• 用 y ( xn ) 的近似值 y n 代入上式右端, 代入上式右端,并记结果 为 y n +1,导出一个计算公式为: 导出一个计算公式为:
y n +1 = y n + hf ( x n , y n ) , n = 0,1,2 L
• 这就是欧拉( 这就是欧拉(Euler)格式。 格式。 定义1:设 y n 为准确的, 为准确的,即在 y n = y ( xn ) 的前提下 估计误差 y ( xn +1) − y n +1 。这种误差称为 局部截断误差。 局部截断误差。 定义2:如果一种数值方法的局部截断误差为 o( h p +1) ,则称该方法具有 p 阶精度。 阶精度
相关文档
最新文档