基于传染病模型中的再生数R0的讨论【基于matlab的动力学模型学习笔记_2】

/*仅当作学习笔记,若有纰漏欢迎友好交流指正,此外若能提供一点帮助将会十分荣幸*/

在上一篇博文中介绍了病毒模型的基本计算思路方法,而本文将会重点讨论基本再生数R0-这个决定病毒是继续发展还是衰减的关键指标。

摘 要:过去的半个多世纪,传染病模型在数学生态学领域已受广泛重视。而再生数又是考量传染病能否流行的指标性因素,因此本文将基于传统病毒模型讨论不同因素对再生数的影响,以及再生数的大小对病毒传播的影响。

0 引言                                   

研究疾病、病毒的传播和扩散机制以及相应的预防措施是当前复杂系统和传染病动力学研究领域的热点问题。基本再生数是考量病毒能否流行的指标性因素,但R0>1时,代表病毒将会继续流行传播;当R0<1时,代表病毒的传播势头将会呈下降趋势,直至最终灭亡。

本文将讨论不同模型下的无病平衡点以及染病平衡点条件下的再生数,来分析其是否具备流行性。

1 正平衡条件下的基本再生数                                  

在本节中仅仅对传统的传染病模型进行一个简单的分析,最常用的方法就是根据无病平衡点的局部稳定性,采用再生矩阵的方法求出基本再生数。

1.1 病毒模型搭建                                  

设有SIR模型:

其中,S(T)、I(T)、R(t)中分别代表群体中易感者、染病者及恢复(移出)者的个数。这里假定新出生的人口数为A,自然死亡率为d,恢复率为γ,传染(对易感人群来说就是感染系数)系数为β。

根据模型(1.2),若我们要求其无病毒平衡点,即设置初始条件:即S(T)、I(T)、R(t)的变化率为0,也就是: 

所以(1.2)可以改写为:

可求得平衡点为:

2 影响再生数的因素                              

本节将就(1.4)式中对再生数构成影响的几个参数分别进行讨论,单独研究它们的变动对再生数乃至病毒传播的影响。

基础数据设置:

2.1 恢复率的影响                            

当讨论恢复率时,假设传染系数与死亡系数一定

将(1.5)中的数据带入式(1.4),可得:

可以看出,在假设传染系数与死亡系数一定时,再生数的大小取决于恢复率γ的大小。即病毒的传播流行与否取决于病人的恢复率,也就间接的等同于医疗机构的医疗水平。 

2.1.1 恢复水平γ=0.1<0.1446

当恢复率γ=0.1<0.1446时,计算得到再生数R0=1.34>1。

clear;clc;
%初始参数设置
N = 1;%人口总数
I = 0.01;%感染者
S= N-I;%易感者
R=0;%恢复者
b=0.5;%传染系数
d=0.03;%死亡系数
a=0.1;%康复系数
y=0.01048;%出生率
A=y; %新出生人数                                             
T= 1:140;
for idx = 1:length(T)-1
    S(idx+1) = S(idx)+A-d*S(idx)-b*S(idx)*I(idx);
    I(idx+1) = I(idx)+b*S(idx)*I(idx)-d*I(idx)-a*I(idx);
    R(idx+1) = a*I(idx)-d*R(idx);
end
figure
plot(T,S,T,I,T,R);
grid on;
xlabel('天');ylabel('人数')
legend('易感者S','感染者I','恢复者R')
title('康复率为0.1')

 根据上述matlab仿真代码,可得:

可以看出,当恢复率γ=0.1<0.1446时,感染人数一直存在,导致病毒一直未消亡。 

2.1.2 恢复水平γ=0.2>0.1446

当恢复率γ=0.2>0.1446时,计算得到再生数R0=0.76<1。

仿真可得:

 可以看出,当恢复率γ=0.2>0.1446时,即伴随着医疗水平的提升,感染人数在50天左右变为0,也就意味着病毒的消失。

2.2 死亡率的影响                            

当讨论死亡率时,假设传染系数与恢复率一定,设为

将(1.5)中的数据带入式(1.4),可利用matlab中的solve函数计算,计算程序为:

syms S
[solS]=solve(0.5*0.01048-S*S-0.15*S==0,S)
solutions=[solS]
d=double(solS)%S*的值

 计算结果:

易得:

可以看出,在假设传染系数与恢复率一定时,再生数的大小取决于死亡率的大小。即病毒的传播流行与否取决于病人能否恢复,这与恢复率类似,也间接的等同于医疗机构的医疗水平 。

2.2.1 恢复水平d=0.02<0.0292

当恢复率d=0.02<0.0292时,计算得到再生数R0=1.54>1。

仿真得:

可以看出,当死亡率d=0.02<0.0292时,感染人数一直存在,病毒一直未消亡。 

2.2.2 恢复水平d=0.05>0.0292

当恢复率d=0.05>0.0292时,计算得到再生数R0=0.52<1。

仿真可得:

 可以看出,当死亡率d=0.05>0.0292时,感染人数在50天左右消失,并消亡,病毒不流行。

2.3 传染系数的影响                            

当讨论传染系数时,假设死亡率与恢复率一定,设为

易得:

可以看出,在假设死亡率与恢复率一定时,再生数的大小取决于感染率β的大小。即病毒的传播流行与否取决于防范措施的好坏,例如佩戴口罩。当防范得当可以使得感染系数降低,也就抑制病毒传播。 

2.3.1 传染系数β=0.3<0.5153

当恢复率β=0.3<0.5153时,计算得到再生数R0=0.58<1。

