傳染病模型的元胞自動機實現(xiàn)_第1頁
傳染病模型的元胞自動機實現(xiàn)_第2頁
傳染病模型的元胞自動機實現(xiàn)_第3頁
傳染病模型的元胞自動機實現(xiàn)_第4頁
傳染病模型的元胞自動機實現(xiàn)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、傳染病模型的元胞自動機實現(xiàn)clc;clear all;close all;TT0=;TT1 = ;TT2=;TT3 = ;TT4=;TT5=;TT6=;%= = = = = = = =構(gòu)建元胞網(wǎng)絡(luò)= = = = = = = = = = = = n=100;%網(wǎng)格規(guī)模L=73;%仿真夭數(shù),365/5=73%= = = = = = = = = = = = =參數(shù)設(shè)定= = = = = = = = = = = p1=0.001;%0-1 (易感者-潛伏者)yita=0.001;%5-0 (治愈著-易感者)Step=10;%遷移步長m=0.1;%遷移比倒popu=round(m*n);%每次遷移的人數(shù)

2、 round(X)朝最近的方向取整,對X中的每個元素朝最近的方向取整 T1=1.4;%1-3 (潛伏者-隔離者時間步長) ?T2=2;%2-3(染病著隔離者時間步長) ? T3=3;%隔離時間步長T4=73;%免疫時間步長T5=15;%接種疫苗時間步長 (10-14天表現(xiàn)出癥狀)q1=0.3;q2=0.5;%潛伏者強制隔離閥值?%染病著強制隔離閥值?q3=0.6;%隔離者強制治愈閥值q4=0.9;q5=0.9;%接種疫苗力度?%6-5 (接疫苗者-治愈者)q6=0.5;%1-2q7=0.8;%5-0lambda1=001075;%患者的死亡概率lambda2=000525;%初始化元胞%隔離者

3、的死亡概率people=zeros(n);%初始化人群people(rand(n)p1)=1; %初始化人群 rand(n) 生 成一個n*n階隨機矩陣,元素均勻分布在區(qū)間(0,1)上tt0=; tt1 = ;tt2=;tt3 = ;tt4=;tt5=;tt6=;step1=zeros(n);%狀態(tài)變化后,時間清0step2=zeros(n);step3=zeros(n);step4=zeros(n);step5=zeros(n);for k=1:1S=people;%記錄當(dāng)前人群狀態(tài)S易fi=rand(n);Ri=randn(n);%患者的感染力%易成者抵抗力,randn(n)生成n階隨機矩

4、陣,元素服從均值為0,方差為1的標(biāo)準(zhǔn)正 態(tài)分布Ri(S=0)=0;%僅易感者有抵抗力fi(S=1)=0;%僅患者有傳染力%= = =各步長記錄= step1(S=1)=step1(S=1)+1;% 1 表示刷新一次step2(S=2)=step2(S=2)+1;step3(S=3)=step3(S=3)+1;step4(S=5)=step4(S=5)+1;step5(S=0)=step5(S=0)+1;%= = =各步長清零=step1(S=1)=0;step2(S=2)=0;step3(S=3)=0;step4(S=5)=0;step5(S=0)=0;%= = =各傳染概率=%每個元胞共有8

