- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通过计算结果的比较可以看出,改进的Euler方法 的计算精度比Euler方法要高。 §3 龙格 - 库塔法 /* Runge-Kutta Method */ 建立高精度的单步递推格式。 单步递推法的基本思想是从 ( xi , yi ) 点出发, 欧拉法及其各种变形所能达到的最高精度为2阶。 以某一斜率沿直线达到 点。 ? 考察改进的欧拉法,可以将其改写为: 斜率 一定取K1 K2 的平均值吗? 步长一定是一个h 吗? 将改进欧拉法推广为: ) , ( ) , ( ] [ 1 2 1 2 2 1 1 1 phK y ph x f K y x f K K K h y y i i i i i i + + = = + + = + l l 首先希望能确定系数 ?1、?2、p,使得到的算法格式有2阶精度,即在 的前提假设下,使得 Step 1: 将 K2 在 ( xi , yi ) 点作 Taylor 展开 Step 2: 将 K2 代入第1式,得到 Step 3: 将 yi+1 与 y( xi+1 ) 在 xi 点的泰勒展开作比较 要求 ,则必须有: 这里有 个未知数, 个方程。 3 2 存在无穷多个解。所有满足上式的格式统称为2阶龙格 - 库塔格式。 注意到, 就是改进的欧拉法。 二阶中点方法 取 二阶Heun方法 取 记 则 二级Runge-Kutta格式的精度 因此局部截断误差只能达到 二级Runge-Kutta方法的精度不超过二阶! 为获得更高的精度,应该如何进一步推广? ) ... , ( ... ... ) , ( ) , ( ) , ( ] ... [ 1 1 2 2 1 1 2 32 1 31 3 3 1 21 2 2 1 2 2 1 1 1 - - + + + + + + = + + + = + + = = + + + + = m m m m m m i m i i i i i i m m i i hK hK hK y h x f K hK hK y h x f K hK y h x f K y x f K K K K h y y b b b a b b a b a l l l 其中?i ( i = 1, …, m ),?i ( i = 2, …, m ) 和 ?ij ( i = 2, …, m; j = 1, …, i?1 ) 均为待定系数,确定这些系数的步骤与前面相似。 n级显式Runge-Kutta公式 三级Runge-Kutta方法 取n=3,得 记 三级Runge-Kutta方法的精度 则 又由于 因此要使局部截断误差为 ,必须 三阶Kutta方法 取 得 三阶Heun方法 取 得 三级Runge-Kutta方法的精度不超过三阶 完全类似于二级Runge-Kutta方法的分析 三级Runge-Kutta方法的局部截断误差只能达到 将 和 都展开到 项,易证 四级R-K方法 取n=4,得 其中, 局部截断误差为O(h5) 四阶经典龙格-库塔法 /* Classical Runge-Kutta Method */ : 例3 用四阶R-K方法求初值问题 取步长 ,求 。 解:取 ,计算四个组成部分 将其代入 得 即使用四阶R-K方法在 处的估计值为 。 注:该问题有一个明显的解析解 易知 截断误差为 附注: 二阶Runge-Kutta方法的局部截断误差 只能达到 五阶Runge-Kutta方法的局部截断误差 只能达到 四阶Runge-Kutta方法的局部截断误差 只能达到 三阶Runge-Kutta方法的局部截断误差 只能达到 注: ? 龙格-库塔法的主要运算在于计算 的值,即计算 的值。Butcher 于1965年给出了计算量与可达到的最高精度阶数的关系: 7 5 3 可达到的最高精度 6 4 2 每步须算Ki 的个数 ? 由于龙格-库塔法的导出基于泰勒展开,故精 太好的解,最好采用低阶算法而将步长h 取小。 度主要受解函数的光滑性影响。对于光滑性不 §4 单步方法的收敛性与稳定性 /* Convergency and Stability */ ? 收敛性 /* Conv
文档评论(0)