仿真可得:

可以看出,当死亡率β=0.3<0.5153时,即代表防范得当,感染人数在60天左右变为0,病毒消亡。 

2.3.2 传染系数β=0.8>0.5153

当恢复率β=0.8>0.5153时,计算得到再生数R0=1.54>1。

仿真得:

可以看出,当死亡率β=0.8>0.5153时,即代表防范措施不当,病毒一直都未消失,甚至在80天之后出现感染者再次增加的情况,即可能导致大规模爆发性传播。 

3 总结                            

参考文献                            

  1. 崔玉美,陈姗姗,傅新楚.几类传染病模型中基本再生数的计算.复杂系统与复杂性科学,2017,14(4):14-31.
  2. 夏立标.一类传染病模型无病平衡点的全局稳定性.浙江大学学报:理学版,2014,41(4):391-398.
  3. 刘变红,刘桂荣.一类受媒体报道影响的随机SIRI传染病模型的定性分析.吕梁学院学报,2020,10(2):14-18.

  • 11
    点赞
  • 119
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
2019年年底,一场突如其来的疫情打破了所有人的生活,经高通量测序发现这是一种新型冠状病毒—— [1],自疫情爆发以来,世界各地科研机构纷纷展开对 的研究,本文基于流行传染病 模型的基础上展开研究。 问题一:针对如何定量界定“流行”与“大流行”,本文在传统 模型的基础上,根据实际疫情据计算出模型的死亡率、治愈率、感染率、确诊患者转化率以及确诊患者的自然增长率并求解出模型,并通过模型模拟据与实际据的对比,进而分析得出 的一个整体发展态势。在 模型的基础上求出 的基本再生R_0,通过基本再生R_0并与其他“流行”传染病(以 和 为例)对比,进而直接得到界定“流行”与“大流行”的一个量化指标。此外,疫情的覆盖范围、潜伏周期和投入资金也可以间接的作为界定“流行”与“大流行”的量化指标。 问题二: 本文首先通过对无症状感染者所占群体内部的一个比例来衡量该地区的疫情爆发趋势。针对这个问题,本文在传统流行病模型的基础上,判断流行病“无病平衡点”和“地方病平衡点”的稳定性以及“流行病传播的必要条件”入手。结合模型一的相关参,推测出无症状感染者所占的比重,从而划分出不同风险等级的区域。由于所选区域较为灵活,对于范围较大的区域可以运用“统计学”原理和生物学的“抽样原理”,从宏观角度上分析无症状感染者的比重,当无症状感染者的比例大于1,则疫情随时可能爆发;当无症状感染者比例小于1时,疫情即使爆发也会很快控制下来,且疫情发展系P_e的值越小,爆发的概率越大。以湖北、天津、浙江、北京和云南为例,计算得湖北的无症状感染者的比重1.1145,P_e的值是五个样本区域最小的,会有大爆发的趋势;其次是浙江的1.0025,有小范围爆发的趋势;随后是天津的0.8664,会有局部疫情爆发的可能,应当适当增强管控手段和隔离强度;云南和北京的无症状感染者比重都远远小于1,可以把更多的人力和资源投入到其他省的疫情管控。 问题三: 本文从疫情造成的影响和总体发展态势分析疫情,根据模型一提供相关据分析管控措施和理论依据,并根据模型二的计算结果的模型原理提供如何高效的对地区采取管控政策。
时滞传染病模型是一种描述传染病在人群传播的模型,可以用于预测和控制传染病的流行趋势。基于复杂网络的两类传染病时滞动力学模型研究,是一种应用时滞理论和复杂网络理论研究传染病流行的方法,可以更加准确地描述传染病在不同人群之间的传播。 MATLAB是一种常用的学计算软件,可以用于建立和求解模型,包括时滞传染病模型。下面是一个基于MATLAB的时滞传染病模型的例子: ``` function dxdt = delayedSIR(t,x,Z,beta,gamma,tau) % delayed SIR model % t: current time % x: current state vector (S,I,R) % Z: past state vector (S,I,R) at time t-tau % beta: infection rate % gamma: recovery rate % tau: time delay S = x(1); I = x(2); R = x(3); ZS = Z(1); ZI = Z(2); ZR = Z(3); dSdt = -beta*ZI*S; dIdt = beta*ZI*S - gamma*I; dRdt = gamma*I - beta*ZR*S; dxdt = [dSdt; dIdt; dRdt]; ``` 这个模型描述了一个基于SIR模型传染病模型,包括时滞。下面是一个使用这个模型求解的例子: ``` % parameters beta = 0.2; % infection rate gamma = 0.1; % recovery rate tau = 2; % time delay % initial conditions S0 = 0.8; I0 = 0.2; R0 = 0; % time vector tspan = [0 50]; % solve the delayed SIR model [t,x] = dde23(@(t,x,Z)delayedSIR(t,x,Z,beta,gamma,tau),tau,@(t)ICs(t,S0,I0,R0),tspan); % plot the results plot(t,x(:,1),'b',t,x(:,2),'r',t,x(:,3),'g'); legend('S','I','R'); xlabel('Time'); ylabel('Population'); ``` 这个例子使用了MATLAB的dde23函来求解时滞微分方程,得到了S、I和R三个人群在时间上的变化趋势,可以用来分析传染病的流行情况。 基于复杂网络的两类传染病时滞动力学模型研究是一种更加复杂的模型,需要考虑不同人群之间的联系和交互。这个模型可以用MATLAB的网络分析工具箱来实现,具体方法可以参考相关文献和资料。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值