Part 6 - 用IDE将结果可视化

学习翻译自:Visualizing the Results - OMNeT++ Technical Articles

①将输出的数值和向量数据可视化(用tictoc15的数据)

OMNET++ IDE支持对结果的分析,包括滤波、处理和展示数值和向量数据,还可以展示直方图。本节之后的图都适用IDE的Result Analysis工具创建出来的。

在项目文件夹中的results目录下包含了.vec和.sca文件,分别存储结果中的vector和数值数据。vector文件中把数据记录为时间的函数,而数值数据只是单纯在仿真结束时把数据集中起来。

在IDE中直接双击打开.vec和.sca文件,就可以进入Result Analysis tool。

Part 7 - Parameter Studies:Tictoc18

学习翻译自:Parameter Studies - OMNeT++ Technical Articles

①目的

我们想要运行一个有不同数量节点的网络仿真,并且观察其中的网络变化。在OMNET++我们可以用parameters studies一次用不同的parameters值运行多个仿真。

我们可以把中心节点变成一个parameter,使用和之前例子中相同的路由算法。最终我们感兴趣的是节点数量如何影响平均跳数。

②使网络拓扑结构参数化(Making the network topology parametric)

为了将整个网络参数化,节点数量将作为NED parameter给出,在本例中为numCentralNodes。这个参数说明了在网络中心环节中有多少个节点——中心节点中不覆盖边缘的两个节点。

包含了边缘4个节点的网络总结点数是numCentralNodes+4。默认的numCentralNodes参数是2,这刚好和我们上一步中定义的网络相匹配。

