控制系统仿真课件2-3.pptx

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.5 数值积分算法的基本分析2.5.1 单步法和多步法2.5.2 显式算法和隐式算法2.5.3 截断误差和舍入误差2.5.4 数值积分算法的计算稳定性2.5.5 数值积分算法的步长的选择2.5.6 误差估计与步长控制2.5.7 数值积分算法的选择原则2.5.8 数值积分算法仿真实例2.5.1 单步法和多步法上节中介绍的几种数值积分算法都有一个共同特点:在计算yk+1时只用到了yk ,而不直接用yk-1, yk-2 ,… 等项的值,即在本次计算中仅仅用到了前一次的计算结果。这类算法称为单步法。 单步法运算有如下优点:需要存储的数据量少,占用的存储空间少;只需要知道初值,就可以启动递推公式进行运算,即可以自启动;容易实现变步长运算。 与单步法相对应的还有一类数值积分算法,称为多步法。在它的计算公式中,本次计算不仅要用到前一次的计算结果,还要用到更前面的若干次结果。例如AB4法: (2.28)式中 多步法与单步法相比,欲达到相同的精度,计算工作量要少得多。因此,在相同条件下多步法比单步法要快。多步法的主要缺点是,它不是自启动方法,必须用其它方法求初始几步的值。另外,多步法不容易实现变步长运算。 2.5.2 显式算法和隐式算法如果数值积分算法在计算yk+1时所用到数据均已求出,则称其为显式算法。 如果数值积分算法的计算公式右端中隐含有未知量 yk+1,则称其为隐式算法。例如AM4法就是隐式算法 : (2.29)隐式算法也不是自启动的算法,需要用另一个显式算法估计一个初值,然后再用隐式算法进行迭代运算,这就构成了预估-校正算法。 四阶Adams预估-校正算法: (2.30)2.5.3 截断误差和舍入误差 在分析数值积分算法的精度时,通常用泰勒级数作为工具。假设前一步求得结果是准确的,即有 (2.31)则用泰勒级数求得在处的解析解为 (2.32) 不同的数值积分算法相当于在上式中取了不同项数之和而得到的近似解。 若数值积分算法的局部截断误差为 ,则方法为r阶的。 算法的阶数可以作为衡量算法精确度的一个重要标志。这种由数值积分算法单独一步引进的附加误差称为局部截断误差。它是数值积分算法给出的解与微分方程的解析解之间的差,故又称为局部离散误差。步长h越小,局部截断误差就越小。 以上的分析是在假设前一步所得结果是准确的前提下得出的,即 成立时,有 (2.33) 但在求解过程中,实际上只有当k=0 时, 才成立。而当k=1,2,3,…时, 并不成立。因而r阶算法求得的解的实际误差要大一些的。 设yk是在无舍入误差情况下由r阶方法算出的微分方程式的近似解, y(t)为微分方程的解析解, 为算法的整体截断误差,则可以证明, 。即整体截断误差比局部截断误差低一阶。 2.5.4 数值积分算法的计算稳定性1. 计算稳定性的概念 2. 欧拉法的计算稳定性 3. 龙格-库塔法的计算稳定性 4. 多步法的计算稳定性 1. 计算稳定性的概念连续系统的数字仿真,实质上就是将给定的微分方程(组)变换成差分方程(组),然后从初值开始,逐步进行递推计算。 【例2.1】 已知微分方程及初值 试比较在取不同步长时,其精确解与数值积分算法解之间的差异。 【解】该初值问题的解析解为 对应的结果曲线如图2.2(a)所示。图2.2 (a) 解析解取,分别用欧拉法和RK4法计算处的,所得结果曲线如图2.2 (b)—(g)所示。 图2.2 (c) RK4法(h=0.1) 图2.2 (b) 欧拉法(h=0.1) 图2.2 (d) 欧拉法(h=0.075) 图2.2 (e) RK4法(h=0.075) 图2.2 (g) RK4法(h=0.05) 图2.2 (f) 欧拉法(h=0.05) 当 时,欧拉法和RK4法的解均收敛到0(虽然欧拉法的解曲线是振荡收敛的)。如果只要求得到 处的 的解,则两种数值积分算法的解都可以认为是正确的。事实上,此时有 从图中可以看出 当 时,欧拉法和RK4法的解曲线均发散,数值积分算法的解是错误的。 当 时,欧拉法的解曲线仍然发散,对应的解是错误的;RK4法的解曲线单调下降并收敛到0,对应的解是正确的。 解析解 欧拉法 RK4法 为什么会出现上述情况呢?这是因为数值积分算法只是一种近似积分方法,在反复的递推计算中会引进误差(这种误差通常是由初始数据的误差及计算过程中的舍入误差产生)。如果误差的累积越来越大(见【例2.1】),将使计算出现不稳定,从而得到错误的结果。系统的稳定性与计算稳定性是两个不同的概

文档评论(0)

183****7931 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档