作业帮 > 综合 > 作业

matlab动画仿真就是范围在.1-1之间的波动动画

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/16 06:11:16
matlab动画仿真
就是范围在.1-1之间的波动动画
%方法一,符号解法,速度慢,得到的是精确解
f=dsolve('D2x+2*c*w*Dx+w^2*x=0','x(0)=1,Dx(0)=0','t');
c=linspace(0,1,50);
for i=c(1:end-1)
ezplot(subs(f,{'w','c'},{10,i}),[0 4]);
ylim([-1 1]);drawnow;
end
f=dsolve('D2x+2*1*w*Dx+w^2*x=0','x(0)=1,Dx(0)=0','t');
ezplot(subs(f,'w',10),[0 4]);
ylim([-1 1]);
%方法二,数值解法,速度快,但必须要求7以上版本(包括7)
x0=1;v0=0;w=10;
for c=linspace(0,1)
g=@(t,x)[x(2);-2*c*w*x(2)-w^2*x(1)];
[t,x]=ode45(g,[0 4],[1 0]);
plot(t,x(:,1));
ylim([-1 1]);drawnow;
end