1、SI模型利用 MATLAB求解传染病模型中的 SI模型的解析解:程序中 a即 ,y 即 i y=dsolve(Dy=a*(y-y2),y(0)=y0)y =1/(1-exp(-a*t)*(-1+y0)/y0)画图:SI 模型的 it曲线设 =1, i(0)=0.1 y=dsolve(Dy=y-y2,y(0)=0.1)y =1/(1+9*exp(-t) x=0:0.01:13;y=1./(1+9.*exp(-x); plot(x,y)title(SI模型的 it曲线);xlabel(t);ylabel(i);axis(0 13 0 1.1);画图:SI 模型的 di/dti曲线程序中 x即 i,
2、y 即 di/dt,=1 x=0:0.01:1;y=x-x.*x; plot(x,y)title(SI模型的 di/dti曲线);xlabel(i);ylabel(di/dt);SIS模型利用 MATLAB求解传染病模型中的 SIS模型的解析解:程序中 a即 ,b 即 ,y 即 i y=dsolve(Dy=a*(y-y2)-b*y,y(0)=y0)y =(a-b)/(a-exp(-(a-b)*t)*(-a+b+y0*a)/y0/(a-b)*a+exp(-(a-b)*t)*(-a+b+y0*a)/y0/(a-b)*b)画图:SIS 模型的 di/dti曲线(1)程序中 x即 i,y 即 di/d
3、t,=1,=0.3 x=0:0.01:1; y=0.7.*x-x.2; plot(x,y)title(SIS模型的 di/dti曲线);xlabel(i);ylabel(di/dt);画图:SIS 模型的 it曲线(1)设 =1,=0.3,i(0)=0.02 y=dsolve(Dy=0.7*y-y2,y(0)=0.02)y =7/(10+340*exp(-7/10*t) x=0:1:16; y=7./(10+340.*exp(-7./10.*x); plot(x,y)title(SIS模型的 it曲线);xlabel(t);ylabel(i);画图:SIS 模型的 di/dti曲线(1)程序中
4、 x即 i,y 即 di/dt,=0.5,=0.6 x=0:0.01:1; y=-0.5.*x.2-0.1.*x; plot(x,y)title(SIS模型的 di/dti曲线);xlabel(i);ylabel(di/dt);画图:SIS 模型的 it曲线(1)设 =0.5,=0.6,i(0)=0.02 y=dsolve(Dy=-0.5*y2-0.1*y,y(0)=0.02)y =1/(-5+55*exp(1/10*t) x=0:1:40; y=1./(-5+55.*exp(1./10.*x); plot(x,y)title(SIS模型的 it曲线);xlabel(t);ylabel(i);
5、SIR模型利用 MATLAB求解传染病模型中的 SIR模型的数值解:程序中 a=1, b=0.3,i(0)=0.02,s(0)=0.98M文件中:function y=ill(t,x)a=1;b=0.3;y=a*x(1)*x(2)-b*x(1),-a*x(1)*x(2);命令窗口中: t,x=ode45(ill,0:50,0.02,0.98);t,xans =0 0.0200 0.98001.0000 0.0390 0.95252.0000 0.0732 0.90193.0000 0.1285 0.81694.0000 0.2033 0.69275.0000 0.2795 0.54386.00
6、00 0.3312 0.39957.0000 0.3444 0.28398.0000 0.3247 0.20279.0000 0.2863 0.149310.0000 0.2418 0.114511.0000 0.1986 0.091712.0000 0.1599 0.076713.0000 0.1272 0.066514.0000 0.1004 0.059315.0000 0.0787 0.054316.0000 0.0614 0.050717.0000 0.0478 0.048018.0000 0.0371 0.046019.0000 0.0287 0.044520.0000 0.0223
7、 0.043421.0000 0.0172 0.042622.0000 0.0133 0.041923.0000 0.0103 0.041524.0000 0.0079 0.041125.0000 0.0061 0.040826.0000 0.0047 0.040627.0000 0.0036 0.040428.0000 0.0028 0.040329.0000 0.0022 0.040230.0000 0.0017 0.040131.0000 0.0013 0.040032.0000 0.0010 0.040033.0000 0.0008 0.040034.0000 0.0006 0.039
8、935.0000 0.0005 0.039936.0000 0.0004 0.039937.0000 0.0003 0.039938.0000 0.0002 0.039939.0000 0.0002 0.039940.0000 0.0001 0.039941.0000 0.0001 0.039942.0000 0.0001 0.039943.0000 0.0001 0.039944.0000 0.0000 0.039845.0000 0.0000 0.039846.0000 0.0000 0.039847.0000 0.0000 0.039848.0000 0.0000 0.039849.00
9、00 0.0000 0.039850.0000 0.0000 0.0398 plot(t,x(:,1),t,x(:,2),grid,pausei(t),s(t)图形如下: plot(x(:,2),x(:,1),grid,pauseis图形(相轨线)如下:画图:SIR 模型的相轨线程序中 y即 i, x即 s, =1,=0.3 s(0)=0.32; s(0)=0.58; s(0)=0.73; s(0)=0.85 x=0:0.01:1; y=1-x; y1=1-x+0.3.*(log(x)-log(0.32); y2=1-x+0.3.*(log(x)-log(0.58); y3=1-x+0.3.*(log(x)-log(0.73); y4=1-x+0.3.*(log(x)-log(0.85); plot(x,y,x,y1,x,y2,x,y3,x,y4)axis(0 1 0 1);title(SIR模型的 is曲线);xlabel(s);ylabel(i);