network TicToc18
{
parameters:
int numCentralNodes = default(2);
types:
channel Channel extends ned.DelayChannel{
delay = 100ms;
}
submodules:
tic[numCentralNodes+4] : Txc18;

现在,我们必须说明连入这个网络的不同数量的节点的信息。首先,一边的两个节点与第三个节点连接,另一边的两个节点也和另一个第三个节点相连接。网络中心节点通过一个for循环连接。从第三个节点开始,每个编号为i的节点都要与编号为i+1的节点相连接:

connections:
//在一边将两个节点连入中心节点
tic[0].gate++ <--> Channel <--> tic[2].gate++;
tic[1].gate++ <--> Channel <--> tic[2].gate++; //中心节点间的互联
for i=2..numCentralNodes+1 {
tic[i].gate++ <--> channel <--> tic[i+1].gate++; //在另一边连接另外两个节点到中心节点
tic[numCentralNodes+2].gate++ <--> Channel <--> tic[numCentralNodes+1].gate++;
tic[numCentralNodes+3].gate++ <--> Channel <--> tic[numCentralNodes+1].gate++;

这里,中心节点数为4(即numCentralNodes = 4)的网络看起来像下边这样:

为了能够运行由多个不同numCentralNodes的节点的仿真网络,我们可以在ini文件中指定变量N的值:

*.numCentralNodes = ${N=2..100 step 2}

③配置parameter study

我们指定了N为从2到100的步长为2的数列。这将生成50个仿真网络。每个网络都可以在GUI中看到,不过仿真的实际通常是通过cmd接口使用Cmdenv 运行时环境运行。

为了提高仿真准确度,我们需要用不同的随机数运行多次运行相同的仿真。这样的运行称为Repetitions并且在ini文件中加以指定:

repeat = 4

这意味着每个仿真都要被运行4次,每次都有不同的seed。这可以提供更多的样本,使结果更加平均。重复的越多,结果将会越来越变成期望的结果。

④运行parameter study

现在,我们可以运行仿真了。首先通过Run -> Run Configurations进入运行配置对话框。

在Run Configurations对话框中,通过设置User interface选中运行环境为Cmdenv。

如果我们有一个多核CPU,你可以就可以指定可以同时运行的网络模拟数。

(完)

omnet++:官方文档翻译总结(五)的更多相关文章

  1. Android官方文档翻译 十五 3.3Supporting Different Platform Versions

    Supporting Different Platform Versions 支持不同的平台版本 This lesson teaches you to 这节课教给你 Specify Minimum a ...

  2. omnet++:官方文档翻译总结(三)

    翻译总结自:Turning it Into a Real Network - OMNeT++ Technical Articles 接官方文档翻译总结(二),本节主要是真实网络的搭建 Part 4 - ...

  3. omnet++:官方文档翻译总结(二)

    这一部分是官方案例介绍 1.Introduction 学习自:Introduction - OMNeT++ Technical Articles 本教程是基于Tictoc的仿真案例,这些案例我们可以在 ...

  4. iOS网络基础---iOS-Apple苹果官方文档翻译

    CHENYILONG Blog iOS网络基础---iOS-Apple苹果官方文档翻译 iOS网络基础 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http: ...

  5. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)中一些知识点

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Flume官方文档翻译--Flume 1.7.0 User Guide (unr ...

  6. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)(二)

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Logging raw data(记录原始数据) Logging the raw ...

  7. 蓝牙4.0——Android BLE开发官方文档翻译

    ble4.0开发整理资料_百度文库 http://wenku.baidu.com/link?url=ZYix8_obOT37JUQyFv-t9Y0Sv7SPCIfmc5QwjW-aifxA8WJ4iW ...

  8. GreenDao官方文档翻译(上)

    笔记摘要: 上一篇博客简单介绍了SQLite和GreenDao的比较,后来说要详细介绍下GreenDao的使用,这里就贴出本人自己根据官网的文档进行翻译的文章,这里将所有的文档分成上下两部分翻译,只为 ...

  9. Aircrack-ng官方文档翻译[中英对照]---Airdecap-ng

    Aircrack-ng官方文档翻译---Airdecap-ng   Description[简介] With airdecap-ng you can decrypt WEP/WPA/WPA2 capt ...

  10. Aircrack-ng官方文档翻译[中英对照]---Airmon-ng

    Aircrack-ng官方文档翻译---Airmon-ng Description[简介] This script can be used to enable monitor mode on wire ...

随机推荐

  1. ql/sql 循环语句、异常处理、事务处理!

    一.ql sql 循环语句? /*1.loop循环 语法: 声明循环变量 loop 判断循环条件 ,如果循环条件不成立,跳出循if 条件表达式 then exit; end if; 语句块; 改变循环 ...

  2. Python PyQt5 | Hi音乐 v3.0.0 正式版发布

    Hi音乐 两大平台全音乐搜索.收听与下载的简洁网络音乐播放器 中文介绍 | English Description 源码:Gitee 码云 简介 Hi音乐 是基于 Python 开发的简洁网络音乐播放 ...

  3. 解决Wordpress提示FTP登录问题

    向wordpress目录的wordpress-config.php中添加 define("FS_METHOD", "direct"); define(" ...

  4. Linux下Mysql报错

    报错内容为:[mysql]ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/ ...

  5. Mac版play框架配置

    打开终端 输入 cd  - 再输入  touch .bash_profile 然后打开 open .bash_profile .bash_profile就是mac的配置文件  export PATH= ...

  6. Linux文件系统与日志分析的了解

    Linux文件系统与日志分析 1.inode和block概述 2.模拟inode耗尽实验 3.ext类型文件恢复 4.xfs类型文件恢复 5.日志文件 6.日志分析 1.文件:文件是存储在硬盘上的,硬 ...

  7. VMware中Ubuntu18配置静态IP地址

    1. VMware:编辑 -> 虚拟网络编辑器 -> 更改设置 2. 取消选中:使用本地DHCP服务将IP地址分配给虚拟机,并记住子网ip 3. 点击NAT设置,记住网关地址 正常情况下V ...

  8. 在MacOS安装puppeteer

    安装node:升级:npm i npm 安装yarn:需要注意先把yarn的流程跑完,特别是package.json 安装puppeteer:yarn add puppeteer 安装完成以后需要重启 ...

  9. 经纬坐标(BLH)数据创建.kml文件小工具设计 Java版

    技术背景 KML,是标记语言(Keyhole Markup Language)的缩写,最初由Keyhole公司开发,是一种基于XML 语法与格式的.用于描述和保存地理信息(如点.线.图像.多边形和模型 ...

  10. 01 前端基础之HTML

    目录 前端基础之HTML HTML简介 如何创建及展示 head内常见标签 body内基本标签 特殊符号 常见标签 标签的两大重要属性 列表标签 表格标签 form表单(很重要) 初次体验前后端交互 ...