手搓传染病模型(SIS)

先看模型

\left\{\begin{array}{l}\frac{dS}{dt}=-\beta\frac{SI}{N}+\gamma I\\\frac{dI}{dt}=\beta\frac{SI}{N}-\gamma I\end{array}\right.

开始手搓

% 模型参数
N = 21858000; % 总人数
I0 = 170; % 初始感染人数
S0 = N - I0; % 初始易感人数
beta = 1.1; % 传染率
gamma = 0.25; % 康复率
num_days = 160; % 模拟天数
% x(1):感染人群I, x(2):易感人群S
dxdt = @(t, x) [beta * x(1) * x(2) / N + gamma * x(1);
                -beta * x(1) * x(2) / N - gamma * x(1)];
[t, y] = ode45(dxdt, 1: num_days, [I0, S0]);
hold on
plot(t, y(:, 1));
plot(t, y(:, 2));
legend('感染人数I', '易感人数S');

看下效果

手搓传染病模型(SIS)_第1张图片

Over!

你可能感兴趣的:(传染病模型,看这一个就够了!,数学建模,matlab)