传染病的传播及控制分析数学建模 联系客服

发布时间 : 星期二 文章传染病的传播及控制分析数学建模更新完毕开始阅读

九、附录:

附录一:程序

function dy=ill1(t,y)

a1=1;a2=10;a3=30;r=10;c=0.5; dy=zeros(2,1);

dy(1)=(1-(1-1/(a2-a1))*exp(-t))*y(2)-(1-(1-1/a3)*exp(-t))*y(1); dy(2)=c*y(1)*r-(1-(1-1/(a2-a1))*exp(-t))*y(2);

function dy=ill2(t,y)

a1=1;a2=10;a3=30;r=10;c=0.5;p=0.4; dy=zeros(2,1);

dy(1)=(1-(1-1/(a2-a1))*exp(-t))*y(2)-(1-(1-1/a3)*exp(-t))*y(1); dy(2)=c*y(1)*r*exp(-p*t)-(1-(1-1/(a2-a1))*exp(-t))*y(2);

[T1,Y1]=ode45('ill1',[0,2],[900,1050]); a(1)=Y1(end,1);a(2)=Y1(end,2); [T2,Y2]=ode45('ill2',[0,30],a); plot(T1,Y1(:,1),'r',T2+2,Y2(:,1)) xlabel('时间/天'),ylabel('患者/人') title('患者随人数变化') hold on

[y_max,i_max]=max(Y2(:,1));

x_text=['t=',num2str(T2(i_max)+2)]; y_text=['ymax=',num2str(y_max)];

max_text=char('max p=0.4 ',x_text,y_text); plot(T2(i_max)+2,y_max,'.')

text(T2(i_max)+3,y_max,max_text);

13