用matlab画微分方程组图像Ds=-0.5*s*i+0.5*i-0.1*s+0.1;De=1.5*s*i-0.1*e+0.9*e*i;Di=i^2+0.1*e*i-1.6*i.都是对t求导这个微分方程组在matlab里面怎么绘图?初值的话取(0.5,0,0.5)和(0,0,1)就行.
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/28 14:48:29
![用matlab画微分方程组图像Ds=-0.5*s*i+0.5*i-0.1*s+0.1;De=1.5*s*i-0.1*e+0.9*e*i;Di=i^2+0.1*e*i-1.6*i.都是对t求导这个微分方程组在matlab里面怎么绘图?初值的话取(0.5,0,0.5)和(0,0,1)就行.](/uploads/image/z/8960073-33-3.jpg?t=%E7%94%A8matlab%E7%94%BB%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%BB%84%E5%9B%BE%E5%83%8FDs%3D-0.5%2As%2Ai%2B0.5%2Ai-0.1%2As%2B0.1%EF%BC%9BDe%3D1.5%2As%2Ai-0.1%2Ae%2B0.9%2Ae%2Ai%EF%BC%9BDi%3Di%5E2%2B0.1%2Ae%2Ai-1.6%2Ai.%E9%83%BD%E6%98%AF%E5%AF%B9t%E6%B1%82%E5%AF%BC%E8%BF%99%E4%B8%AA%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%BB%84%E5%9C%A8matlab%E9%87%8C%E9%9D%A2%E6%80%8E%E4%B9%88%E7%BB%98%E5%9B%BE%3F%E5%88%9D%E5%80%BC%E7%9A%84%E8%AF%9D%E5%8F%96%EF%BC%880.5%2C0%2C0.5%EF%BC%89%E5%92%8C%EF%BC%880%2C0%2C1%EF%BC%89%E5%B0%B1%E8%A1%8C.)
用matlab画微分方程组图像Ds=-0.5*s*i+0.5*i-0.1*s+0.1;De=1.5*s*i-0.1*e+0.9*e*i;Di=i^2+0.1*e*i-1.6*i.都是对t求导这个微分方程组在matlab里面怎么绘图?初值的话取(0.5,0,0.5)和(0,0,1)就行.
用matlab画微分方程组图像
Ds=-0.5*s*i+0.5*i-0.1*s+0.1;De=1.5*s*i-0.1*e+0.9*e*i;Di=i^2+0.1*e*i-1.6*i.
都是对t求导这个微分方程组在matlab里面怎么绘图?初值的话取(0.5,0,0.5)和(0,0,1)就行.
用matlab画微分方程组图像Ds=-0.5*s*i+0.5*i-0.1*s+0.1;De=1.5*s*i-0.1*e+0.9*e*i;Di=i^2+0.1*e*i-1.6*i.都是对t求导这个微分方程组在matlab里面怎么绘图?初值的话取(0.5,0,0.5)和(0,0,1)就行.
图片:
程序:
tspan=[0 20];
y0=[0.5 0 0.5 ];
y1=[0 0 1];
[t0,Y0]=ode45('dif_dsdedi',tspan,y0)
[t1,Y1]=ode45('dif_dsdedi',tspan,y1)
figure
subplot(2,1,1)
plot(t0,Y0(:,1),'-b',t0,Y0(:,2),'-g',t0,Y0(:,3),'-k')
grid on
legend('s','e','i')
xlabel('t-time')
title('y0=[0.5 0 0.5 ]')
subplot(2,1,2)
plot(t1,Y1(:,1),'-b',t1,Y1(:,2),'-g',t1,Y1(:,3),'-k')
legend('s','e','i')
grid on
xlabel('t-time')
title('y0=[0 0 1]')
%=====子函数
function dy=dif_dsdedi(t,y)
%y(1)=s y(2)=e y(3)=i
dy(1)=-0.5*y(1)*y(3)+0.5*y(3)-0.1*y(1)+0.1;
dy(2)=1.5*y(1)*y(3)-0.1*y(2)+0.9*y(2)*y(3);
dy(3)=y(3)^2+0.1*y(2)*y(3)-1.6*y(3);
dy=dy(:)