《第3章 连续系统的数字仿真讲义教材》由会员分享,可在线阅读,更多相关《第3章 连续系统的数字仿真讲义教材(96页珍藏版)》请在金锄头文库上搜索。
1、1,计算机仿真与建模,廖胜辉 TEL: 13875857790 EMAIL: ,2,现代仿真技术与应用 章节安排,第一章 概述 第二章 系统的数学模型 第三章 连续系统的数字仿真 第四章 离散事件系统仿真 第六章 分布式交互仿真 第七章 可视化、多媒体、虚拟现实仿真,3,现代仿真技术与应用 第三章连续系统的数字仿真,3.1 数值积分法 3.2 离散相似法 3.5 控制系统仿真工具SIMULINK,5,数值积分法,离散相似法,间断非线性系统仿真算法,分布参数的仿真算法,工程领域常见的连续系统的仿真算法:,现代仿真技术与应用 第三章连续系统的数字仿真,6,数值积分:是数值分析的基本问题,是微分方程
2、初值问题的一种近似解法,其基本思想是将一阶常微分方程(或方程组)转化为差分方程(即微分方程的离散形式,便于编程实现),从而求其数值解; 系统仿真:在给定初始条件可用数值积分法求解定常连续系统在一定输入作用下的变化过程。,现代仿真技术与应用 第三章连续系统的数字仿真,3.1 数值积分法,7,为t0, t内 f 下方的阴影面积,现代仿真技术与应用 第三章连续系统的数字仿真,3.1 数值积分法,基本原理:,分类:,(3-1),已知某系统的一阶向量微分方程为:,8,数值积分法基本概念,现代仿真技术与应用 第三章连续系统的数字仿真,计算yn+1只需用到yn的值,计算yn+1需用到yn ,yn-1 , y
3、n-2 , yn-k的值,对不能自行启动的方法,可分两步走,第一步预估,第二步校正;因此精度高,但不适用于实时仿真。,计算yn+1时所用数据均已知,计算yn+1时需用到待求量yn+1,因此不能自启动,常用的数值积分法:欧拉法、梯形法、四阶龙格-库塔法、亚当姆斯法,9,3.1.1 常用的积分法-欧拉法,一阶微分方程为:,对式(3-1)在tk,tk+!区间上积分,现代仿真技术与应用 第三章连续系统的数字仿真,(3-3),(3-4),(3-1),于是可以得到微分方程的数值解为:,(3-6),矩形近似及误差,10,这种方法的几何意义:,取k=0,1,2,N,从t0开始,逐点递推求解t1时的y1, t2
4、时的y2,直至tn时的yn,称之为欧拉递推公式。,现代仿真技术与应用 第三章连续系统的数字仿真,(3-6),最简单的数值积分法,只计算一次f(t, y)函数值,计算量小,但精度很低,不实用,常用来说明基本概念。当h很小时,造成的误差是允许的。该算法具有一阶精度。,就是把f(t,y)在区间tk,tk+1内的曲边面积用矩形面积近似代替。,3.1.1 常用的积分法-欧拉法,单步法、显示公式、能自启动。,11,3.1.1 常用的积分法梯形法(改进欧拉法),对式(3-1)在tk,tk+!区间上积分,用梯形面积近似(3-3)的积分项,有:,现代仿真技术与应用 第三章连续系统的数字仿真,(3-3),梯形近似
5、及误差,(3-7),通过欧拉法计算出y(tk+1)的近似值: 代入原微分方程,计算fk+1的近似值 ,利用梯形公式求出修正后的yk+1,得到改进后的欧拉公式为:,12,几何意义:,现代仿真技术与应用 第三章连续系统的数字仿真,计算两次f(t, y)函数值,计算量增加,但精度有所提高。,就是把f(t,y)在区间tk,tk+1内的曲边面积用梯形面积近似代替。,改进的欧拉法,隐式公式、不能自启动、预估校正法。,13,3.1.1 常用的积分法梯形法,现代仿真技术与应用 第三章连续系统的数字仿真,预估-校正法程序框图,14,欧拉法,梯形法,回顾,现代仿真技术与应用 第三章连续系统的数字仿真,最简单的数值
6、积分法,只计算一次f(t, y)函数值,计算量小,但精度很低,不实用,常用来说明基本概念。当h很小时,造成的误差是允许的。该算法具有一阶精度。,单步法、显示公式、能自启动。,计算两次f(t, y)函数值,计算量增加,但精度有所提高。,隐式公式、不能自启动、预估校正法。,数值积分法:,15,基本思想:在积分区间tn, tn+1内多预估几个点的函数值,然后用其线性组合来代替函数的各阶导数,再与泰勒级数展开式中的各项对比确定其中的系数,设y(t)为微分方程的解,将其在tk附近以h为变量展成泰勒级数:,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.1 常用的积分法龙格库塔法,(3-9),(3-
7、10),r为精度阶次(使用k值的个数), , , wi为待定系数,由精度确定,16,当r=1时,,当r=2时,取,3.1.1 常用的积分法龙格库塔法,现代仿真技术与应用 第三章连续系统的数字仿真,数值解与欧拉递推公式一致。,数值解预估-校正公式一致。,17,r=3时,取,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.1 常用的积分法龙格库塔法,18,r=4时,取,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.1 常用的积分法龙格库塔法,19,各阶龙格库塔法的精度,理论上可以构造任意阶数的龙格库塔法 阶数越高,精度越高,计算量越大 精度的阶数与计算函数值 f 的次数之间并非等量增
8、加的关系 对于大量的实际问题,四阶方法已可满足精度求,现代仿真技术与应用 第三章连续系统的数字仿真,20,变步长方法,误差式通常为,现代仿真技术与应用 第三章连续系统的数字仿真,当估计误差en大于最大允许误差emax时,步长减半并重新积分再估计误差;若步长小于步长下限hmin,则不再减半,以免增加仿真时间和舍入误差; 当估计误差en小于最小允许误差emin时,步长加倍并重新积分再估计误差;若步长大于步长上限hmin,则不再加倍,以免增加截断误差、减小数值稳定性。,21,算法误差,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.3 算法误差和稳定性问题,截断误差,舍入误差,截去高阶无穷小项
9、引入的误差称为r阶精度,泰勒级数展开式,因计算机字长有限,数字不能完全精确表示而产生的误差,与步长、数字系统、运算次序以及计算f(t, y)子程序的精度等多种因素有关,22,算法稳定性问题,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.3 算法误差和稳定性问题,测试方程:,代入测试方程有:,欧拉法:,23,算法稳定性问题,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.3 算法误差和稳定性问题,24,各阶龙格库塔法的稳定域,将检验方程代入泰勒级数展开式可得稳定条件 稳定条件与计算步长和系统特征根都有关系,特征根越大,计算步长越小,现代仿真技术与应用 第三章连续系统的数字仿真,25
10、,计算步长的选择,步长过大会增加截断误差,甚至出现不稳定现象;步长过小会增加计算步数,从而增大舍入误差; 步长变化对误差的影响与系统动态响应特性有关,响应越快对步长变化越敏感。,现代仿真技术与应用 第三章连续系统的数字仿真,有些仿真可考虑采用变步长,经验方法一:,经验方法二:,26,已知常微分方程组,现代仿真技术与应用 第三章连续系统的数字仿真,3.1.5 病态系统(刚性(stiff)系统)的仿真方法,定义:,(3-34),则有系统矩阵 (雅可比矩阵(Jacobi matrix),若 的特征值均具有负实部,那么当:,式(3-34)微分方程组称为刚性方程,也称病态方程,其描述的线性或非线性系统称
11、为病态系统。,(3-35),27,前面介绍的数值积分法进行求解时,仿真步长应该由系统的最小时间常数(相当于是最大特征值实部的倒数)决定,而仿真时间由系统的最大时间常数(相当于最小特征值实部的倒数)决定; 由定义可知,病态系统的时间常数( 1/ )差别很大; 那么对于病态系统,如果采用前面介绍的数值积分法进行求解,计算步长只能取得很小,系统的过渡过程又很长,将导致仿真计算量大、舍入误差累积大、数值解失真等; 目前已提出的刚性方程数值积分法有吉尔(Gear)法、特雷尔(Trernor)法、半隐式龙格库塔法等,其中吉尔法被公认为是十分有效的方法。,现代仿真技术与应用 第三章连续系统的数字仿真,3.1
12、.5 病态系统(刚性(stiff)系统)的仿真方法,28,吉尔法为隐式线性多步法,其形式为:,当k=1时,为隐式欧拉法:,3.1.5 病态系统的仿真方法吉尔法,现代仿真技术与应用 第三章连续系统的数字仿真,(3-36),为待定系数,1-6阶吉尔法的系数如下表:,29,吉尔法的Stiff稳定,一个方法如果在区域R1(Re(h)D)中是绝对稳定的,而在区域R2(D Re(h) ,|Im(h)|)中是精确的,那么称这种方法是stiff稳定的。,现代仿真技术与应用 第三章连续系统的数字仿真,隐式吉尔多步法是stiff稳定的,但不能自行启动,且变步长困难。其刚性稳定区域如右图所示:,30,定义Z向量,现
13、代仿真技术与应用 第三章连续系统的数字仿真,吉尔法的矢量形式,通过y的拟合多项式确定Z与Y之间的变换阵,以前一步y的各阶导数代替前几步的数据ym-1,ym-2,于是有单步多值法递推公式。,P为Pascal矩阵;L为吉尔法系数,由下表所示。,31,吉尔单步多值法L向量值,现代仿真技术与应用 第三章连续系统的数字仿真,对于非线性病态系统,采用吉尔法通常比一般变步长法节省大量仿真时间。 系统病态程度越高,非线性越强,吉尔法优越性越明显; 根据吉尔法编制的程序是通用的,既可以处理病态系统,也可以有效的仿真非病态系统,因此应用广泛。,32,3.2 离散相似法,现代仿真技术与应用 第三章连续系统的数字仿真
14、,所谓离散相似法,就是将一个连续系统进行离散化处理,从而得到等价的系统离散模型,此种方法按系统的动态结构图建立仿真模型。 计算过程中,按各典型环节离散相似模型,根据环节的输入来计算环节的输出。,33,3.2 .2典型环节的离散相似模型,现代仿真技术与应用 第三章连续系统的数字仿真,1) 积分环节,传递函数:,状态表达式:,离散状态表达式:,P35,A=0,B=K,34,3.2 .2典型环节的离散相似模型,现代仿真技术与应用 第三章连续系统的数字仿真,2) 比例-积分环节,传递函数:,状态表达式:,离散状态表达式:,P35,A=0,B=K,35,3.2 .2典型环节的离散相似模型,现代仿真技术与
15、应用 第三章连续系统的数字仿真,3) 惯性环节,传递函数:,状态表达式:,离散状态表达式:,P35,A=-a,B=K,36,3.2 .2典型环节的离散相似模型,现代仿真技术与应用 第三章连续系统的数字仿真,4) 比例-惯性环节,传递函数:,状态表达式:,离散状态表达式:,P35,A=-a, B=b-ak,37,3.2 .2典型环节的离散相似模型,现代仿真技术与应用 第三章连续系统的数字仿真,5) 二阶震荡环节,传递函数:,状态表达式: ( 可控标准型),u,+,x1 x2,38,算法误差和稳定性问题,现代仿真技术与应用 第三章连续系统的数字仿真,截断误差:截去高阶无穷小项引入的误差称为r阶精度; 舍入误差:因计算机字长有限,数字不能完全精确表示而产生的误差;,回顾,欧拉法:单步法、显示公式、能自启动,计算量小,精度低。 梯形法:隐式公式、不能自启动、预估校正法,计算量增加,但精度有所提高; 龙格库塔法:理论上可以构造任意阶数的龙格库塔法,阶数越高,精度越高,计算量越大;,数值积分法,仿真步长的选择,39,现代仿真技术与应用 第三章连续系统的数字仿真,回顾,病态系统的仿真方法,目前已提出的刚性方程数值积分法有吉尔(Gear)法、特雷尔(Trernor)法、半隐式龙格库塔法等,其中吉