控制系统仿真及MATLAB语言-连续系统的离散化方法.ppt





《控制系统仿真及MATLAB语言-连续系统的离散化方法.ppt》由会员分享,可在线阅读,更多相关《控制系统仿真及MATLAB语言-连续系统的离散化方法.ppt(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章第四章 连续系统的离散化方法连续系统的离散化方法4.1 常微分方程的数值解法一一.数值求解的基本概念数值求解的基本概念设微分方程为则求解方程中函数x(t)问题的常微分方程初值问题所谓数值求解就是要在时间区间a,b中取若干离散点 求出微分方程在这些时刻的近似值取前两项近似:这种方法的几何意义就是把f(t,x)在区间tk,tk+1内的曲边面积用矩形面积近似代替。计算简单,计算量小,而且可以自启动。当h很小时,造成的误差是允许的。该算法具有一阶精度。取k=0,1,2,N,从t0开始,逐点递推求解t1时的y1,t2时的y2,直至tn时的yn,称之为欧拉递推公式。矩形面积矩形面积1.欧拉法欧拉法
2、欧拉法的特点:导出简单,几何意导出简单,几何意义明显,便于理解,能说明构造数义明显,便于理解,能说明构造数值解法一般计算公式的基本思想值解法一般计算公式的基本思想。通常用它来说明有关的基本概念。例例 设系统方程为 用Euler法求其数值解(取步长 ,)递推公式为则已知方程的解析解为 精确解和解析解作比较:w误差在 数量级,精度较差。t00.10.20.30.40.51.0精确解10.909 0.833 0.769 0.666 0.625 0.5数值解10.90.819 0.752 0.659 0.6470.4632.龙格库塔法龙格库塔法 基本思想:基本思想:取Taylor级数展开式前三项近似求
3、解,并利用线性组合代替导数的求解。既可避免计算高阶导数,又可提高数值积分的精度,这就是Runge-Kutta法的基本思想。2.龙格库塔法龙格库塔法r为精度阶次,为精度阶次,ai为待定系数,由精度确定;为待定系数,由精度确定;ki用下用下式表示式表示线性组合线性组合等各阶导数不易计算,用下式中等各阶导数不易计算,用下式中kiki的线性组合代替的线性组合代替1)当r=1时:与Taloy展开式相比较,可得a1=1,则上式成为欧拉递推公式2)当r=2时:将 在点 展成Taylor级数与台劳公式的二阶展开近似公式相比,可得以下关系:与台劳公式的二阶展开近似公式相比,可得以下关系:三个方程,四个未知数,解
4、不唯一三个方程,四个未知数,解不唯一各个系数的几种取法各个系数的几种取法见书上。见书上。3)r=4时,四阶龙格库塔公式时,四阶龙格库塔公式-最常用:最常用:仿真中遇到的大多数工程实际问题,四阶龙格库塔法以能满足精度要求,其截断误差o(h5)与h5同数量级。该法可以自启动。4)、状、状态态空空间间四四阶龙阶龙格格-库库塔塔递递推式推式 若若单输单输入入单输单输出系出系统统的状的状态态空空间间表达式表达式为为:在仿真中,在仿真中,对对于于n阶阶系系统统,状,状态态方程可以写成一方程可以写成一阶阶微分方程微分方程 根据四根据四阶龙阶龙格格-库库塔公式塔公式,有有T=tT=tk k时刻的时刻的x xi
5、 i值值T=tT=tk k+h+h时刻的时刻的x xi i值值 另另 状状态态方程的四方程的四阶龙阶龙格格-库库塔公式如下:塔公式如下:RK法的特点:法的特点:1 需要存储的数据少,占用的存储空间少;2 只需知道初值,即可启动递推公式进行计 算,可自启动;3 容易实现变步长运算。4 每积分一步需要计算多次右函数,计算量 大。基于龙格库塔法,MATLAB提供了求常微分方程数值解的函数,一般调用格式为:t,x=ode23(xfun,t0,tf,x0)t,x=ode45(xfun,t0,tf,x0)常微分方常微分方程函数名程函数名起始起始时间时间终止终止时间时间初始状初始状态向量态向量输入输入输出输
6、出4/54/5阶龙格阶龙格-库塔算法库塔算法2/32/3阶龙格阶龙格-库塔算法库塔算法3.3.常微分方程常微分方程MatlabMatlab求解求解解解:令令 y1=x,y2=x1、建立、建立M-文件文件vdp.m如下:如下:function dy=vdp(t,y)dy=zeros(2,1);dy(1)=y(2);dy(2)=2*(1-y(1)2)*y(2)-y(1);2、取、取t0=0,tf=20,输入命令:,输入命令:T,Y=ode45(vdp,0 10,1;1);plot(T,Y(:,1),-,T,YT,Y(:,2)3、结果、结果解解 1、建立、建立m-文件文件rigid.m如下:如下:f
7、unction dy=rigid(t,y)dy=zeros(3,1);dy(1)=y(2)*y(3);dy(2)=-y(1)*y(3);dy(3)=-0.51*y(1)*y(2);2、取取t0=0,tf=12,输入命令:,输入命令:T,Y=ode45(rigid,0 12,0 1 1);plot(T,Y(:,1),-,T,Y(:,2),*,T,Y(:,3),+)3、结果如图、结果如图图中,y1的图形为实线,y2的图形为“*”线,y3的图形为“+”线.4.2 数值算法的稳定性及求解原则1.1.数值算法的稳定性数值算法的稳定性 特征根在特征根在s s平面的左半平面,系统稳定。平面的左半平面,系统稳
8、定。(1)欧拉法:稳定:(2)梯形法:恒稳2.2.数值算法的选择原则数值算法的选择原则 Matlab提供了微分方程数值求解的一般方法,作为仿真算法的使用者,可不必考虑算法具体实现,而应关心各种方法在使用中会出现的问题,以及如何在仿真中恰当的选用这些方法.一般,选用数值算法从以下几个方面考虑:(1)精度受算法和h影响截断误差+舍入误差=累计误差(2)计算速度受算法和h影响算法简单,速度就快些。(3)稳定性 受h影响,一般 h(2-3)系统最小时间系统最小时间4.3 数值算法中的数值算法中的“病态病态”问题问题 1“病态”常微分方程例:其中采用四阶龙格库塔法h=0.01时,计算时间长时,计算时间长
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制系统 仿真 MATLAB 语言 连续 系统 离散 方法

限制150内