单源节点、多目标节点中选择最近的sink节点传输
来源:互联网 发布:sql server入门经典 编辑:程序博客网 时间:2024/06/01 23:08
实验目标:在第三章原有的模型上,加入多个SINK节点,选择最近的SINK节点进行数据包的传输。
具体实施过程:
1.在理解模型的整体结构的情况下,我增加了几个变量。
//目标节点数量
int GlobalSinkNum[1];
//最终目标节点ID
int FinalGlobalSinkID[1];
//最终目标节点数组下标
int FinalNumID[1];
//目标节点地址和坐标(将这几个变量改为了数组)
int GlobalSinkID[801];
double GlobalSinkX[801];
double GlobalSinkY[801];
同时在SinkInit,NodeInit,functionblock,GPSR,以及NotifyAppSendData和statevariables修改了相应的代码。
下面这段代码的功能是求出离SRC节点最近的Sink节点
TemSrcToSinkDistance=1410;
for(i=1 ;i<= GlobalSinkNum[0];i++)
{
q = sqrt((GlobalSrcX -GlobalSinkX[i])*(GlobalSrcX - GlobalSinkX[i]) + (GlobalSrcY -GlobalSinkY[i])*(GlobalSrcY - GlobalSinkY[i]));
if(q<TemSrcToSinkDistance)
{
TemSrcToSinkDistance=q;
FinalGlobalSinkID[0]=GlobalSinkID[i];
FinalNumID[0]=i;
}
}
SrcToSinkDistance=TemSrcToSinkDistance;
补充说明 //目标节点数量
int GlobalSinkNum[1];
//最终目标节点ID
int FinalGlobalSinkID[1];
//最终目标节点数组下标
int FinalNumID[1];
将这几个作为数组,是为了后面进行模型改动的时候比较方便。
- 单源节点、多目标节点中选择最近的sink节点传输
- javascript中节点的最近的相关节点
- 二叉树中两个子节点的最近公共节点
- 二叉树中两个节点的最近公共父节点
- 二叉树中两个节点的最近父节点
- 二叉树中两个节点的最近公共父节点
- 二叉树中两个节点的最近公共父节点
- 二叉树中两个节点的最近公共父节点
- 二叉树中两个节点的最近公共祖先节点
- 二叉树中两个节点的最近公共祖先节点
- 二叉树中两个节点的最近公共节点
- 二叉树中两个节点的最近公共祖先节点
- 二叉树中两个节点的最近公共父节点
- 二叉树中两个节点的最近公共祖先节点
- 二叉树中两个节点的最近公共父节点
- 找寻二叉树中两个节点的公共父节点中最近的那个节点
- 找寻二叉树中两个节点的公共父节点中最近的那个节点
- 找寻二叉树中两个节点的公共父节点中最近的那个节点
- Python使用HTTP2实现苹果原生推送
- 怎么去除pdf文件中的加密
- 绝对精品—史上最全最权威的Android Studio插件整理
- C# 常用加密方式二种
- 1、编写程序,输入一个四位数,打印输出其个位数、十位数、百位数和千位数。
- 单源节点、多目标节点中选择最近的sink节点传输
- 在asp.net环境下使用Protocol Buffer
- Linus Benedict Torvalds
- 构建高并发高可用的电商平台架构实践(2)
- QGroundControl Developers Guide——Font and Palette
- Oracle删除用户及表空间
- css3类的顺序对过渡效果的影响
- RTSP交互过程
- 拙于言的痛苦