§5.3 Runge-Kutta方法.ppt_第1页
§5.3 Runge-Kutta方法.ppt_第2页
§5.3 Runge-Kutta方法.ppt_第3页
§5.3 Runge-Kutta方法.ppt_第4页
§5.3 Runge-Kutta方法.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三节Runge Kutta方法 建立高精度的单步递推格式 在改进欧拉法和欧拉两步法预测 校正系统中 预测公式都是单步法 如果预测误差很小 则通过校正后得到的近似值误差会更小 因此需要研究高精度的单步法 5 3 1 Taylor级数法 设其解为y y x 由Taylor展开 有 其局部截断误差为 要使公式具有p阶精度 则在上式中截取前p 1项 并计算各阶导数 即得下面Taylor格式 差分方程 2 Taylor格式表面上看形式简单 但具体计算时由于高阶导数很难计算 所以往往构造很困难 因此通常不直接用Taylor格式 而借鉴其思想提出其它格式 1 由此看出 一种方法具有p阶精度 公式对不超过p次的多项式准确成立 局部截断误差为0 单步递推法的基本思想是从 xi yi 点出发 以某一斜率沿直线达到 xi 1 yi 1 点 欧拉法及其各种变形所能达到的最高精度为2阶 5 3 2Runge Kutta方法的基本思想 由积分中值定理 有 称为区间 xn xn 1 上的平均斜率 只要知道平均斜率 就可计算y xn 1 因此只要对平均斜率提供一种近似算法 则由上式可导出一种相应的求解公式 考虑用函数f x y 在若干点上的函数值的线性组合来构造近似公式 构造时要求近似公式在 xi yi 处的Taylor展开式与解y x 在xi处的Taylor展开式的前面几项重合 从而使近似公式达到所需要的阶数 既避免求偏导 又提高了计算方法精度的阶数 或者说 在这一步内多预报几个点的斜率值 然后将其加权平均作为平均斜率 则可构造出更高精度的计算格式 这就是龙格 库塔 Runge Kutta 法的基本思想 取K1 f xi y xi Euler公式取K2 f xi 1 y xi 1 向后Euler公式一阶精度取 梯形公式二阶精度 考察改进的欧拉法 可以将其改写为 斜率一定取K1 K2的平均值吗 步长一定是h吗 即第二个节点一定是xn 1吗 首先希望能确定系数 1 2 p 使得到的算法格式有2阶精度 即在的前提假设下 使得 Step1 将K2在 xi yi 点作Taylor展开 将改进的欧拉法推广为 5 3 3二阶Runge Kutta方法 Step1 将K2在 xi yi 点作Taylor展开 Step2 将K2代入第1式 得到 Step3 将yi 1与y xi 1 在xi点的泰勒展开作比较 要求 则必须有 这里有个未知数 个方程 3 2 存在无穷多个解 所有满足上式的格式统称为2阶龙格 库塔格式 注意到 就是改进的欧拉法 若取 则 此时二阶龙格 库塔法的计算公式为 此计算公式称为变形的二阶龙格 库塔法 式中为区间的中点 猜想 若能多预测几个点的斜率 再取其加权平均作为K 可望得到较高精度的数值解 从而避免求f的高阶导数 为了进一步提高精度 设除外再增加一点 并用三个点 的斜率k1 k2 k3加权平均得出平均斜率k 的近似值 这时计算格式具有形式 5 3 4三阶Runge Kutta方法 为了预报点的斜率值k3 在区间内有两个斜率值k1和k2可以用 可将k1 k2加权平均得出上的平均斜率 从而得到的预报值 于是可得 运用Taylor展开方法选择参数 可以使上述格式的局部截断误差为 即具有三阶精度 这类格式统称为三阶龙格 库塔方法 下列是其中的一种 称为库塔 Kutta 公式 5 3 5四阶Runge Kutta方法 用类似上述的处理方法 在区间上用四个点处的斜率加权平均作为平均斜率k 的近似值 构成一系列四阶龙格 库塔公式 具有四阶精度 即局部截断误差是 四阶经典的龙格 库塔格式 例用标准4阶R K公式求 的数值解 取h 0 2 并与标准解y 2ex x 1比较 解 因为f x y x y 从而可得 例分别用改进的欧拉格式和四阶龙格 库塔格式解初值问题 取步长h 0 2 节点改进欧拉法四阶龙格 库塔法准确解01110 21 1866671 1832291 1832160 41 3483121 3416671 3416410 61 4937041 4832811 4832400 81 6278611 6125141 61245211 7542051 7321421 732051 注 准确解 其中Kj为y y x 在xi ajh 0 aj 1 处的斜率预测值 aj bjs cj为特定常数 龙格 库塔方法的推导基于Taylor展开方法 因而它要求所求的解具有较好的光滑性 如果解的光滑性差 那么 使用四阶龙格 库塔方法求得的数值解 其精度可能反而不如改进的欧拉方法 在实际计算时 应当针对问题的具体特点选择合适的算法 选择步长时要考虑两个问题 1 如何衡量和检验计算结果的精度 2 如何根据所获得的精度处理步长 5 3 6变步长的Runge Kutta方法 在微分方程的数值解中 选择适当的步长是非常重要的 单从每一步看 步长越小 截断误差就越小 但随着步长的缩小 在一定的求解区间内所要完成的步数就增加了 这样会引起计算量的增大 并且会引起舍入误差的大量积累与传播 因此微分方程数值解法也有选择步长的问题 以经典的四阶龙格 库塔法为例 从节点xi出发 先以h为步长求出一个近似值 记为 由于局部截断误差为 故有 当h值不大时 式中的系数c可近似地看作为常数 然后将步长折半 即以为步长 从节点xi出发 跨两步到节点xi 1 再求得一个近似值 每跨一步的截断误差是 因此有 这样 由此可得 这表明以作为的近似值 其误差可用步长折半前后两次计算结果的偏差 来判断所选步长是否适当 当要求的数值精度为 时 1 如果 反复将步长折

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论