M文件和Simulink求解连续微分系统实例分析.doc_第1页
M文件和Simulink求解连续微分系统实例分析.doc_第2页
M文件和Simulink求解连续微分系统实例分析.doc_第3页
M文件和Simulink求解连续微分系统实例分析.doc_第4页
M文件和Simulink求解连续微分系统实例分析.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

M文件和Simulink求解连续微分系统实例分析Matlab自带的一个S函数源代码: D:MATLAB7toolboxsimulinkblockssfuntmpl例1. 常微分方程(Lorenze混沌系统): (1)其中。(1) m文件实现:文件名为exam1.mfunction exam1x0=0;0;1e-3;t,x=ode45(lorenzfun,0,100,x0);figure(1)plot(t,x)figure(2)plot3(x(:,1),x(:,2),x(:,3)%-function dx=lorenzfun(t,x)a=10;c=28;b=8/3;dx=zeros(3,1);dx(1)=-b*x(1)+x(2)*x(3);dx(2)=-a*x(2)+10*x(3);dx(3)=-x(1)*x(2)+c*x(2)-x(3);(2) (I)Simulink模块实现:(见lorenzblok)其中三个积分模块的初始值设置与exam1相同,仿真时长为100s。精度设置:Simulation-Configuration ParametersRelative tolerance, 1e-3改为1e-5(试试不作此修改的结果比较)。运行后双击示波器scope后可看到:或在matlab命令窗口输入画图命令: plot(tout,yout) plot3(yout(:,2),yout(:,3),yout(:,1)(II)Simulink向量模块实现:(见lorenzevector)画图语句:plot(t,x) plot3(x(:,1),x(:,2),x(:,3)(3)Simulink中S函数的实现:(见lorenzsfun 和lorenzsystem.m)例2. 常时滞微分方程: (2)(1) m文件需调用dde23来求解:(见exam2.m)function exam2sol = dde23(exam1f,1, 0.2,ones(3,1),0, 5);plot(sol.x,sol.y);title(Example 2)xlabel(time t);ylabel(y(t);%-function v = exam1f(t,y,Z)ylag1 = Z(:,1);ylag2 = Z(:,2);v = zeros(3,1);v(1) = ylag1(1);v(2) = ylag1(1) + ylag2(2);v(3) = y(2);(2)Simulink中S函数来实现:(见exam2sfun和exam2mfun.m)注:用Simulink中S函数求解时滞微分方程的核心思想在于:将时滞变量作为S函数的外部输入。画图语句为: plot(t,y)例3. 用Simulink解决一个变时滞的例子。(见logisticvariable和logisticconstant)单时滞量的Logistic一阶时滞微分方程: (3) (4)取和。对于(3)和(4)而言,若分别取和,易知当充分大时。Simulink模块框图分别如下:取相同的初始条件,运行后分别双

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论