SIR传染病模型模拟器 返回
流行病学 · 数学生物学

SIR传染病模型模拟器 — 群体免疫与疫情动态

拖动β和γ,实时观察R₀的变化。提高疫苗接种率,亲身体验群体免疫形成的临界条件。对比COVID-19、流感和麻疹的预设参数,直观感受不同疾病的传播能力差异。

预设场景
模型类型
基本参数
总人口 N 10,000
初始感染者 I₀ 10
传播率 β(/天) 0.35
康复率 γ(/天) 0.10
基本再生数 R₀ = β/γ 3.50
疫苗与选项
疫苗接种率 V(%) 0%
模拟天数 365
季节性强度 ε 0.00
关键指标
峰值感染率
最终感染率
达峰天数
群体免疫阈值

SIR模型方程

$$\frac{dS}{dt}= -\frac{\beta S I}{N}$$ $$\frac{dI}{dt}= \frac{\beta S I}{N}- \gamma I$$ $$\frac{dR}{dt} = \gamma I$$

N = S + I + R = 常数(守恒律)

与CAE的联系:SIR模型与结构动力学、CFD中的联立常微分方程采用相同的龙格-库塔数值积分方法求解。
时间序列图(S/I/R vs 天数)

什么是SIR传染病模型

🧑‍🎓
SIR模型是什么?听起来好复杂。
🎓
简单来说,它就是把人群像分宿舍一样分成三类:S(还没得病的人)、I(正在生病传染别人的人)、R(病好了有抗体的人)。这个模型就是算这三类人每天怎么变多变少的。你可以在模拟器里拖动“传播率β”和“康复率γ”这两个滑块,看看它们怎么影响疫情曲线,比如β变大,感染高峰就会来得更快更高。
🧑‍🎓
诶,真的吗?那常听到的R₀又是什么?
🎓
R₀(基本再生数)可以理解为一个“病人在人群中能传染几个人”的平均数。公式是 $R_0 = \beta / \gamma$。如果R₀大于1,一个病人能传染超过一个人,疫情就会扩散;小于1就会自己消失。你试试把模拟器顶部的预设从“季节性流感”换成“麻疹”,你会看到R₀值飙升,感染人数曲线瞬间变得非常陡峭,这就是传播力的直观体现。
🧑‍🎓
那“群体免疫”又是怎么回事?是不是大部分人病过一遍就行了?
🎓
不完全是“病过一遍”。群体免疫阈值是 $(1 - 1/R_0) \times 100\%$ 的人有免疫力后,疫情就传不动了。比如模拟器里COVID-19原始株的R₀≈3,算出来需要约67%的人免疫。你可以直接调整“疫苗接种率V%”的滑块,看到当免疫人数(R部分)超过那条虚线阈值时,感染曲线(I部分)就再也冲不上去了,这就是模拟实现群体免疫的过程!

物理模型与关键公式

这是SIR模型的核心方程组,描述了易感者(S)、感染者(I)、康复者(R)三类人群数量随时间的变化率。它本质上是一组耦合的常微分方程。

$$\frac{dS}{dt}= -\frac{\beta S I}{N}$$ $$\frac{dI}{dt}= \frac{\beta S I}{N}- \gamma I$$ $$\frac{dR}{dt}= \gamma I$$

S: 易感者数量;I: 感染者数量;R: 康复/免疫者数量;N: 总人口 (N = S + I + R);β: 传播率(每人每天有效接触率);γ: 康复率(平均感染天数的倒数,即 1/γ 天)。

从核心方程可以推导出两个关键指标:基本再生数 R₀ 和群体免疫阈值 HIT。它们是评估疫情严重性和防控目标的核心。

$$R_0 = \frac{\beta}{\gamma}, \quad \text{HIT}= 1 - \frac{1}{R_0}$$

R₀: 基本再生数,完全易感人群中一个感染者引发的平均继发感染数。HIT: 群体免疫阈值,为阻断传播所需的最低免疫人口比例。当 $R_0 \le 1$ 时,HIT无意义(疫情自然消退)。

现实世界中的应用

