人口增长模型参数估计matlab,人口增长模型及实现(附MATLAB代码)
人口增長(zhǎng)模型及實(shí)現(xiàn)(附MATLAB代碼)
問(wèn)題
一只游船上有800人,一名游客不慎患傳染病,12小時(shí)后有3人發(fā)病,由于船上不能及時(shí)隔離,問(wèn)經(jīng)過(guò)72小時(shí),患此病的人數(shù)。
思路
假設(shè)游客在船上均勻分布,與患者接觸的人都有一定幾率患病,此模型中認(rèn)為患者上、下、左、右四個(gè)單位為與患者接觸的人,而患者分布在每一個(gè)單位時(shí)間都會(huì)變化,由此可得以下代碼:
n=800;%總?cè)藬?shù)
ts=12;
fs=3;
t=0;
f=1;
j=1;
jishu1=1:72;
jishu2=zeros(1,72);
%接觸患病模型
cells=zeros(25,32);
id=randperm(800,1);%初始病人位置
cells(id)=1;
heng=ones(1,32).*0.5;
cells=[heng;cells;heng];
zong=0.5.*ones(27,1);
cells=[zong,cells,zong];
while j<72
i=1;
while i<918 %接觸患病
if(cells(i)==0)
if(cells(i-1)==1||cells(i+1)==1||cells(i-27)==1||cells(i+27)==1)
if(rand
cells(i)=1;
end
end
end
i=i+1;
end
j=j+1;
%患者運(yùn)動(dòng)
fn=length(find(cells==1));
ids=randperm(800,fn);
ce=zeros(25,32);
ce(ids)=1;
cells=ce;
heng=ones(1,32).*0.5;
cells=[heng;cells;heng];
zong=0.5.*ones(27,1);
cells=[zong,cells,zong];
jishu2(j)=fn;
imshow(cells);
hold on
pause(0.1);
end
hold off
plot(jishu1,jishu2)
結(jié)果如下:
總結(jié)
以上是生活随笔為你收集整理的人口增长模型参数估计matlab,人口增长模型及实现(附MATLAB代码)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 电子眼拍原理
- 下一篇: protues 快捷键和元件