python 病毒扩散模型_SI病毒模型解析及模拟

解析

把人群分为两种,一种是易感者,即健康人群,用 S 表示其人数。

另外一种为感染者,用 I 来表示。

即区域内总人数是N=S+I。

I 个感染者,每天碰到 r个人,\( \beta\) 概率会传染疾病。

健康人占比为\( \frac{S}{N}\)。

易得将以上所有量相乘即每天新增感染病例。

于是得到

常微分方程

\( \frac{dI}{dt}=r\beta I\frac{S}{N} \\ \frac{dS}{dt}=-r\beta I\frac{S}{N}\)

现假设总人数N=100,感染者接触易感者的人数r=2,传染概率\(\beta\)=0.02,初始感染者为1即\( I\left(0\right)=1\)。

\( I\left(t\right)=\frac{100}{e^{\mathrm{ln}\left(99\right)-\frac{t}{25}} +1} \\ S\left(t\right)=\frac{100}{e^{\frac{t}{25}-\mathrm{ln}\left(99\right)} +1}\)

为观察其变化率对其求导,得

导数

\( \frac{\mathrm{d}}{\textrm{d}t}I=\frac{4e^{\mathrm{ln}\left(99\right)-\frac{t}{25}} }{ {\left(e^{\mathrm{ln}\left(99\right)-\frac{t}{25}} +1\right)}^2 } \\ \frac{\mathrm{d}}{\mathrm{d}t}S=-\frac{4e^{\frac{t}{25}-\mathrm{ln}\left(99\right)} }{ {\left(e^{\frac{t}{25}-\mathrm{ln}\left(99\right)} +1\right)}^2 }\)

为找出增长速度最快的时间,求其导数最大值,即

最快增长时间

\(t={I^{\prime } \left(t\right)}_{\mathrm{max}} =25\,\mathrm{log}\left(99\right)\approx 115\)

代入原方程发现此时N=50,其实可以通过简单变换直接得出最快增长时间。

\(\frac{dI}{dt}=r\beta I\frac{S}{N}=r\beta I\frac{N-I}{N}=r\beta I\left(1-\frac{I}{N}\right)\),所以当\(I=\frac{N}{2}\)时增长最快。

为分析何时所有人被感染,故解导函数等于零(实际上该数学模型永不为0,这里以\( {10}^{-3}\)代替),得

全部被感染时间

\(t=25\,\mathrm{log}\left(99\right)-25\,\mathrm{log}\left(1999-60\,\sqrt{10}\,\sqrt{111}\right)\approx 322\)

图解

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本文基于传统的传染病模型,以微分方程的方法作为理论基础,结合采取的措施不同的情况,用MATLAB软件拟合出患者人数与时间的曲线关系,从中得出应采取的相应的应对措施。 在考虑地区总人数不变,人群被分为五类:确诊患者、疑似患者、治愈者、死亡和正常人,再将这几类分为可传染性和不可传染性两种。我们找出单位时间内正常人数的变化、单位时间内潜伏期病人数的变化、单位时间内确诊患者人数的变化、单位时间内退出的人数的变化、单位时间内疑似患者人数的变化等关系建立微分方程模型,得到病毒扩散与传播的控制模型。 在此基础上,我们将所要求的问题带入模型得到患者人数随时间变化的曲线图,根据这图形得出模型结果的变化。这样一来就可根据这结果的变化得出相应的应对措施。 此外对该传染病的潜伏期及治愈期进行了灵敏度分析,发现潜伏期的变化会对整个模型的结果产生较大影响,而治愈期的变化只会使传染病的持续时间缩短,但对累积的患病人数影响不大。 应尽量避免患者与正常人接触,减少正常人患病的可能性;加大隔离措施强度;减少拖延患者去住院的时间,让患者及时住院治疗。养成良好的卫生习惯,保证科学睡眠,适当锻炼,减少压力,保证营养,增强个人抵抗力,降低被病毒感染的危险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值