matlab代码

clc

clear

close all;

A = 0.4;

B = 0.1;

I = 0.4;

S = 0.5;

%ode

tspan = [0 50];

y0 = [I S];

[t, y] = ode45(@(t,y)odefun(t,y,A,B), tspan, y0);

r = 1-y(:,1)-y(:,2);

%euler

n = size(r,1);

h = 50 / (n-1);

t_0 = [0:h:50]‘;

y_i = zeros(n,1);

y_s = zeros(n,1);

y_i(1) = I;

y_s(1) = S;

for i = 1:n-1

y_i(i+1) = h*[A*y_i(i)*y_s(i) - B*y_i(i)]+y_i(i);

y_s(i+1) = h*[-A*y_i(i)*y_s(i)]+y_s(i);

end

r_0 = 1 - y_i(:,1) - y_s(:,1);

%画图

subplot(2,2,1);

plot(t,y(:,1),‘-o‘,t,y(:,2),‘-.‘,t,r,‘g‘);

hold on;

legend(‘生病人数:i(t)‘,‘健康人数:s(t)‘,‘移除人数:r(t)‘,‘Location‘,‘Best‘);

ylabel(‘占人口比例%‘);

xlabel(‘时间t‘);

str = [‘接触数λ/μ:‘,num2str(A/B),‘ 初始生病人数:‘,num2str(I),‘,初始健康人数:‘,num2str(S)];

text(15,0.4,str,‘FontSize‘,10);

title(‘SIR模型(ode)‘);

subplot(2,2,2);

plot(t_0,y_i,‘-o‘,t_0,y_s,‘-.‘,t_0,r_0,‘g‘);

hold on;

legend(‘生病人数:i(t)‘,‘健康人数:s(t)‘,‘移除人数:r(t)‘,‘Location‘,‘Best‘);

ylabel(‘占人口比例%‘);

xlabel(‘时间t‘);

str = [‘接触数λ/μ:‘,num2str(A/B),‘ 初始生病人数:‘,num2str(I),‘,初始健康人数:‘,num2str(S)];

text(15,0.4,str,‘FontSize‘,10);

title(‘SIR模型(euler)‘);

subplot(2,2,3);

plot(t_0,y_i,‘r-‘,t,y(:,1),‘-.‘);

diff = sum(abs(y_i - y(:,1)));

str1 = [‘生病人数对比图i(t), 误差:‘,num2str(diff)];

title(str1);

legend(‘euler‘,‘ode‘,‘Location‘,‘Best‘);

ylabel(‘占人口比例%‘);

xlabel(‘时间t‘);

subplot(2,2,4);

plot(t_0,y_s,‘r-‘,t,y(:,2),‘-.‘);

diff = sum(abs(y_s - y(:,2)));

str1 = [‘健康人数对比图s(t), 误差:‘,num2str(diff)];

title(str1);

legend(‘euler‘,‘ode‘,‘Location‘,‘Best‘);

ylabel(‘占人口比例%‘);

xlabel(‘时间t‘);

function dydt = odefun(t,y,A,B)

dydt = zeros(2,1);

dydt(1) = A*y(1)*y(2) - B*y(1);

dydt(2) = -A*y(1)*y(2);

end

结果

原文:https://www.cnblogs.com/shish/p/12685865.html

