数值分析Runge-Kutta方法综述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
考察改进的欧拉法,可以将其改写为: 斜率 一定取K1 K2 的平均值吗?
y i 1 K1 K2

1 1 y i h K 1 K 2 2 2 f ( xi , yi ) f ( xi h, yi hK 1 )
步长一定是一个h 吗?
© 2009, Henan Polytechnic University §3 Runge-Kutta方法
3 要求 Ri y( xi 1 ) yi 1 O(h ) ,则必须有:
1 1 2 1 , 2 p 2
这里有 3 个未知 数, 2 个方程。
存在无穷多个解。所有满足上式的格式统称为2阶龙格 - 库 塔格式。注意到,p 1, 1 2 1 就是改进的欧拉法。
2
Q: 为获得更高的精度,应该如何进一步推广?
© 2009, Henan Polytechnic University §3 Runge-Kutta方法
4 4
第五章 常微分方程数值解法 yi1 yi h[ 1 K1 2 K2 ... m Km] 其中i ( i = 1, …, m ),i ( i K1 f ( xi , yi ) = 2, …, m ) 和 ij ( i = 2, …, m; j = 1, …, i1 ) 均为待定 K2 f ( xi 2 h, yi 21 hK1 ) 系数,确定这些系数的 K3 f ( xi 3 h, yi 31 hK1 32 hK2 ) 步骤与前面相似。 ... ... Km f ( xi m h, y m1 hK1 m2 hK2 ... m m1 hKm1 ) 最常用为四级4阶经典龙格-库塔法 /* Classical Runge-Kutta Method */ :
• 7.2 RungeKutta方法
• 由Taylor公式:
– 7.2.1 构造高阶单步法的直接方法
y ( xi 1 ) y ( xi h )
h2 h p ( p) y ( xi ) hy ' ( xi ) y" ( xi ) ... y ( xi ) 2! p! h p 1 y ( p 1) ( ) ( p 1)!
y i 1 K1 K2 K3 K4
© 2009, Henan Polytechnic University §3 Runge-Kutta方法

yi h ( K1 2K 2 2K 3 K 4 ) 6 f ( xi , yi ) h f Байду номын сангаас xi h , y K1 ) i 2 2 f ( xi h , yi h K2 ) 2 2 f ( x i h, yi hK 3 )
Step 1: 将 K2 在 ( xi , yi ) 点作 Taylor 展开
K 2 f ( xi ph, yi phK1 ) f ( xi , yi ) phf x ( xi , yi ) phK1 f y ( xi , yi ) O( h2 )
y( xi ) phy( xi ) O(h2 )
O(h6 )
由于龙格-库塔法的导出基于泰勒展开,故精度主要受
解函数的光滑性影响。对于光滑性不太好的解,最好 采用低阶算法而将步长h 取小。
深入研究龙格库塔法请看此处!
© 2009, Henan Polytechnic University §3 Runge-Kutta方法
6 6
第五章 常微分方程数值解法
第五章 常微分方程数值解法
Step 3: 将 yi+1 与 y( xi+1 ) 在 xi 点的泰勒展开作比较
yi 1 yi (1 2 )h y( xi ) 2 ph2 y( xi ) O(h3 )
h2 y( xi 1 ) y( xi ) hy( xi ) y( xi ) O( h3 ) 2
Step 2: 将 K2 代入第1式,得到
yi 1 yi h 1 y( xi ) 2[ y( xi ) phy( xi ) O( h2 )]


3 3
§3 Runge-Kutta方法
2 3 y ( ) h y ( x ) ph y ( x ) O ( h ) i 1 2 i 2 i © 2009, Henan Polytechnic University
第三节
Runge-Kutta方法
1
第五章 常微分方程数值解法
§3 龙格 - 库塔法 /* Runge-Kutta Method */
建立高精度的单步递推格式。
单步递推法的基本思想是从 ( xi , yi ) 点出发,以某一斜 率沿直线达到 ( xi+1 , yi+1 ) 点。欧拉法及其各种变形所 能达到的最高精度为2阶。
5 5
第五章 常微分方程数值解法
注:
龙格-库塔法的主要运算在于计算 Ki 的值,即计算 f 的
值。Butcher 于1965年给出了计算量与可达到的最高精 度阶数的关系:
每步须算Ki 的个数 可达到的最高精度
2
3
4
5
6
7
n8
O(hn2 )
4 3 4 5 O(h2 ) O(h ) O(h ) O(h ) O(h )
2 2
将改进欧拉法推广为:
yi 1 K1 K2 yi h [1 K 1 2 K 2 ] f ( x i , yi ) f ( xi ph, yi phK1 )
第五章 常微分方程数值解法
d f ( x, y) dx 首先希望能确定系数 1、2、p,使得到的算法格式有 2阶 dy 精度,即在 yi y( xi ) 的前提假设下,使得 f x ( x, y) f y ( x, y) dx Ri y( xi 1 ) yi 1 O(h3 ) f x ( x, y) f y ( x, y) f ( x, y) y( x )
相关文档
最新文档