常微分方程数值解法缩.ppt

  1. 1、本文档共102页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
解初值问题(6.1.1)的数值解法,其特点都是采取步进式的方法,即求解过程顺着节点排列的次序一步一步向前推进. 这种数值解法分为两大类: (1)单步法:若求yn+1 ,只需利用它前一步的 信息yn ,则称这种方法为单步法。它由 y0出发,可求得y1 ,y2, y3 … (2)多步法:若求yn+1 ,需利用它前面至少两个点的息,则称这种方法为多步法. 数值解法研究的主要问题: (1)方法的推导:采用的离散化手段,精度准则. (2)收敛性:差分方程的解是否充分逼近初值问题的解. (3)稳定性:初始数据、计算过程中每步产生的误差对以后各步解的影响,这种误差传播是否在衰减. 具体的数值方法还应考虑 (1)误差估计 (2)解的起动方法 (3)步长如何选取 (4)隐式方法的如何计算 建立数值解法的基本途径 常用的离散化方法 (1)Taylor展开 (2)化导数为差商 (3)数值积分 Euler折线法 利用Taylor展开法 将y(xn+1)在xn处Taylor展开 得差分方程 yn+1=yn+hf(xn,yn) (n=0,1,2,…) 称此方法为Euler折线法或矩形法. 利用化导数为差商的方法 得差分方程 yn+1=yn+hf(xn,yn) (n=0,1,2,…) (6.1.2) 利用数值积分的方法 在[xn,xn+1]上对y?(x)=f(x, y (x))积分得 用左矩形求积公式计算定积分有 y(xn+1)?y(xn)+hf(xn,y(xn)) 以此得差分方程 yn+1=yn+hf(xn,yn) (n=0,1,2,…) 对于梯形法 由Taylor展开式知 (6.1.6) (6.1.5)与(6.1.6)相减并利用y??(xn+1)=y ??(xn)+O(h) 梯形法法是2阶方法. 以f在不同点上的函数值的线性组合来代替yn+1 –yn,其中有一些可待定选取的待定参数,通过Taylor展开确定这些待定参数使建立的数值方法按要求达到一定的阶数,这种思想就是Runge-Kutta方法的思想. Runge-Kutta法的一般形式 其中Ri,ai,bij都是常数,a0=0,b1j=0, ( j=1,2,?,i-1) 设yn=y(xn) K1=f(xn,yn)=f(xn,y(xn)) 把K2中f在(xn,y(xn))处Taylor展开 再将K1,K2代入yn+1中, 将其与y(xn+1)泰勒展开式比较,要使y(xn+1)-yn+1=O(h3),含h0, h1, h2的项相同.即有 单步法的一般形式为 yn+1=yn+h?(xn,yn,h) (6.1.8) 其中多元函数?依赖于f. 单步法的收敛性 en= y(xn) –yn称为整体截断误差. 收敛性就是讨论当x=xn固定且h=(xn-x0)/n?0时 en ?0的问题. 定义 如果对f(x, y)满足解的存在唯一性条件的初值问题(6.1.1),差分方程 (6.1.8)的解对每个确定x?[a,b]满足 则称单步法(6.1.8)是收敛的. 定义 若增量函数?(x,y,h)使 ?(x,y,0)=f(x,y) 成立,则称单步法(6.1.8)与(6.1.1) 相容. 满足相容条件的方法至少是1阶的. 定理 设增量函数?(x,y,h)在区域a?x?b, -?y?, 0?h?h0中连续,并且对变量y满足Lipschitz条件, 即??(x,y1,h)-?(x,y2,h)??L?y1-y2? 在这个前提下单步法(6.1.8)收敛的充分必要条件 是相容性条件成立. 单步法的绝对稳定性 当步长取定后,计算中的误差随着步数的增加会不会积累到超出我们许可的范围,这就是稳定性问题. 单步法(6.1.8)应用于模型方程 y?=?y (?0) 设得到的解为yn+1=R(?h)yn 当?0时,实验方程的精确解y(x)=?e?(x-a)按模递减 的,这要求 (6.1.8)的解yn是递减的,误差也是递减 的,即要求满足?R(?h) ?1 定义 单步法(6.1.8)应用于模型方程 y?=?y(?0) ,若得到的解yn+1=R(?h)

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档