1 内容介绍

COVID-19是由严重急性呼吸综合症冠状病毒2型引发的传染病,它最初病毒携带者是一些动物,传染源主要是COVID-19患者,无症状患者。传播方式主要是呼吸道飞沫近距离传播,接触传播,还有一些其他的传播方式待后续科研工作进一步证实。2019年12月,目前尚不知来源的新型冠状病毒COVID-19首先被报道于湖北省武汉市,随后由于寒假以及春运返潮等大规模人口流动,2020年1月底COVID-19蔓延扩散至全中国范围,使中国成为新型冠状病毒肺炎的重灾区;2020年3月底,COVID-19几乎肆虐地球上每一个国家,给全世界人民的生命安全和身体健康带来巨大威胁,给各国医护防控人员带来繁重的任务和巨大的压力,给世界经济带来严重阻力。因此,对COVID-19展开科学研究,探索它的传播机制,阻断它的传播渠道,能给COVID-19预防提供参考,控制提供数量依据,具有不可轻视的作用。 ​

2 仿真代码

function importTotalCases

% write the results of parsing into the 'data' directory (MB 20/04/23)

oldFolder = cd('data');

pwd

​% get the current date in YYYYMMDD format

currentDateYYYYMMDD = strrep(datestr(date, 26), '/', '');

% set the filenames

fileCSV = ['totalcases', currentDateYYYYMMDD, '.csv'];

fileXLSX = ['totalcases', currentDateYYYYMMDD, '.xlsx'];

% import data from <https://ourworldindata.org/coronavirus-source-data>

% download the 'totalcase.csv' file

tcFileCSV = websave(fileCSV,'https://covid.ourworldindata.org/data/ecdc/total_cases.csv');

% read the CSV file, and then save it to XLSX format

TMPFILE = readtable(fileCSV);

writetable(TMPFILE,fileXLSX);

% we will write the results of parsing into the appropriate folder;

% in order to use the original Milan Batista's code, we put:

path = pwd;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%    STEP 2: Split the data for individual countries     %%%

%%%       Milan Batista's original code for parsing        %%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Amin = 5;  % data les than Amin will be deleted from file begining

% get table

T = readtable(fileXLSX);

% get data

A =  T{:,2:end};

[nrow,ncol] = size(A);

% table column names

name = string(T.Properties.VariableNames);

name = name(2:end)';

% start date

date0 = datenum(T{1,1}); %datenum(txt{2,1},'dd.mm.yyyy'); %datenum('2019/12/31');

% end date

%date1 = date0 + nrow - 1;

%functions names

ffname = strings(ncol,1);

nn = 0;

for n = 1:ncol

nname = name{n};

if strcmp("",nname)

continue

end

nn = nn + 1;

nname = strrep(nname,' ','_');

nname = strrep(nname,'-','_');

