SEIR模型案例_SOR模型

SEIR模型案例_SOR模型SEIR模型案例原理说明https://zhuanlan.zhihu.com/p/142117573%N是群体总样本数E=0;%潜伏期人数I=1;%患者人数S=N-I;%易感者人数

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

SEIR模型案例

原理说明

https://zhuanlan.zhihu.com/p/142117573

                               %N是群体总样本数
E=0;                           %潜伏期人数
I=1;                           %患者人数
S=N-I;                         %易感者人数
R=0;                           %康复者人数
r=20;                          %每个患者平均每天能接触的人数
B=0.03;                        %患者每天接触的人中被感染的概率
a=0.1;                         %潜伏期装变为患者的概率
y=0.1;                         %患者痊愈概率
r2=20;                         %处于潜伏期的人每天接触的人数

B2=0.03;                       %潜伏期的人每天接触的人中被感染的概率
T=1:140;                       %模拟从第一天到第140天的状况

for idx =1:length(T)-1         %循环遍历
    S(idx+1) = S(idx)- r*B*S(idx)*I(idx)/N - r2*B2*S(idx)*E(idx)/N;
    E(idx+1) = E(idx) + r*B*S(idx)*I(idx)/N - a*E(idx) + r2*B2*S(idx)*E(idx)/N;
    I(idx+1) = I(idx) + a*E(idx) - y*I(idx);
    R(idx+1) = R(idx) + y*I(idx);
end 

%{迭代计算每天的感染情况 idx代表天数
	S(idx+1) = S(idx)- r*B*S(idx)*I(idx)/N -r2*B2*S(idx)*E(idx)/N;
	这里S(idx+1)代表第idx+1天的易感者人数 
	其数值等于第idx天的易感者人数减去由于 潜伏者接触易感染者所造成的感染人数 和 患者接触易感染者所造成的感染人数
    r*I(idx)表示所有患者每天接触的人的总数  S(idx)/N表示所有人中易感染者占比
    r*B*S(idx)*I(idx)/N 即所有患者一天因为易感染者所造成的感染数
    同理r2*B2*S(idx)*E(idx)/N 即所有潜伏者一天因为易感染者所造成的感染数
    
    E(idx+1) = E(idx) + r*B*S(idx)*I(idx)/N - a*E(idx) + r2*B2*S(idx)*E(idx)/N;
    第idx+1天的潜伏者人数等于 
    第idx天的潜伏者人数 加上 潜伏者接触易感染者所造成的感染人数 和 患者接触易感染者所造成的感染人数
    减去由潜伏者转化为患者的人数
    
    y*I(idx)第idx天的患者痊愈人数
    
    以下分析同理
%}

plot(T,S,T,E,T,I,T,R);grid on;               %以下是绘图部分
xlabel('天');ylabel('人数')
legend('易感者','潜伏者','传染者','康复者')

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166783.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c++常量指针和指针常量_指针指向二维数组

    c++常量指针和指针常量_指针指向二维数组**一:常量**常量指针,指针常量,常量指针常量a)常量定义:不可修改的值,例如250,’A’b)const关键字功能:将变量常量化,四种形式(1)const可以修饰普通变量,一旦修饰该变量,该变量就当做常量看待,不可再更改Constinta=250;//将变量a常量化A=200;//gcc编译器报错(2)常量指针:不能通过指针变量来修改指向的内存区域的数据,主要…

    2022年8月30日
    2
  • 山东省计算机考试模拟,山东省高校计算机等级考试VB考试模拟系统使用说明

    山东省计算机考试模拟,山东省高校计算机等级考试VB考试模拟系统使用说明

    2021年11月28日
    37
  • Codeforces 459E Pashmak and Graph(dp+贪婪)

    Codeforces 459E Pashmak and Graph(dp+贪婪)

    2022年1月5日
    43
  • 角度和弧度之间的转换

    角度和弧度之间的转换在编程中,我们经常会用到角度或者弧度,但是往往我们所得到的不是角度就是弧度,需要转换一下才能用到,这里我总结了角度和弧度之间的转换,1、转换方法:角度转弧度π/180×角度弧度变角度180/π×弧度例:角度转弧度//其中a是最开始的角度,现在将它转换成弧度制a//4*atan(1.0)就是我们用到的圆周率π,不管角度还是弧度,都是double型voidCBa…

    2022年6月23日
    34
  • java反转数组_Java中如何将数组反转?Java数组反转的2种方法(代码示例)「建议收藏」

    java反转数组_Java中如何将数组反转?Java数组反转的2种方法(代码示例)「建议收藏」数组操作Java数组如何反转输出?下面本篇文章就给大家介绍2种在java中实现数组反转的简单方法。有一定的参考价值,希望对大家有所帮助。【视频教程推荐:java教程】方法一:使用循环,交换数组中元素的位置使用循环,在原数组中交换元素的位置:第一个元素与最后一个元素交换,第二个元素与最后一个元素交换,依此类推,直到结束。例如,在数组[1,2,3,…,n-2,n-1,n]中,我们可以将1和n进行交…

    2022年4月29日
    35
  • 通过pycharm安装python_vscode如何使用第三方库

    通过pycharm安装python_vscode如何使用第三方库除了使用easy_insatll和pip工具安装Python第三方库外还可以使用pycharm安装Python第三方库,步骤如下:1.打开pycharm,点击File,再点击settings2.点击settings之后再点击project下面的projectInterpreter将会出现如下界面:3.接下来点击上面界面右上角的“+”将会出现如下界面:然后在搜索框中搜索

    2022年4月20日
    59

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号