[t,x]=ode45(@dyna,0:0.01:50,zeros(4,1));
plot(t,x(:,2),'b');
function xp=dyna(t,x,Cxh)
f=4890;w=2.2143;
m1=1165.992;mf=4866;mz=2433;
rou=1025;
Kh=80000;g=9.8;
Cxh=167.8395;A=pi;
Ch=10000;
上面全是常数哈哈哈不管就好了
反正就是把二阶的转化一阶的方程
xp=zeros(4,1);
xp(1)=x(2);
xp(2)=(f*cos(w*t)-Cxh*x(2)-rou*g*A*x(1)+Ch*(x(4)-x(2))+Kh*(x(3)-x(1)))/(mf+m1);
xp(3)=x(4);
xp(4)=-(Ch*(x(4)-x(2))+Kh*(x(3)-x(1)))/mz;
end