元胞自动机对传染病模型的模拟

人群种类分为:病人,潜伏期患者,移出者,群体移出者,死亡者和健康者。
在这里插入图片描述
病毒传播模型的动态模拟
在治愈率相对较低与防控措施不齐全的前提下,通过Matlab对病情的传播进行了模拟。
在这里插入图片描述

图 五 7病毒传播动态模拟图(1)

病情初始,病毒在人群中爆炸式扩散,大部分人群被病毒感染。
在这里插入图片描述

% 在Matlab中模拟病毒的传播模型
% 数值的建立
M=100;              % 尺寸大小
beta=0.05;          % 感染率
gama=0.01;          % 免疫能力
% 建立网格
y = zeros(M, M);    % 网格x元素的意思是: 0是健康人,1使感染者,2免疫者
% 设置初始网格x,在网格的中心有一圈感染者,半径为10个细胞
for i=1:M
    for j=1:M
        dxx = i-M/2;
        dyy = j-M/2;
        d = sqrt(dxx*dxx+dyy*dyy);
        if ( d<10 )
            y(i,j)=1;
        end
    end
end
% 定义社区,也就是最近的8个邻居
lingju = [-1 -1; 0 -1; 1 -1; 1 0; 1 1; 0 1; -1 1; -1 0];
% 创造一个新的窗口
figure
hold on
% 主循环,迭代时间变量t
for t=1:100000
    % 遍历网格 x 中的所有单元格,对于索引 i 1从n 和 j 从1到 n
    for i=1:M
        for j=1:M
            % 在邻居之间来回走动,传播疾病
            for k=1:8
                i2 = i+lingju(k, 1);
                j2 = j+lingju(k, 2);
                % 检查细胞是否在网格边界内
                if ( i2>=1 && j2>=1 && i2<=M && j2<=M )
                    %如果细胞处于易感状态和邻近细胞
                    % 被感染的传播感染的概率是beta
                    if ( y(i,j)==0 && y(i2, j2)==1 )
                        if ( rand<beta )
                            y(i,j) = 1;
                        end
                    end
                end
            end
            % 如果被感染的人能够以伽马的概率从疾病中康复
            if ( y(i,j)==1 && rand<gama )
                y(i,j) = 2;
            end
        end
    end
    % 动态模拟
    clf
    imagesc(y, [0 2])                   % 网格展示
    pause(0.01)                         % 暂停0.01s
    colormap([1 0 1; 1 1 0; 1 1 1]);    % 定义012分别对应的颜色
    % 如果没有更多的感染者,就停止模拟
    if ( sum(y==1)==0 )
        break;
    end
end
%
  • 10
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原创小白变怪兽

帮助原创小白成为怪兽吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值