第十三讲:微分方程数值解2.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* §5 线性多步法 /* Multistep Method */ 用若干节点处的 y 及 y’ 值的线性组合来近似y(xi+1)。 ) ... ( ... 1 1 0 1 1 1 1 0 1 k i k i i i k i k i i i f f f f h y y y y - - + - - - + + + + + + + + + = b b b b a a a 其通式可写为: 当 ??1?0 时,为隐式公式; ??1=0 则为显式公式。 ? 基于数值积分的构造法 将 在 上积分,得到 只要近似地算出右边的积分 ,则可通过 近似y(xi+1) 。而选用不同近似式 Ik,可得到不同的计算公式。 §5 Multistep Method ? 亚当姆斯显式公式 /* Adams explicit formulae */ 利用k+1 个节点上的被积函数值 构造 k 阶牛顿后插多项式 , 有 Newton 插值余项 /* 显式计算公式 */ 局部截断误差为: 例:k=1 时有 §5 Multistep Method 注:一般有 ,其中Bk 与yi+1 计算公式中 fi , …, fi?k 各项的系数均可查表得到 。 1 0 1 2 3 k fi fi?1 fi?2 fi?3 … Bk … … … … … … … 常用的是 k = 3 的4阶阿达姆斯显式公式 §5 Multistep Method ?阿达姆斯隐式公式 /* Adams implicit formulae */ 利用k+1 个节点上的被积函数值 fi+1 , fi , …, fi?k+1 构造 k 阶牛顿前插多项式。与显式多项式完全类似地可得到一系列隐式公式,并有 ,其中 与 fi+1 , fi , …, fi?k+1 的系数亦可查表得到。 ~ ~ 1 0 1 2 3 k fi+1 fi fi?1 fi?2 … Bk … … … … … … … ~ 常用的是 k = 3 的4阶阿达姆斯隐式公式 小于Bk 较同阶显式稳定 §5 Multistep Method ?阿达姆斯预估-校正方法 /* Adams predictor-corrector system */ Step 1: 用Runge-Kutta 法计算前 k 个初值; Step 2: 用Adams 显式计算预估值; Step 3: 用同阶Adams 隐式计算校正值。 注意:三步所用公式的精度必须相同。通常用经典Runge-Kutta 法配合4阶Adams 公式。 Hey! Look at the local truncation error of the explicit and implicit Adams methods: and Don’t you think there’s something you can do? 4阶Adams隐式公式的截断误差为 4阶Adams显式公式的截断误差为 当 h 充分小时,可近似认为?i ? ?i ,则: Predicted value pi+1 Modified value mi+1 Corrected value ci+1 Modified final value yi+1 外推技术 /* extrapolation */ §5 Multistep Method Adams 4th-Order predictor-corrector Algorithm To approximate the the solution of the initial-value problem At (N+1) equally spaced numbers in the interval [a, b]. Input: endpoints a, b; integer N; initial value y0 . Output: approximation y at the (N+1) values of x. Step 1 Set h = (b ? a) / N ; x0 = a; y0 =

文档评论(0)

allap + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档