MATLAB求解SEIR模型.zip

  • N0_596564
    了解作者
  • 2.5KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-10 11:10
    上传日期
预测意大利疫情数据,MATLAB求解SEIR模型。建立的理论模型对意大利疫情在2月14日至3月10日的实际数据温度都较好(图?),上述模型的数据采用的2月14的数据进行预测的,可以很很明显的看出,后续的预测数据基本一致。3月9号,意大利官方宣布全国人员管控。根据管控的需要,启动了必要的防空隔离措施,如限制大范围聚集情况,对流动人口采取预防工作,并升级隔离措施,这实际上是降低接触率c。我们对3月9号的接触率进行一定的降低。因此对3月9号意大利的接触率进行一定程度的降低,分别取1,0.9,0.7,0.5;并作出了模拟情况。
MATLAB求解SEIR模型.zip
  • MATLAB求解SEIR模型
  • Untitled4.m
    1.9KB
  • Untitled5.m
    2.6KB
内容介绍
clc;clear;close all% 计算意大利 hubei_data=xlsread('意大利数据.xlsx'); hubei_data=hubei_data(13:end,:); % plot(hubei_data(:,1)-1,hubei_data(:,3),'*'); hold on; % plot(hubei_data(:,1)-1,hubei_data(:,4),'*'); hold on; c_pecent=[1,0.9,0.7,0.4]; for j=1:4 %% 参数 Q=1; % 潜伏者相对于感染者传播能力的比值 A=1/14; %隔离时间14天 G=1/7 ; % 潜伏期向感染者的转化速率潜伏期为7d c=3.3; %接触率 %c=4; p=1; %有效接触系数 Si=0.13; %感染者隔离速率 Sq=0.13; % 隔离 YI=0.0678; YH=0.014; B=2.05*10^(-9); q=10^(-6); a=0.0399; h=0.01 ; %求解的步长 T=60 ; %预测50天的 t=0:h:T; S=60430000 ; E=3; I=3*1.5; SQ=9; EQ=2; H=I+EQ; R=42; DS=zeros(1,length(t)); DS1=zeros(1,length(t)); % 参数保存地方 DE=zeros(1,length(t)); DE1=zeros(1,length(t)); DI=zeros(1,length(t)); DI1=zeros(1,length(t)); DSQ=zeros(1,length(t)); DSQ1=zeros(1,length(t)); DEQ=zeros(1,length(t)); DEQ1=zeros(1,length(t)); DH=zeros(1,length(t)); DH1=zeros(1,length(t)); DR=zeros(1,length(t)); DR1=zeros(1,length(t)); DS(1)=S;%参数初始化 DE(1)=E;DI(1)=I;DSQ(1)=SQ;DEQ(1)=EQ;DH(1)=H;DR(1)=R; for i=2:length(t) if i>=26/h c=3.2*c_pecent(j); else end DS1(i-1)=-(p*c*B+p*c*q*(1-B))*( DS(i-1) )*( DI(i-1)+1*DE(i-1) )+A*DSQ(i-1); DS(i)=DS(i-1)+DS1(i-1)*h; DE1(i-1)=p*c*B*(1-q)*DS(i-1)*( DI(i-1)+1*DE(i-1) )-G*DE(i-1); DE(i)=DE(i-1)+DE1(i-1)*h; DI1(i-1)=G*DE(i-1)-(Si+a+YI)*DI(i-1); DI(i)=DI(i-1)+DI1(i-1)*h; DSQ1(i-1)=p*c*q*(1-B)*DS(i-1)*( DI(i-1)+1*DE(i-1) )-A*DSQ(i-1); DSQ(i)=DSQ(i-1)+DSQ1(i-1)*h; DEQ1(i-1)=p*c*B*q*DS(i-1)*( DI(i-1)+1*DE(i-1) )-G*DE(i-1); DEQ(i)= DEQ(i-1)+ DEQ1(i-1)*h; DH1(i-1)=Si*DI(i-1)+Sq*DEQ(i-1)-(a+YH)*DH(i-1); DH(i)=DH(i-1)+DH1(i-1)*h; DR1(i-1)=(YI)*DI(i-1)+YH*DH(i-1); DR(i)=DR(i-1)+DR1(i-1)*h; end plot(t,DI); hold on; end plot(hubei_data(:,1)-12,hubei_data(:,3),'*'); hold on; xlabel('时间-初始时间是2月14日'); ylabel('人数(人)'); title('3月9日意大利管控后新冠肺炎感染趋势'); legend('3月9日管控后c=1','3月9日管控后c=0.9','3月9日管控后c=0.7','3月9日管控后c=0.5','原始数据'); grid on % subplot(3,3,1); % plot(t,DS); hold on;title('易感染总人数'); % subplot(3,3,2); % plot(t,DE); hold on;title('潜伏者'); %subplot(3,3,3); %% % figure(1) % plot(t,DI); hold on; % plot(t,-DR); hold on ; % plot(hubei_data(:,1)-12,hubei_data(:,3),'*'); hold on; % plot(hubei_data(:,1)-12,hubei_data(:,4),'*'); hold on; % xlabel('时间-初始时间是2月14日'); % ylabel('人数(人)'); % legend('当前实际感染人数','当前实际治愈人数','理论预测-当前感染','理论预测-当前治愈'); % title('意大利新冠肺炎感染趋势'); % grid on
评论
    相关推荐
    • Matlab合集
      冈萨雷斯数字图像处理MATLAB版.中文版+数字图像处理第二版中文版(冈萨雷斯)+MATLAB-R2014a完全自学一本通+MATLAB R2016a完全自学一本通 素材文件+[模式识别与智能计算:MATLAB技术实现(第2版)].杨淑莹.扫描版
    • MATLAB教程
      MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程
    • MATLAB
      MATLAB 该项目是在matlab上完成的,涉及创建和移动宇宙飞船和机器人。 太空飞船和机器人是使用Matlab中的简单几何形状创建的,并通过连续变换矩阵进行移动。 这个项目教我如何使用变换矩阵(旋转,平移等)的概念...
    • MATLAB基础
      一本学习matlab的一本好书
    • MATLAB编译器
      基于MATLAB 2018b版本介绍MATLAB编译器。介绍如何利用编译器将MATLAB代码编译为独立应用程序或组件,并在没有安装MATLAB的计算机上进行部署。
    • matlabruntime
      通过奇点容器运行您的matlab项目 可以在没有MATLAB的容器中运行matlab代码。 为此,我们首先需要通过Matlab编译器在本地构建相应的Matlab代码的独立应用程序,然后使用具有Matlab运行时( 的容器)运行该应用程序 )...
    • matlab实现
      matlab实现 matlab实现matlab实现matlab实现matlab实现
    • matlab 教程
      matlab 信号处理资料,里面包含信号处理pdf文档,一些杂乱的程序和命令等
    • matlab教程
      matlab教程,PPT格式,包含 matlab基本知识、matlab入门、matlab作图、线性规划、无约束优化、非线性规划、统计工具箱、差值、微分方程等多项知识点,并且每个知识点独立成为PPT,内还含有matlab信号处理详解等文档...
    • matlab简介
      1.MATLAB 开发环境 1.1 MATLAB 的视窗环境 进入MATLAB之后,会看到一个视窗MATLAB Command Window称为指令视窗,它是你键入指令的地方同时 MATLAB也将计算结果显示在此。 1.2 简易计算 我们先从MATLAB的...