- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算方法设计-多库文档
四 常微分方程数值解法信息安全所 付才 常微分方程数值解法 引言(常微分方程数值解法概述) 显式欧拉法、隐式欧拉法、二步欧拉法 局部截断误差与精度 改进的欧拉方法 龙格-库塔方法 收敛性与稳定性简述 一阶常微分方程组与高阶常微分方程 引言 一阶常微分方程初值问题: 引言(续) 实际生产与科研中,除少数简单情况能获得初值问题的初等解(用初等函数表示的解)外,绝大多数情况下是求不出初等解的。 有些初值问题即便有初等解,也往往由于形式过于复杂而不便处理。 实用的方法是在计算机上进行数值求解:即不直接求 y(x) 的显式解,而是在解所存在的区间上,求得一系列点 xn (n = 0, 1, 2, …) 上解的近似值。 欧拉(Euler)方法 方法一 化导数为差商的方法 代入初值问题表达式可得: 欧拉方法(续) 方法二 数值积分法 欧拉方法的几何意义 隐式欧拉法 在数值积分法推导中,积分的近似值取为积分区间长度与右端点处的函数值乘积,即: 二步欧拉法 在数值积分法推导中,积分区间宽度选为两步步长,即积分区间为:[xn-1, xn+1],则: 梯形公式欧拉法 在数值积分法中,如果用梯形公式近似计算 f (x, y) 在区间 [xn, xn+1] 上的积分,即: 例 用显式欧拉法、隐式欧拉法、梯形法求解初值问题: 例:(续) 计算结果: 局部截断误差 为了简化分析某常微分方程数值算法的误差,现假设 yn = y(xn),即在前一步 yn 准确的前提下,估计: 泰勒展开法 如果初值问题中的 f (x, y) 充分可微,则可将 y(xn+1) 在点 xn 处展开: 局部截断误差的分析 利用泰勒公式展开,比较各算法与展开式的前几项 各种欧拉法的比较 改进的欧拉法 从上述例子可以看到,梯形法由于具有二阶精度,其局部截断误差比显式欧拉法和隐式欧拉法小,但梯形法实质上是一种隐式算法 显式欧拉法是一个显式算法,虽然计算量较小,但是精度不高 综合两种方法的长处,可以先用显式欧拉法求出 y(xn+1) 的一个粗略近似值,然后用它代入梯形法公式的右端,用梯形法计算 y(xn+1) 的较为精确的近似值。 改进的欧拉法(续) 按照上述思想,可以建立如下预报-校正系统: 用改进欧拉法求上例所述的初值问题并与欧拉法和梯形法比较误差的大小。 计算结果 改进的欧拉法的意义 改进的欧拉法的几何意义 龙格-库塔(Runge-Kutta)方法 龙格-库塔方法(续) 显式欧拉法用一个点的值 k1 作为 k* 的近似值 改进的欧拉公式用二个点的值 k1 和 k2 的平均值作为 k* 近似值; 改进的欧拉法比显式欧拉法精度高; 在 [xn, xn+1] 内多预报几个点的 ki 值,并用其加权平均值作为 k* 的近似值从而构造出具有更高精度的计算公式,这就是龙格-库塔方法的基本思想。 二阶龙格-库塔方法 以 k1 和 k2 的加权平均来近似取代 k* 补充:二元泰勒展开式 二阶龙格-库塔方法(续) 四个未知变量,只有三个方程,有无穷多组解 每组解的构成的龙格-库塔方法均为二阶 三阶龙格-库塔方法 三阶龙格-库塔方法是用三个值 k1, k2, k3 的加权平均来近似取代 k* 三阶龙格-库塔方法(续) 类似二阶龙格-库塔方法的推导过程,8 个待定系数 c1, c2, c3, a2, a3, b21, b31, b32 应满足: 四阶龙格-库塔方法 类似可以推出四阶龙格-库塔公式,常用的有: 四阶龙格-库塔方法(续) 用经典四阶龙格-库塔方法求解前例的初值问题,并与改进 欧拉 法、梯形法在 x5 = 0.5 处比较其误差大小 变步长的龙格-库塔方法 变步长的龙格-库塔方法(续) 变步长的龙格-库塔方法(续) 单步法的收敛性 显式单步法可统一写成: 单步法的收敛性(续) 对于 p 阶的常微分方程数值算法,当 h ? 0, n ? ? 时,是否 yn+1 ? y(xn+1)? 单步法的收敛性(续) 单步法的收敛性(续) 收敛性定理 假设在前一步 yn 准确的前提下求得的近似值为: 单步法的稳定性 在讨论单步法收敛性时一般认为数值方法本身的计算过程是准确的,实际上并非如此: 单步法的稳定性(续) 单步法的稳定性(续) 一阶常微分方程组 四阶龙格-库塔公式 高阶微分方程的初值问题 一般通过引入新的变量,将高阶微分方程化为一阶微分方程组的方法进行求解 转化例子 作业 用二元泰勒公式展开 将 k1, k2 代入 中可得: 2 阶精度 二阶龙格-库塔方法即为改进的欧拉方法 变形的欧拉法 中 点 方 法 要使三阶龙格-库塔方法具有三阶精度,必须使其局部截断误差为 O(h4) 将 k1, k2, k3
文档评论(0)