微分方程模型
1.应用matlab求解微分方程模型
2.例题
1)
dsolve('Du=1+u^2','t')
2)
y=dsolve('Dy=exp(x)','y(0)=exp(1)','x');
ezplot(y,[-10,10])
3)
y=dsolve('D2y+4*Dy+29*y=0','y(0)=0,Dy(0)=15','x');
ezplot(y,[1,4])
4)
[x,y,z]=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z', 't');
3.求常微分方程数值解
4.例题
vdp.m
function dy=vdp1000(t,y) dy=zeros(2,1);
dy(1)=y(2);
dy(2)=1000*(1-y(1)^2)*y(2)-y(1);
[T,Y]=ode15s('vdp1000',[0 6000],[2 0]); plot(T,Y(:,1),'-')
rigid.m
function dy=rigid(t,y)
dy=zeros(3,1);
dy(1)=y(2)*y(3);
dy(2)=-y(1)*y(3);
dy(3)=-0.51*y(1)*y(2);
[T,Y]=ode45(@rigid,[0 12],[0 1 1]);
plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')