微分方程几种求解方法.docVIP

  • 11
  • 0
  • 约1.3千字
  • 约 5页
  • 2016-10-06 发布于重庆
  • 举报
微分方程几种求解方法

第五章 控制系统仿真 §5.2 微分方程求解方法 以一个自由振动系统实例为例进行讨论。 如下图1所示弹簧-阻尼系统,参数如下: M=5 kg, b=1 N.s/m, k=2 N/m, F=1N x b M F k 图1 弹簧-阻尼系统 假设初始条件为:时,将m拉向右方,忽略小车的摩擦阻力, 求系统的响应。 )用常微分方程的数值求解函数求解包括ode45、ode23、ode113、ode15s、ode23s等。 wffc1.m myfun1.m 一、常微分方程的数值求解函数ode45求解 解:系统方程为 这是一个单变量二阶常微分方程。 将上式写成一个一阶方程组的形式,这是函数ode45调用规定的格式。 令: (位移) (速度) 上式可表示成: 下面就可以进行程序的编制。 %写出函数文件myfun1.m function xdot=myfun1(t,x) xdot=[x(2);1-10*x(2)-20*x(1)]; % 主程序wffc1.m t=[0 30]; x0=[0;0]; [tt,xx]=ode45(@myfun1,t,x0); plot(tt,yy(:,1),:b,tt,yy(:,2),-r) legend(位移,速度) title(微分方程的解 x(t)) 二、方法2: %用传递函数编程求解ksys1.m num=1; den=[5 1 2]; %printsys(num,den) %t=0:0.1:10; sys=tf(num,den); figure(1) step(sys) figure(2) impulse(sys) figure(3) t=[0:0.1:10]; ramp=t; lsim(sys,ramp,t); figure(4) tt=size(t); noise=rand(tt,1); lsim(sys,noise,t) figure(5) yy=0.1*t.^2; lsim(num,den,yy,t) w=logspace(-1,1,100); [m p]=bode(num,den,w); figure(6) subplot(211);semilogx(w,20*log10(m)); grid on subplot(212);semilogx(w,p) grid on [gm,pm,wpc,wgc]=margin(sys) figure(7) margin(sys) figure(8) nyquist(sys) figure(9) nichols(sys) 方法3:

文档评论(0)

1亿VIP精品文档

相关文档