91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 9KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-05-19
  • 語言: Matlab
  • 標簽:

資源簡介

在matlab上仿真運行,結(jié)果比LEACH算法表現(xiàn)更好。

資源截圖

代碼片段和文件信息

clear;%清除內(nèi)存變量

xm=100;%x軸范圍
ym=100;%y軸范圍

sink.x=0.5*xm;%基站x軸
sink.y=0.5*ym;%基站y軸

n=100;%節(jié)點總數(shù)

p=0.4;%簇頭概率

E0=0.02;%初始能量
ETX=50*0.000000000001;%傳輸能量,每bit
ERX=50*0.000000000001;%接收能量,每bit
Efs=10*0.000000000001;%耗散能量,每bit
EDA=5*0.000000000001;%融合能耗,每bit

cc=0.6;%融合率

rmax=300;%總輪數(shù)

CM=32;%控制信息大小
DM=4000;%數(shù)據(jù)信息大小

figure(1);%顯示圖片

%畫出隨機生成的節(jié)點
for?i=1:1:n
????S(i).xd=rand(11)*xm;
????S(i).yd=rand(11)*ym;
????S(i).G=0;%每一周期結(jié)束此變量為0
????S(i).E=E0;%設(shè)置初始能量為E0
????S(i).type=‘N‘;%節(jié)點類型為普通
????S(i).qtype=‘O‘;
????plot(S(i).xdS(i).yd‘o‘);
????hold?on;%保持所畫的圖像
end%為每個節(jié)點隨機分配坐標,并設(shè)置初始能量為E0,節(jié)點類型為普通

%畫出分區(qū)框
x1=0:sink.x/50:xm;
y1=sink.y;
x2=sink.x;
y2=0:sink.y/50:ym;
plot(x1y1‘b-.‘x2y2‘b-.‘);
hold?on

%畫出SINK節(jié)點
S(n+1).xd=sink.x;
S(n+1).yd=sink.y;
plot(S(n+1).xdS(n+1).yd‘*‘);%繪制基站節(jié)點

flag_first_dead=0;%第一個死亡節(jié)點的標志變量

%stop

figure(2)
%分區(qū)算法
%畫出分區(qū)框
x1=0:sink.x/50:xm;
y1=sink.y;
x2=sink.x;
y2=0:sink.y/50:ym;
plot(x1y1‘b-.‘x2y2‘b-.‘);
hold?on
for?i=1:1:n
???if((S(i).xd<=50)&&(S(i).yd>=50))
??????plot(S(i).xdS(i).yd‘go‘);
??????hold?on
??????S(i).qtype=‘A‘;
????end
????if((S(i).xd<=50)&&(S(i).yd<50))
???????plot(S(i).xdS(i).yd‘yo‘);
???????hold?on
???????S(i).qtype=‘B‘;
?????end
?????if((S(i).xd>50)&&(S(i).yd>=50))
????????plot(S(i).xdS(i).yd‘bo‘);
????????hold?on;
????????S(i).qtype=‘C‘;
?????end
?????if((S(i).xd>50)&&(S(i).yd<50))
?????????plot(S(i).xdS(i).yd‘ro‘);
?????????hold?on;
?????????S(i).qtype=‘D‘;
?????end
end
plot(S(n+1).xdS(n+1).yd‘*‘);%繪制基站節(jié)點
hold?on

%stop%程序調(diào)試斷點

%開始每輪循環(huán)
for?r=1:1:rmax
??r+1%顯示輪數(shù)
????if(mod(r15)==0)
???????for?i=1:1:n
???????????S(i).G=0;
???????end
????end%如何輪數(shù)正好是一個周期的整數(shù)倍,則設(shè)置S(i).G為0

?????hold?off;%每輪圖片重新繪制
?????cluster=0;%初始簇頭數(shù)為0
?????dead=0;%初始死亡節(jié)點數(shù)為0
?????

?????A_c=0;
?????B_c=0;
?????C_c=0;
?????D_c=0;
?????
?????figure(3);
?????
?????x1=0:sink.x/50:xm;
?????y1=sink.y;
?????x2=sink.x;
?????y2=0:sink.y/50:ym;
?????plot(x1y1‘b-.‘x2y2‘b-.‘);
?????hold?on

?????
?????
????%stop%GAF算法調(diào)試點
?????%GAF算法的具體實現(xiàn)
?????for?i=1:1:n
?????????if((A_c>=1)&&(B_c>=1)&&(C_c>=1)&&(D_c>=1))
?????????????break;
??????????end
??????????if(S(i).E>0)
??????????????if(S(i).G<=0)
??????????????????temp_rand=rand;
??????????????????if(temp_rand<=(p/(1-p*mod(rround(1/p)))))%如果隨機數(shù)小于等于
?????????????????????if(S(i).qtype==‘A‘)
??????????????????????????if(A_c<2)
?????????????????????????????????A_c=A_c+1;
?????????????????????????????????S(i).type=‘C‘;
?????????????????????????????????S(i).G=round(1/p)-1;
?????????????????????????????????cluster=cluster+1;
?????????????????????????????????C(cluster).xd=S(i).xd;
?????????????????????????????????C(cluster).yd=S(i).yd;
?????????????????????????????????plot(S(i).xdS(i).yd‘k*‘);
?????????????????????????????????hold?on;
?????????????????????????????????distance=sqrt((S(i).xd-(S(n+1).xd))^2+(S(i).yd-(S(n+1).yd))^2);
?????????????????????????????????

評論

共有 條評論

相關(guān)資源