nname = strrep(nname,'''','_');

nname = strrep(nname,'(','_');

nname = strrep(nname,')','_');

fname = sprintf('getData%s.m',nname);

fid = fopen(fullfile(path,fname),'w');

if fid < 0

fprintf('***Fail to open %s\n',fname);

continue

end

fprintf('%d/%d country %s ...\n',ncol,n,nname);

ffname(nn) = nname;

fprintf(fid,'function [country,C,date0] = getData%s()\n',nname);

fprintf(fid,'%%GETDATA%s Coronavirus data for %s\n',upper(nname),nname);

fprintf(fid,'%%  as reported by One World in Data\n');

fprintf(fid,'%%     https://ourworldindata.org/coronavirus-source-data\n');

fprintf(fid,'country = ''%s'';\n',strrep(name(n),' ','_'));

fprintf(fid,'C = [\n');

found = false;

nday = 0;

for m = 1:nrow

if ~found && (isnan(A(m,n)) || A(m,n) == 0 || A(m,n) < Amin)

nday = nday + 1;

continue

else

found = true;

end

fprintf(fid,'  %9d %% %s\n',A(m,n),datestr(date0 + m - 1));

end

fprintf(fid,'%%<-------------- add new data here\n');

fprintf(fid,']'';\n');

% start date

fprintf(fid,'date0=datenum(''%s'');\n',datestr(date0 + nday));

fprintf(fid,'end\n');

fclose(fid);

%generete driver rutine

fname = 'runAll.m';

fid = fopen(fullfile(path,fname),'w');

if fid < 0

fprintf('***Fail to open %s\n',fname);

continue

end

fprintf(fid,'prn = ''off'';\n');

fprintf(fid,'plt = ''on'';\n');

for n = 1:nn

fprintf(fid,'try\n');

fprintf(fid,'  fitVirusCV19(@getData%s,''prn'',prn,''jpg'',plt)\n',...

ffname(n));

fprintf(fid,'end\n');

end

fclose(fid);

cd(oldFolder)

end

3 运行结果

4 参考文献

[1]任中贵. 基于SIR模型的COVID-19疫情数据分析[J]. 电子元器件与信息技术, 2020, 4(7):3.

[2]成红胜, 成诚. 基于COVID-19传染病SIR模型的稳定性分析[J]. 淮阴师范学院学报:自然科学版, 2021, 20(4):6.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

【数学建模】基于SIR模型实现新冠病毒COVID-19估计附matlab代码相关推荐

  1. 2022年高教社杯全国大学生数学建模竞赛-A题:波浪能最大输出功率设计(附MATLAB代码)

    前言 最近发现一个关于数学建模比较好的专栏,需要的小伙伴可移步[数学建模应用]算法实战案例精讲300篇(持续更新ing) 赛题描述 随着经济和社会的发展,人类面临能源需求和环境污染的双重挑战,发展可再 ...

  2. 2021年暑假数学建模第一次模拟赛:新冠疫情预测(插值,时间序列,微分方程建模)

    本系列赛题.数据获取: 2021年暑假数学建模模拟赛(赛题+数据+分析) 不直接提供论文等资料,分析已经很详细了 整理不易,欢迎点赞+关注+收藏 2021年暑假数学建模第一次模拟赛:新冠疫情预测(插值 ...

  3. Python小白的数学建模课-A3. 12个新冠疫情数模竞赛赛题与点评

    新冠疫情深刻和全面地影响着社会和生活,已经成为数学建模竞赛的背景帝. 收集了与新冠疫情相关的的数学建模竞赛赛题,关注收藏本文或者在评论区留下邮箱,送你赛题分析点评及优秀论文. 『Python小白的数学 ...

  4. 新冠病毒变异株核酸检测引物设计——代码实现1

    上一期我们对新冠变异株核酸检测的方法原理进行了简介,本期我们主要讲一下,如何利用python语言实现我们特异性检测的目标. 一.文件读取 接着上一期我们下载新冠Alpha.Beta.Delta.Gam ...

  5. 【智能优化算法】基于金豺优化算法求解单目标优化问题附matlab代码

    1 内容介绍 提出了一种新的自然启发优化方法,称为金豺优化(GJO)算法,旨在为解决现实世界的工程问题提供一种替代优化方法. GJO 的灵感来自金豺 (Canis aureus) 的协作狩猎行为. 算 ...

  6. 【智能优化算法-白鲸算法】基于白鲸优化算法求解多目标优化问题附matlab代码

    1 内容介绍 在本文中,一种新的基于群体的元启发式算法灵感来自白鲸的行为鲸鱼,称为白鲸优化(BWO),是为了解决优化问题而提出的.三在 BWO 中建立了探索.开发和鲸落的阶段,对应于成对游泳.猎物和鲸 ...

  7. 【智能优化算法-白鲸优化算法】基于白鲸优化算法求解单目标优化问题附matlab代码

    1 内容介绍 白鲸优化算法(Beluga whale optimization,BWO)由Changting Zhong等人于2022年提出,该算法模拟了白鲸游泳,觅食和"鲸鱼坠落" ...

  8. 【滤波估计】基于双卡尔曼滤波实现soc和soh联合估计附matlab代码

    1 内容介绍 对电动汽车电池管理系统进行电池状态估计非常重要准确充电,实现电池模型参数的在线更新.在本文中,开路电压的估计转换为开路电压拟合的估计参数,快速时变参数开路电压被转换成几个慢时变参数.提出 ...

  9. 【毕业设计/Matlab系列】基于PCA和BP神经网络的人脸识别系统(附matlab代码)

    Date: 2022.4.26 文章目录 前言 1.总体介绍 2.详细分析 2.1.训练程序 2.2.测试程序 3.测试效果图 4.测试部分matlab代码 前言 在毕业设计中实现了基于PCA和BP神 ...

最新文章

  1. 计算机一级讲评,一级WPS Office——全国计算机等级考试专家讲评
  2. mysql要怎么定义环境变量_mysql设置环境变量
  3. java中employee_java Employee(雇员)
  4. java的设计模式用的什么软件_《图解Java多线程设计模式》UML用什么软件画?
  5. 暴露年龄系列!这些手机系统 你用过几个?
  6. 利用bwm-ng 实时监控系统
  7. 图解通信原理与案例分析-33:传感器种类以及传感器工作原理详解
  8. 《数据挖掘概念与技术》读书笔记
  9. 免费的DDoS防火墙有哪些
  10. 北航计算机研究院,计算机学院-北航研究生院-北京航空航天大学
  11. View inflate 原理
  12. 周小川深度解读:DC/EP和数字人民币e-CNY
  13. HTML 入门基础教程
  14. 什么是 OOD/OOP ?
  15. ceph-deploy离线部署ceph集群及报错解决FAQ
  16. EPICS ‘makeBaseApp’ IOC
  17. vscode卡在Setting up SSH Host XX:Copying VS Code Server to host with scp
  18. 网络多媒体素材加工【1】
  19. 试用D触发器和4选1数据选择器74153设计一个双向3位移位寄存器, 具体要求见下表(A、B为控制端), 左移串行输入信号为L, 右移串行输入信号为R
  20. Linux 基础—— IO 全面介绍

热门文章

  1. N1-防火墙的工作原理
  2. 2016年清华特等奖答辩(观后感)
  3. c语言编程物理实验,大学物理实验报告大全C语言编程在大学物理实验中处理数据的研究...
  4. apple售后服务官网_Apple准备好订阅捆绑以促进数字服务
  5. Web点播播放器1.0——腾讯sdk网页点播播放器
  6. 机器学习的相关代码汇总
  7. Linux的网络测试命令(转载)
  8. 解决ajax请求返回Json无法解析字符的问题
  9. Python-遗传算法君主交叉代码实现
  10. iOS设备管理工具iExplorer for Mac