数学模型基于SEIRS传染病模型matlab源码

Posted MatlabQQ1575304183

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数学模型基于SEIRS传染病模型matlab源码相关的知识,希望对你有一定的参考价值。

 目的 研究一类具有饱和接触率且潜伏期、染病期均传染的非线性SEIRS流行病传播数学模型动力学性质。方法 利用Lasalle不变集原理和Routh Hurwitz判据探讨系统的渐近性态。结果 得到了疾病绝灭与持续的阈值———基本再生数,证明了无病平衡点的全局渐近稳定性和地方病平衡点的局部渐近稳定性,揭示了潜伏期传染的影响。结论 潜伏期有传染的疾病,不但要注意控制染病期的病人,还要注意控制潜伏期的病人。只有这样,才能有效地控制疾病的蔓延。

clear all; clc;
close all;
load('Infectious_data', 'T', 'X'); % load data generated by ODE45
load('prediction'); % Data from NN
X   = X';

% Generate training data
train_size  = 20; % size of trainning data
x_idx   = randperm(1000);
T_train = T(x_idx(1:train_size));
X_train = X(:,x_idx(1:train_size));
Y_train = X(:,x_idx(1:train_size)+1);

%% DMD Main 
% Dynamic mode decomposition: Classic
Ad      = Y_train * pinv(X_train);
[U,S,~] = svd(X_train,'econ');
eig_tru = sum(diag(S)>=0.01*max(diag(S))); % Truncate eigenvalues to reduce noise
U       = U(:,1:eig_tru); 
Ad_til  = U'*Ad*U;
[W,D]   = eig(Ad_til);
Omega   = diag(log(diag(D)));
Phi     = U*W;
c       = W \\ U' * X(:,1);

X_DMD   = zeros(size(X,1),length(T));
for t = 0:length(T)-1
    X_DMD(:,t+1)    = Phi*expm(Omega*t)*c;
end

%% Koopman Main
% Define feature according to Brusselator
Psi = @(x) [x(1); x(2); x(3); x(4); x(5); x(6); x(7); x(1)*x(3); x(1)*x(4); x(1)*x(5)];
Psi_X   = [];
Psi_Y   = [];
for i = 1:train_size
    Psi_X   = [Psi_X,Psi(X_train(:,i))];
    Psi_Y   = [Psi_Y,Psi(Y_train(:,i))];
end

完整代码添加QQ1575304183

 

 

以上是关于数学模型基于SEIRS传染病模型matlab源码的主要内容,如果未能解决你的问题,请参考以下文章

数学建模基于matlab SIR模型新冠病毒COVID-19估计含Matlab源码 2042期

数学建模基于matlab SIR模型新冠病毒COVID-19估计含Matlab源码 2042期

R语言应用实战-基于R浅谈SEIR传染病模型以以及马尔萨斯,logistic模型(推导过程和源代码)

Python数学建模系列:微分方程

疫情模型基于matlab SEIR模型疫情分析预测含Matlab源码 666期

数学建模Matlab实现SEIR模型