5、種(上下左右,東南、西南、東北、 西北)鄰居,每種鄰居構(gòu)成一個矩陣ne1=sqrt(1.*fi(n 1:n-1,1:n).*(1-Ri);ne2=sqrt(1.*fi(2:n* u:lxju:lh- H H Hx蝸44-atT-Mn H H BEr.EE USE UDEZotbsn%三(2o%(tu:l US uCNDBfzotbsHzeu _(2o*.(n UCNS UNDB*zotbsH%uf(2o*.(n UNSU 二 UDB*.z0tbsH2u -(20*.(n UNdeB* Ltbs H 寸星(20% (Tu 二uruoH*L)tbsn%u-(WF(U 三 nlnbv(u)pueJP

6、9HH*- 9,0% W 9寸 b V (u) puss- nA&so H H s)e一 d。* -0% W Lnsdv (u) PS won H s)e一 d。*nnn 槊-wQyn HpucuPU(D 三(28 星(2島 (29 圣(eLn性(2%u+(ezeu+(2%u+(2%upeople(S=6&rand(n)q5)=5; %6-5elsepeople(S=6)=0;endpeople(S=1&rand(n)=T1)|(S=1&step1=T1&rand(n)=T2)|(S=2&step2=T2&rand(n) q2)=3;%2-3people(S=2&rand(n)=T3|(S=3

7、&step3=T3&rand(n)q3)=5; %3-5people(S=3&rand(n)=T4&rand(n)=q5)=0; %6-0%= = %=遷移=mo1=randperm(n);%隨機順序randperm(n)返回一個隨機排列的整數(shù)1:nmo2=randperm(n);move1 = mo1(1:popu);mo2(1:popu);%每次移動元胞的位置(i,j)move2=ceil(rand(2,popu)-0.5)*Step);%遷移長度 2個隨機數(shù),移動用的 ceil朝正無窮大方向取整, rand(n,m)生成一個n*m 階隨機矩陣 move2=move1+move2;move

8、2(move2n)=move2(move2n)-n;%減去move2(move21)=move2(move21)+n;%for i=1:popu if people(move1(1,i),move1(2,i)=4 &people(move2(1,i),move2(2,i)=4pc=people(move1(1,i),move1(2,i);people(move1(1,i),move1(2,i)=people(move2(1,i),move2( 2,i);people(move2(1,i),move2(2,i)=pc;%變的是狀態(tài),位置不變endend%= = =求各類人數(shù)和=t0=length

9、(find(people=0); % length(X)計算 向量或矩陣的長度,參量X是向量,直接返回其長度;X為非 空矩陣,返回矩陣乂的行數(shù)和列數(shù)值中的較大值t1=length(find(people=1); % find(k)返回按行 檢索稀疏矩陣X中非零元素的位置索引”向量k 146頁t2=length(find(people=2);t3=length(find(people=3);t4=length(find(people=4);t5=length(find(people=5);t6=length(find(people=6);tt0=tt0 t0;tt1 = tt1 t1;tt2=t

10、t2 t2;tt3 = tt3 t3;tt4=tt4 t4;tt5=tt5 t5;tt6=tt6 t6;% %= = = = = = = = = = = = = = = = = =畫 圖 過程=image(people*20);title(sprintfCRecovered= %.0f,Death=%.0f,t5,t4),fontsize,15);xlabel(sprintfft in %.0f day,k),fontsize,13);drawnow end for k=2:LS=people;%記錄當(dāng)前人群狀態(tài)S易感者fi=rand(n);%患者的感染力Ri=randn(n);%易感者抵抗力

11、,randn(n)生成n階隨機矩陣,元素服從均值為0,方差為1的標(biāo)準(zhǔn)正 態(tài)分布Ri(S=0)=0;fi(S=1)=0;%僅易感者有抵抗力%僅患者有傳染力O*H&)寸 d# o*n&)md2is ozn&)zd2is oHaHALd# HHH41&M 聞確 二+(0H 日。2#0日 glnd# 二+(lnH ns)寸 dss * H ns)寸 d# 二+(m H ns) mdss * H ns) md# WHS)CNdals ns) zd# 夾 I毒黎暗襟 Lg 二+(LHHS)Ldalsn(Lnns)LdalsH H H瞄2個略瘵n H ngUS Ea)B%z6tbsnz 留 f(2o%(n

12、esl UNDH*zowbsn%E(2o%(n UNrFEL UDB*.zotbsn%u B甲r.(n UNdeLtbs H 寸 eE (20% (Fu 二urueLketbsnm 性a&o%?二 l uCNDBfDtbsn% 三(&o%(u 三Tu 二 UDBfDtbsnau世黑-1表案嚶亭策慚八嚶手SF的 ,*,碓嫩,碓*策8oH(OH&)sd(DAS1:n-1).*(1-Ri);ne8=sqrt(0.7.*fi(n 1:n-1,n 1:n-1).*(1-Ri);%=選出上述矩陣中各個位置的最大值=for i=1:nfor j=1:n%Pij(i,j)=ne1(i,j)+ne2(i,j)+

13、ne3(i,j)+ne4(i,j)+.%ne5(i,j)+ne6(i,j)+ne7(i,j)+ne8(i,j);Pij(i,j)=max(ne1(i,j),ne2(i,j),ne3(i,j),ne4(i,j),.ne5(i,j),ne6(i,j),ne7(i,j),ne8(i,j);endend%=演化過程=people(S=0&rand(n)Pij)=1; %0-1people(S=1&rand(n)=T1)|(S=1&step1v=T1&rand(n)vq1)=3;%1-3潛伏者變成隔離者 people(S=2&step2=T2)|(S=2&step2v=T2&rand(n)q2)=3;%

14、2-3people(S=2&rand(n)=T3|(S=3&step3=T3&rand(n)q3)=5; %3-5people(S=3&rand(n)=T4&rand(n)=q5)=0; %6-0%= = %=遷移=mo1=randperm(n);%隨機順序randperm(n)返回一個隨機排列的整數(shù)1:nmo2=randperm(n);move1 = mo1(1:popu);mo2(1:popu);%每次移動元胞的位置)move2=ceil(rand(2,popu)-0.5)*Step);%遷移 長度 2個隨機數(shù),移動用的ceil朝正無窮大方向取整, rand(n,m) 生成一個n*m 階隨

15、機矩 陣move2=move1+move2;move2(move2n)=move2(move2n)-n;%減去move2(move21)=move2(move21)+n; %for i=1:popu if people(move1(1,i),move1(2,i)=4 & people(move2(1,i),move2(2,i)=4 pc=people(move1(1,i),move1(2,i);people(move1(1,i),move1(2,i)=people(move2(1,i),move2( 2,i);people(move2(1,i),move2(2,i)=pc;%變的是狀態(tài),位置不

16、變 end end %= = =求各類人數(shù)和= t0=length(find(people=0); % length(X)計算向量或矩陣的長度,參量X是向量,直接返回其長度;乂為非空矩陣,返回矩陣乂的行數(shù)和列數(shù)值中的較大值t1=length(find(people=1); % find(k)返回按行 檢索稀疏矩陣X中非零元素的位置索引”向量k 146頁 t2=length(find(people=2);t3=length(find(people=3);t4=length(find(people=4);t5=length(find(people=5);t6=length(find(people=6);tt0=tt0 t0;tt1 = tt1 t1;tt2=tt2 t2;tt3 = tt3 t3;tt4=tt4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論