公共卫生政策制定:在COVID-19大流行期间,各国政府利用SIR及其扩展模型(如SEIR)预测疫情走势,评估“封城”、社交距离等非药物干预措施(通过降低β值模拟)的效果,为决策提供数据支持。

疫苗接种策略规划:通过模拟不同疫苗接种率(对应模型中R的初始值或S向R的直接转移)下的疫情发展,确定实现群体免疫所需的疫苗覆盖率,并优化接种的优先人群和节奏。

新发传染病风险评估:当一种新传染病出现时,流行病学家通过早期数据估算其β和γ,从而快速计算出R₀,初步判断其传播潜力是像流感一样温和还是像麻疹一样极具爆发性。

CAE与科学计算:求解SIR微分方程组使用的数值方法(如龙格-库塔法)与CAE软件中求解结构动力学振动、计算流体力学瞬态流场等问题的核心算法相同,是工程与科学领域共享的数学工具典范。

常见误解与注意事项

开始使用本模拟器时,有几个需要留意的要点。首先,"基本再生数R₀并非绝对常数"。例如COVID-19的R₀≈2.5是基于人们日常接触环境下的数值。实际上,通过避免人群聚集或佩戴口罩等措施,有效再生数R_t会降低。本工具中"降低感染率β"的操作,正是对这些防控措施效果的模拟。

其次,参数设定的现实性。例如将"恢复率γ"设为1/5(=0.2)意味着平均感染期为5天,但这通常指整个症状持续期。实际的"具有传染性的期间"可能更短。如果调整参数后出现不现实的曲线(例如感染者数I超过总人口N等),请养成重新审视参数设置的习惯。

最后,需要理解"群体免疫阈值并非终点"。虽然达到60%阈值后疫情会停止传播,但在此之前出现的感染峰值(医疗负荷)才是关键。例如若未接种疫苗而依赖自然感染,峰值时可能有超过20%的人口同时感染,导致医疗系统崩溃。通过模拟提高疫苗接种率,解读如何缓解"峰值压力"才是具有实践意义的应用方式。

相关工程领域

SIR模型的计算实际上在数学层面与众多工程领域深度关联。首推"化学反应工程"。S→I→R的状态迁移与化学物质A经B转化为C的连续反应(A → B → C)动力学采用完全相同的方程描述。参数β和γ本质上就是反应速率常数。

其次是"热传导与流体模拟(CFD)"。将SIR模型微分方程离散化后通过计算机求解的方法,与CAE基础的有限差分法、有限体积法原理相通。追踪状态量(S, I, R)随时间演化的过程,本质上与计算温度、流速随时间变化是相同的流程。

此外还可应用于"可靠性工程"。在由大量部件构成的系统中,当某个部件发生故障(感染)引发连锁故障的"共因故障"建模中,SIR模型可被转用。此时恢复率γ对应"修复率",疫苗接种率对应"冗余化或定期更换比率"。看似遥远的领域间,其实存在着理解"伴随状态迁移的系统动态行为"的共同基础工具。

进阶学习指引

熟悉本模拟器后,建议逐步将模型向现实场景推进。首先可研究"SEIR模型"。这是在S与I之间增加"潜伏期(E)"的模型,适用于水痘或COVID-19等感染后至发病存在时滞的疾病模拟。虽然方程增加使模型稍复杂,但其行为理解仍在SIR框架的延伸范围内。

在数学层面,建议关注这类联立微分方程是通过"数值积分"求解的。工具内部采用欧拉法或龙格-库塔法等算法,在微小时步内逐次计算S、I、R的增减变化。这种"离散化"概念正是复杂CAE模拟的核心基础。

若想深入探索,可尝试纳入"空间结构"或"个体接触网络"的模型。当前工具假设全体人口均匀混合(完全混合模型),但现实情况更为复杂。考虑地区间流动及家庭、职场等社区单元感染传播的"基于智能体的模型",是用于政策精细化评估的高级方法。通过当前简洁的SIR模型切身感受参数对曲线的影响,将是理解这些复杂模型的最佳捷径。