




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
(精品word)MATLABS函数的调用实例 (精品word)MATLABS函数的调用实例 (精品word)MATLABS函数的调用实例 期末作业 1.求解微分方程,初始条件。要求交mdl文件及仿真结果的截图. 解:用Simulink连接的仿真图如下所示: 求解出的x1,x2,x3的解如下图(a)所示的仿真结果: 2。当电源电压V时,求解表达式y(t)的波形:,其中y(0)=1。要求交mdl文件及仿真结果的截图。 解:用Simulink连接的仿真图如下所示: 仿真结果如下图(b)所示: 3。使用S函数实现y=5*x+3,建立仿真模型并得出仿真结果.要求交mdl文件,S函数及仿真结果的截图。 解:用Simulink连接的仿真图如下所示: S函数的代码如下: function[sys,x0,str,ts]=mysfun3(t,x,u,flag) switchflag, case0, [sys,x0,str,ts]=mdlInitializeSizes; case1, sys=mdlDerivatives(t,x,u); case2, sys=mdlUpdate(t,x,u); case3, sys=mdlOutputs(t,x,u); case4, sys=mdlGetTimeOfNextVarHit(t,x,u); case9, sys=mdlTerminate(t,x,u); otherwise error([’Unhandledflag=',num2str(flag)]); end function[sys,x0,str,ts]=mdlInitializeSizes sizes=simsizes; sizes。NumContStates=0; sizes.NumDiscStates=0; sizes.NumOutputs=1; sizes。NumInputs=1; sizes。DirFeedthrough=1; sizes。NumSampleTimes=1; sys=simsizes(sizes); x0=[]; str=[]; ts=[00]; functionsys=mdlDerivatives(t,x,u) sys=[]; functionsys=mdlUpdate(t,x,u) sys=[]; functionsys=mdlOutputs(t,x,u) sys=5*u+3; functionsys=mdlGetTimeOfNextVarHit(t,x,u) sampleTime=1; sys=t+sampleTime; functionsys=mdlTerminate(t,x,u) sys=[]; 仿真结果如下图(c)所示: 4.已知某系统的状态方程如下: 试用S函数建立其仿真模型,并求其单位阶跃响应曲线. 解:用Simulink连接的仿真图如下所示: S函数的代码如下: function[sys,x0,str,ts]=mysfun4(t,x,u,flag) switchflag, case0, [sys,x0,str,ts]=mdlInitializeSizes; case1, sys=mdlDerivatives(t,x,u); case2, sys=mdlUpdate(t,x,u); case3, sys=mdlOutputs(t,x,u); case4, sys=mdlGetTimeOfNextVarHit(t,x,u); case9, sys=mdlTerminate(t,x,u); otherwise DAStudio。error('Simulink:blocks:unhandledFlag',num2str(flag)); end function[sys,x0,str,ts]=mdlInitializeSizes sizes=simsizes; sizes。NumContStates=3; sizes.NumDiscStates=0; sizes.NumOutputs=1; sizes。NumInputs=1; sizes.DirFeedthrough=0; sizes.NumSampleTimes=1; sys=simsizes(sizes); x0=[0;0;0]; str=[]; ts=[00]; functionsys=mdlDerivatives(t,x,u) x(1)=1*x(1)-1*x(2)-2*x(3)+u; x(2)=2*x(2)-1*x(3); x(3)=3*x(3)+u; sys=x; functionsys=mdlUpdate(t,x,u) sys=[]; functionsys=mdlOutputs(t,x,u) sys=1*x(1)-2*x(2)+3*x

17****21
实名认证
内容提供者


最近下载