SIR模型 matlab模拟

需要一个单独的m文件:

%即写上三个微分方程
function y=SIRModel(t,x,lambda,mu)
y=[-lambda*x(1)*x(2),lambda*x(1)*x(2)-mu*x(2),mu*x(2)]';

再进行作图

>> ts=0:1:100;
>> lambda=0.00001;
>> mu=1/14;
>> x0=[45400,2100,2500];
>> [t,x] = ode45(@(t,x) SIRModel(t,x,lambda,mu), ts, x0);
>> plot(t,x(:,1),t,x(:,2),'.',t,x(:,3),'*');
>> xlabel('时间/天');
>> ylabel('比例');
>> legend('易感节点','传播节点','移出节点');
>> title('λ=0.00001,μ=1/14');

SIR模型 matlab模拟_第1张图片

你可能感兴趣的:(数学建模)