统仿真技术 第2章 连续系统仿真建模方法学 剡昌锋刘军 兰州理工大学机电工程学院 6:1369316141(剡)13893121598(刘) Emailchangt_yan@163.com Ljgabe@sohu.com
系统仿真技术 第2章 经典的连续系统仿真建模方法学 剡昌锋 刘军 兰州理工大学机电工程学院 Tel:13369316141(剡)13893121598(刘) E_mail: changf_yan@163.com Lj_gabe@sohu.com
21离散化原理及要求 问题:数字计算机在数值及时间上的离散性 被仿真系统数值及时间上的连续性? 令连续系统的仿真,从本质上:对原连续系统 从时间、数值两个方面对原系统进行离散化 并选择合适的数值计算方法来近似积分运算 令离散模型≈原连续模型?
2.1 离散化原理及要求 ❖ 问题:数字计算机在数值及时间上的离散性- ---被仿真系统数值及时间上的连续性? ❖ 连续系统的仿真,从本质上:对原连续系统 从时间、数值两个方面对原系统进行离散化 并选择合适的数值计算方法来近似积分运算 ❖ 离散模型≈原连续模型?
相似原理 设系统模型为:y=f(,),其中u()为输 入变量,y()为系统变量;令仿真时间间隔 为h,离散化后的输入变量为(tn),系统变 量为n),其中tn表示tnh。 令如果i(n)≈u(tn),且(tn)≈y(tn) 即e(n)=ai(n)-u(n)≈0,c,(,)=(,)-y()≈0 令(对所有n=0,1,2,) 令则可认为两模型等价
相似原理 ❖ 设系统模型为: ,其中u(t)为输 入变量,y(t)为系统变量;令仿真时间间隔 为h,离散化后的输入变量为 ,系统变 量为 ,其中 表示t=nh。 ❖ 如果 , 且 ❖ 即 , ❖ (对所有n=0,1,2,…) ❖ 则可认为两模型等价。 y = f (y ,u,t ) ˆ( ) n u t ˆ( ) n y t n t ˆ( ) ( ) n n u t u t ˆ( ) ( ) n n y t y t eu (t n ) = u ˆ(t n ) − u(t n ) 0 ey (t n ) = y ˆ(t n ) − y(t n ) 0
() 原连续模型y=f(y,u,t) (tn)≈0 仿真模型j=f(,a,tn) u(t vtn) 图21相似原理
u(t) h y(t) - + 图2.1 相似原理 原连续模型 y = f (y ,u,t ) 仿真模型 ˆ ( ˆ , ˆ , ) n y = f y u t ˆ( ) n y t ey (t n ) 0 ˆ( ) n u t
对仿真建模方法三个基本要求 冷(1)稳定性:若原连续系统是稳定的,则离散化 后得到的仿真模型也应是稳定的。 (2)准确性:有不同的准确性评价准则,最基本 的准则是: 绝对误差准则:、()=(n)-y()≤6 相对误差准则:k,(,)=5n)156 j(tn)-y(tn )I 令其中δ规定精度的误差量
对仿真建模方法三个基本要求 ❖ (1)稳定性:若原连续系统是稳定的,则离散化 后得到的仿真模型也应是稳定的。 ❖ (2)准确性:有不同的准确性评价准则,最基本 的准则是: ❖ 绝对误差准则: ❖ 相对误差准则: ❖ 其中 规定精度的误差量。 ey (t n ) = y ˆ(t n ) − y(t n ) − = ˆ( ) ˆ( ) ( ) ( ) n n n y n y t y t y t e t
对仿真建模方法三个基本要求(续) 令3)快速性:若第n步计算对应的系统时间间 隔为h=m-1计算机由计算需要的时间为Tm, 若Tm=hn称为实时仿真,Tnhn称为亚实时仿真,对应于离 线仿真
对仿真建模方法三个基本要求(续) ❖ 3)快速性:若第n步计算对应的系统时间间 隔为 计算机由计算需要的时间为Tn, 若 Tn=hn 称为实时仿真,Tnhn称为超实 时仿真 Tnhn 称为亚实时仿真,对应于离 线仿真 , n n 1 n h = t − t +
数值积分算法 对y=f(y,u,t),已知系统变量y的初始条 件y(t0)=y,要求y随时间变化的过程一一初值问 题 今计算过程:由初始点y(t)=y的f(t0,y) ()=yo+ f(t, y)dt 欧拉法 y1=y(t1)≡y+△t·f(to,y) 冷对任意时刻tn+1yn=y(n)三yn+(tn-n)f(n,yn) 截断误差正比于h f(t, y f(t
数值积分算法 ❖ 对 ,已知系统变量y的初始条 件 ,要求y随时间变化的过程――初值问 题 ❖ 计算过程:由初始点 的 ❖ 欧拉法 ❖ 对任意时刻tn+1 ❖ 截断误差正比于 y = f (y ,u,t ) 0 0 y(t ) = y 0 0 y(t ) = y ( ) 0 0 f t ,y = + t t y t y f t y dt 0 ( ) ( , ) 0 y y t y t f t y 1 = 1 0 + 0 0 ( ) ( , ) ( ) ( ) ( ) n 1 n 1 n n 1 n n n y = y t y + t −t f t ,y + + + h 2 f(t,y) f(t0 ,yo ) t t t0 t1
数值积分算法续) 令梯形法:m=y(n)+21(nyn)+f(m,ym) 是隐函数形式。预报一一欧拉法估计初值, 校正一一用梯形法 校正 校正公式m”yn+2(n,y,)+f(m,ym 今预报公式m≡十h,f(n,yn) 反复迭代,直到满足pm-ymls 经典的数值积分法可分为两类: 单步法与多步法
数值积分算法(续) ❖ 梯形法: ❖ 是隐函数形式。预报-—欧拉法估计初值, 校正-—用梯形法校正: ❖ 校正公式 ❖ 预报公式 ❖ 反复迭代,直到满足 ❖ 经典的数值积分法可分为两类: ❖ 单步法与多步法 [ ( , ) ( , )] 2 1 ( ) n+1 = n+1 n + n n + n+1 n+1 y y t y h f t y f t y [ ( , ) ( , )] 2 1 ( ) 1 1 ( 1) 1 i n n n n n i n y y h f t y f t y + + + + + + ( , ) ( ) 1 n n n i n y y + h f t y + − + + + i n i n y y 1 1 1
22龙格库塔法 22.1龙格-库塔法基本原理 对y(n)=y(n)+"f(,y) 冷若令:n=y(n)Q,≡ n+1 f(t, y)dt ÷则有y(tn)=ym1=yn+Q 令Qn的数值求解:称作“右端函数”计算问题。 在o附近展开台劳级数,只保留h2项,则有: (1) y=y+f(to,yo)h+ 1(9+)h 2 ay dt at
2.2 龙格库塔法 ❖ 2.2.1龙格-库塔法基本原理 ❖ 对 ❖ 若令: ❖ 则有 ❖ 的数值求解:称作“右端函数”计算问题。 在 附近展开台劳级数,只保留 项,则有: (1) + + = + 1 ( ) ( ) ( , ) 1 n n t t y t n y t n f t y dt ( ) n n y y t + 1 Q ( , ) n n t t n f t y dt n n n n y(t +1 ) y +1 = y + Q Qn t 0 h 2 2 1 0 0 0 0 ( ) 2 1 ( , ) h t f dt dy y f y y f t y h t = + + +
龙格-库塔法基本原理(续) 假设这个解可以写成如下形式: V1=yo +(a,, +a,k h 今其中k1=f(oy)k2=f(0+bh,y+b2kh) 对k2式右端的函数展成台劳级数,保留h项, 可得: k2三f(t0,y)+(b1+b2k1 h 代入,则有:=男+(1)+4()+数+
龙格-库塔法基本原理(续) ❖ 假设这个解可以写成如下形式: ❖ 其中 ❖ 对 式右端的函数展成台劳级数,保留h项, 可得: ❖ 代入,则有: y1 = y0 + (a1 k1 + a2 k2 )h ( , ) 1 0 0 k = f t y k2 = f (t 0 + b1 h,y0 + b2 k1 h) k 2 h y f b k t f k f t y b t 0 ( , ) ( ) 2 0 0 1 2 1 + + ( , ) [ ( , ) ( ) ] 1 0 1 0 0 2 0 0 1 2 1 0 h y f b k t f y y a h f t y a h f t y b t + = + + +