资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,本章将给出动力学系统仿真算法的设计思想和分析方法,并介绍由这些思想得到的一些常用仿真算法。根据实际问题的需要,灵活应用本章给出的常用算法的构造思想,将它们适当的组合,可构造出适宜的算法,实现对复杂动力学系统有效的数字仿真。,在工程领域中,连续系统是最常见的系统,其仿真方法是系统仿真技术中最根本、最常用和最成熟的。进行数字仿真首先要建立被仿真系统的数学模型,并将此模型转换成计算机可接受的、与原模型等价的仿真模型,然后编制仿真程序,使模型在计算机上运转。,计算机仿真,11/16/2024,1,第6章 系统时间响应及其仿真,仿真算法,系统仿真MATLAB的函数,采样控制系统仿真,11/16/2024,2,引言:,对象与工具的矛盾,连续系统,数字计算机,被仿真系统的数值及时间均具有连续性,数字计算机的数值及时间均具有离散性,对象与工具的矛盾,前者如何用后者来实现?,如何保证离散模型的计算结果从原理上确实能代表原系统的行为,这是连续系统数字仿真首先必须解决的问题。,相似原理,如何将连续系统的数字模型转换成计算机可接受的等价仿真模型,采用何种方法在计算机上求解此模型,这是连续系统数字仿真算法要解决的问题。,11/16/2024,3,相似原理,原系统模型,的,一般形式:,离散化后:,对所有k0,1,2,,假设有,可认为两模型等价称为相似原理。,注意:,要保证两模型完全等价是不可能的。模型等价的精度取决于计算机字长引入的舍入误差和数值积分算法。关键是数值积分算法。,数值积分算法也称为仿真建模方法。,系统仿真是利用相似理论、控制理论、计算技术等理论技术,通过综合性的模型实验来揭示原型的本质和运动规律的科学方法。,11/16/2024,4,数字仿真的本质和根本要求,用数字仿真的方法对微分方程的数值积分是通过某种数值计算方法来实现的。任何一种计算方法都只能是原积分的一种近似。因此,连续系统仿真,从本质上来说,是从时间、数值两个方面对原系统进行离散化,并选择适宜的数值计算方法来近似积分运算,由此得到离散模型来近似原连续模型。,相似原理用于仿真时,对仿真建模方法有三个根本要求:,(1)稳定性,(2)准确性,(3)快速性,对系统进行时域仿真分析,实际上就是要求解微分方程的“初值问题。,求,的解,精度问题,效率问题,存在问题,11/16/2024,5,连续系统数字仿真的两种方法,实时半实物仿真原理,基于离散相似原理建立的欧拉法、梯形法、,Adams,法,基于,Taylor,级数匹配原理建立的,Runge,Kutta,法、线性多步法,数值积分法:,离散相似法:,采样控制系统的仿真方法,数值积分法的选择与计算步长确实定,数值积分法稳定性分析,离散相似法,数值积分法,基于离散相似原理,基于泰勒级数匹配原理,连续系统近似离散化,11/16/2024,6,6.1 仿真算法,积分的几何意义:,曲线下面的面积,积分的含义:,离散和,连续和,11/16/2024,7,6.1.1 数值积分法的根本原理,描述某系统的一阶微分方程及其初值为,在微分方程理论中称为,初值问题,方程的解为,时的,连续解,为,在,差分方程,问题的关键:如何计算此积分?,数值积分法的说法是从数学观点提出的,离散相似原理的说法揭示了本质,与工程实际更接近,两者其实是统一的。,11/16/2024,8,数值积分法的根本原理,数值积分法数值解法,就是对一阶常微分方程组建立离散形式的数学模型差分方程,并求出其数值解。,关键是如何计算,Q,k,!围绕,Q,k,,产生了各种各样的数值积分法!不同的积分方法,对系统求解的精度、速度和数值稳定性等,都有不同的影响。,根据的初值y0,可逐步递推算出以后各时刻的数值yi。采用不同的递推算法,就出现了各种各样的数值积分法。,数值积分是解决初值,对f(t,y)进行近似积分,对y(t)进行数值求解的方法。,所谓数值解法,就是寻求初值问题的解,在一系列离散点的近似解数值解,结论,计算步长,:相邻两个离散点的间距称为,计算步长,或,步距,:,h,=,t,k,+1,t,k,11/16/2024,9,欧拉法,很少实用,但能说明构造数值解法一般计算公式的根本思想。,对微分方程积分,写作,图示曲线下的面积就是,y,(,t,)。,在一个步距内,有,在,t,t,0,时,,f,(,t,y,)是未知的,上式右端的积分是求不出来的。为了求此积分,把积分间隔取得足够小,使得在,t,k,与,t,k+1,之间的,f,(,t,y,)可以近似看成常数,这样便得到用矩形公式计算积分得近似公式:,当,t,=,t,2,时,,对于任意时刻,,注意:,f,(,t,k,y,k,)也就是,y,(,t,k,)的导数。,一般递推差分方程形式,11/16/2024,10,梯形法,为了提高精度,可考虑用梯形代替矩形来近似小区间的曲线积分表示的曲面面积。,梯形法近似积分形式,式中隐含有未知量,f,k+1,,梯形法是隐函数形式。,一般用欧拉法估计初值,用梯形法校正:,欧拉法估计,梯形法校正,通过反复迭代,直到满足误差,要求,梯形法实质上是采用了连续两点斜率平均值,以提高计算精度。,估计校正方法,11/16/2024,11,数值积分统一公式,这一思想被广泛应用于许多算法之中。实际应用时,可采用加权平均,即在每一步中取假设干点,分别求出其斜率,然后加不同的权。,数值积分统一公式,f,(,t,y,),y,(,t,)的导数,权值,权值,计算步距,前一步或多步计算的结果,梯形法公式,11/16/2024,12,几个概念,单步法与多步法,解初值问题的各种数值方法的共同特点是:步进式,即从最初一点或几点出发,每一步根据,y,k,一点或与前面几点,y,k-1,,,y,k-2,,来计算,y,k+1,的值,这样逐步递推。,单步法:,从,y,k,推进到,y,k+1,只需用到时刻,t,k,的数据时,称为单步法。,多步法:,从,y,k,推进到,y,k+1,需要用到时刻,t,k,以及过去时刻,t,k-1,,,t,k-2,,的数据时,称为多步法。,显式与隐式,显式:计算,y,k+1,所用到的数据均已解算出来;,隐式:在算式中隐含有未知量。,11/16/2024,13,几个概念,截断误差,分析数值积分的精度常用泰勒级数作为工具。,假设前一步的结果y(tk)是精确的,那么在数学上,可用泰勒级数求得下一步的精确解为:,表示高阶无穷小之意。,假设只取前两项之和来近似,那么由这种方法单独一步引入的附加误差局部截断误差局部离散误差,是近似值与微分方程的解之间的误差。,假设某种方法的局部截断误差为 ,那么称它有r阶精度,即该方法是r阶的。r是衡量精度的重要标志。,欧拉法只是精确解的一次近似式,因此欧拉法的截断误差为 ,欧拉法为一阶精度。,11/16/2024,14,几个概念,舍入误差,舍入误差与计算机的字长、所使用的数字系统、数的运算次序以及子程序的精确度等有关。舍入误差与计算步长成反比,步长小,计算次数就多,舍入误差就大。,由于计算机技术的开展,现代计算机仿真可以忽略舍入误差。,数值稳定性,采用数值方法解稳定的方程稳定的系统时,应保持系统稳定的特征,即要求用于计算的差分方程是稳定的。但是,由于计算机逐次计算时,初始数据的误差及计算过程的舍入误差对后面的计算结果将会产生影响误差会传播。所以带来计算数值是否稳定的问题。,所谓稳定性问题就是指误差的积累是否受到控制的问题。,一般地,如果计算结果对初始数据的误差以及计算过程的舍入误差不敏感的话,就说相应的计算方法是稳定的,否那么称之为不稳定。,11/16/2024,15,泰勒级数匹配,原理,表示高阶无 穷小,直接应用Taylor展开式构造精度较高的方法是不现实的:计算,y,(,t,)的高阶导数很困难,求复合函数的各阶偏导数往往更复杂。即使能得到解析公式,计算量也是很可观的。,如何计算,y,(,t,m+1,),的近似值,y,m+1,能否不计算高阶导数、各阶偏导数?,计算精度与精确展开式的前假设干项一致?,应用这种原理构造的 ym+1 的计算过程将不需要计算y(t)的高阶导数,或者只需计算一些比较低阶的导数,但与精确值 y(tm+1)之间的误差是h的高阶无穷小量。,用点(tm,y(tm)邻域中的假设干个点(t,y(t)上的值来构造近似值ym+1的计算公式。要求该公式在(tm,y(tm)处的Taylor展开式与精确展开式的前假设干项一致。,11/16/2024,16,龙格库塔法,根本思想,利用低阶导数构成的曲线去拟合含有高阶导数的曲线,防止计算高阶导数。,11/16/2024,17,二阶龙格库塔法,设原微分的解具有如下的形式,将K2展成泰勒一次近似式,代回、比较,,有多个解!,a1=a2,二阶RK法公式,如何选取待求的参数,a,,,b,1,和,b,2,?,11/16/2024,18,四阶RK法公式,RK4公式是4点导数的加权平均和,由于第2点、第3点以,h,/2为步长,精度较高,所以加权平均时各取2份,第1、4点各取1份。,龙格库塔法的根本思想,用,f,(,t,m,y,m,),在几个不同点的数值,加权平均代替,(,t,,,y,(,t,),,,h,)的值,,而使截断误差的阶数尽可能高。,也就是说,取不同点的斜率加权平均作为平均斜率,从而提高方法的阶数。,11/16/2024,19,龙格库塔法的一般形式,不管几阶龙格库塔法,它们的计算公式总是由两局部组成:,上一步的计算结果,y,m,及步长,h,乘以,t,m,t,m+1,中各点导数的加权平均和。,11/16/2024,20,6.1.2 数值积分方法的选择,从前面的分析可知,数值积分方法就是采用不同的差分方程来逼近原微分方程。,数值积分方法的选择与仿真的精度、速度、计算稳定性、自启动能力等密切相关,涉及因素较多,至今尚无一种确定的方法来选择最好的积分形式。这里提出一些选择时应考虑的因素。,数值积分的精度主要受三个因素的影响:截断误差、舍入误差、积累误差。其中截断误差取决于积分方法的阶次与步长。在同一种算法下(阶次相同),步长越小,截断误差越小;同样的步长下,算法阶次越高,截断误差越小。舍入误差主要取决于计算机的字长,字长越长,舍入误差越小。而积累误差对计算精度的影响,又与积分算法和数值积分计算时间的长短有关。总之,应根据精度要求,合理地选择积分方法和阶数。,(1)精度要求,11/16/2024,21,数值积分方法的选择,计算速度取决于积分步长及每一步积分所需的时间。每一步的计算时间与积分方法有关,它主要取决于计算右函数的次数。在进行数值积分中,最费时的局部是积分变量导数的计算。RK4在每一步中都要计算4次导数,费时较多;而显式 Adams 法中,每步只要求计算 1 次变量导数,计算速度相对较快。在积分方法已定的条件下,应在保证精度要求的前提下,尽量选用较大步长,以缩短积分时间。,(2)计算速度,进行数字仿真,首先应保证所选方法的数值解是稳定的,否那么计算结果就失去了意义。数值方法的选择具有较大的灵活性,应根据具体情况而定。,(3)数值计算的稳定性,11/16/2024,22,数值积分方法的选择,针对一些变量随时间变化过程中包含有变化较快及较慢的局部,采用根据给定计算误差,调整积分步长的策略,使快过程计算时步长会自动缩小,慢过程计算时步长又自动放大,可以获得较好的仿真速度和精度。,(5)变步长能力,(4)自启动能力,单步法具有自启动能力,多步法没有自启动能力,需用单步法启动后才能计算。,11/16/2024,23,步长选择原那么,(6)步长选择原那么,选择步长除了应考虑上述诸因素的影响外,一般可根据采用的积分方法的稳定半径rk来确定积分步长。为了保证计算的稳定性,步长h一般应限制在最小时间常数Tmin相当于最大特征值max的倒数的数量级,因此h的选择首先应满足,或,还可根据经验公式选取步长。如工程中采用RK4时,,h,可选为,见采样定理或,c系统开环频率特性的剪切频率穿越频率;,tr系统在
展开阅读全文