packetLe
gthdista
cedista
cedista
cedista
ce
elseSiESiEETXEDApacketLe
gthEfs
packetLe
gthdista
cedista
cee
dpackets_TO_BSpackets_TO_BS1PACKETS_TO_BSr1packets_TO_BS
e
d
e
de
de
d
STATISTICSr1CLUSTERHEADScluster1统计第r轮簇头数目r是从0开始的所以加1cluster最后要1是应为上面的循环多加了1CLUSTERHSr1cluster1
Electio
ofAssociatedClusterHeadforNormalNodesfori11
ifSitypeNSiE0普通节点mi
_dissqrtSixdS
1xd2SiydS
1yd2
默认距离是到si
k的距离mi
_disi
fifcluster11如果有簇头存在mi
_dis_cluster1加入最近的簇头forc11cluster1簇头数量一共是cluster1tempmi
mi
_dissqrtSixdCcxd2Siyd
Ccyd2tempsqrtSixdCcxd2SiydCcyd2iftempmi
_dismi
_distempmi
_dis_clusterce
d接收簇头发来的广播的消耗SiESiEETXctrPacketLe
gth
e
d
fE
ergydissipatedbyassociatedClusterHead普通节点发送数据包到簇头消耗和加入消息
mi
_disifmi
_disdo
SiESiEETXctrPacketLe
gthEmpctrPacketLe
gthmi
_dismi
_dismi
_dismi
_dis向簇头发送加入控制消息
SiESiEETXpacketLe
gthEmppacketLe
gthmi
_dismi
_dismi
_dismi
_dis向簇头数据包
elseSiESiEETXctrPacketLe
gth
EfsctrPacketLe
gthmi
_dismi
_dis向簇头发送加入控制消息SiESiEETXpacketLe
gth
EfspacketLe
gthmi
_dismi
_dis向簇头数据包e
dSiESiEETXctrPacketLe
gth接收簇头确认加入控制消息
E
ergydissipated簇头接收簇成员数据包消耗能量接收加入消息和和确认加入消息
ifmi
_dis0SCmi
_dis_clusteridESCmi
_dis_clusteridE
ERXEDApacketLe
gth接受簇成员发来的数据包SCmi
_dis_clusteridESCmi
_dis_clusteridEERX
ctrPacketLe
gth接收加入消息ifmi
_disdo簇头向簇成员发送确认加入的消息SCmi
_dis_clusteridESCmi
_dis_clusteridE
ETXctrPacketLe
gthEmpctrPacketLe
gthmi
_dismi
_dismi
_dismi
_dis
elseSCmi
_dis_clusteridESCmi
_dis_clusteridE
ETXctrPacketLe
gthEfsctrPacketLe
gthmi
_dismi
_dise
d
PACKETS_TO_CHr1
deadcluster1所有的非死亡的普通节点都发送数据包
e
d
Simi
_dismi
_disSimi
_dis_clustermi
_dis_cluster
e
de
de
d
fcou
tCHsrcou
tCHsrcou
tCHscou
tCHs
vxvyvoro
oiXYplotXYredvxvygholdo
voro
oiXYaxis0xm0yme
d
fori11
ifSiE0plotSixdSiydkholdo
plotS
1xdS
1ydrpe
d
e
d
fori11
ifSiE0plotSixdSiydrholdo
e
d
e
dr