sir节点matlab模型,SIR模型实现(matlab)相关推荐

  1. 【数学建模】Matlab实现SEIR模型

    1974年Hoppensteadt首先在文[1]中建立和研究了具有年龄结构的传染病模型.至今,具有年龄结构的 传染病模型的研究已有许多成果(见[2]-[5]等),但这些模型大多不考虑染病年龄.潜伏期等 ...

  2. arima模型matlab代码_PSTR面板平滑转换模型简介(附Matlab代码分享)

    写论文的时候用到的~相关的资料太少了,做一些简单内容和资料的分享.(PSTR模型的Matlab代码分享在最后)本文主要为简单理论和粗暴实操~ 有用的话可以点个赞哟(知乎小白卑微求赞) 嘻嘻下面进入正题 ...

  3. matlab求迟滞,MATLAB PI迟滞模型问题

    之前我用matlab进行迟滞模型建模,误差非常大,我之前怀疑是自己的参数辨识出问题了,所以我用论文中的阈值向量和权重向量进行建模,输入数据也是用论文数据,但是出来的拟合的线误差非常大,和文献中相差太大 ...

  4. matlab 传感器的迟滞,MATLAB PI迟滞模型问题

    之前我用matlab进行迟滞模型建模,误差非常大,我之前怀疑是自己的参数辨识出问题了,所以我用论文中的阈值向量和权重向量进行建模,输入数据也是用论文数据,但是出来的拟合的线误差非常大,和文献中相差太大 ...

  5. 用matlab简单电路模型,基于MATLAB的电路模型仿真应用

    基于MATLAB的电路模型仿真应用实验指导书 一.实验目的 1.掌握采用M文件及SIMULINK对电路进行仿真的方法. 2.熟悉POWERSYSTEM BLOCKSET 模块集的调用.设置方法. 3. ...

  6. matlab传函零极点形式,2013实验一 MATLAB 中控制系统模型的建立与仿真

    实验一 MATLAB 中控制系统模型的建立与仿真 一. 实验目的 (1)熟悉MATLAB 控制系统工具箱中线性控制系统传递函数模型的相关函数. (2)熟悉SIMULINK 模块库,能够使用SIMULI ...

  7. matlab加热模型,基于MATLAB钢丝感应加热模型及其温度场特性的研究

    <工业加热>第 卷 年第 期 11 热能工程 前 言 自 20 世纪 30 年代,感应加热技术大量应用于工业生产以来,由于感应加热自身的优点和感应加热理论和技术的不断进步,迄今已成为一项节 ...

  8. 数学规划模型总结(附MatLab代码)

    数学规划模型总结(附MatLab代码) 概述 定义 一般形式 分类 线性规划(linear programming) 非线性规划(nonlinear programming) 整数规划(integer ...

  9. arch模型 matlab,ARCH模型(arch模型干嘛的)

    1.ARCH模型(Autoregressive conditional heteroskedasticity model)全称"自回归条件异方差模型",解决了传统的计量经济学对时间 ...

  10. 语音信号调制matlab,第二章 语音信号的数字模型 数字语音处理及MATLAB仿真 教学课件.ppt...

    第二章 语音信号的数字模型 数字语音处理及MATLAB仿真 教学课件 第二章 语音信号的数字模型 2.1 概述 本章重点介绍语音信号产生的数字模型,对语音信号的特性和听觉特性做一般介绍. 2.2 语音 ...

最新文章

  1. 软件测试面试总结——常见的面试问题
  2. 陆奇:不确定的世界需要更多对话,人工智能需要人监督
  3. c语言 坐标系转换 axistoradius,dynamo编程语言翻译.pdf
  4. 【转载】用JS控制输入内容
  5. unity, GL.TexCoord or GL.Color must put before GL.Vertex!!!
  6. OCR系列——总体概述
  7. net java互相调用_Java与.NET的WebServices相互调用
  8. 速修复!Netgear交换机曝3个严重的认证绕过漏洞
  9. DOM(一):节点层次-Node类型
  10. Java ListIterator 与 Iterator 异同
  11. Python中创建守护进程
  12. 无形资产计算机软件包括哪些,什么软件属于无形资产
  13. PSP实机用虚拟机wifi网卡联机
  14. bcm5396交换机级联配置_工业以太网交换机的专业术语汇总
  15. office picture manger图片处理工具下载与安装教程
  16. 做一个商业网站需要准备什么,需要多少钱?
  17. 怎么把PPT压缩到最小?
  18. 前后端齐全的扫码点餐小程序(后端Java)
  19. 计算机图形图像学的专业特性,计算机图形学第1_5章课后习题参考答案
  20. 《数学之美》读书记录【思维导图记录】:第五章,隐含马尔可夫模型

热门文章

  1. 【NodeJs-5天学习】第一天篇② —— 安装NodeJs环境以及VsCode开发工具
  2. 老毛子最想固件,支持打印机了
  3. 千兆8光8电宽温环网工业以太网交换机8光8电全千兆二层管理型宽温工业级环网交换机 光纤自愈环网工业交换机
  4. 搜索的近义词php,挖掘关键词同义的近义词提高排名
  5. 用u盘刻录装服务器系统盘,光盘系统刻录到U盘上教程
  6. 《哥德尔、艾舍尔、巴赫:集异璧之大成》
  7. 投资学翻译及感悟 Lazy Prices
  8. mysql开启url重写_开启URL伪静态的方法
  9. 《现代操作系统(中文第四版)》笔记 第一章 引论
  10. 微信打飞机--Java版