是否可以在 omnet++/Veins 项目中使用 RInside 来受益于丰富的 R 功能

2024-01-05

我正在学习 R 并通过这个名为RInside https://cran.r-project.org/web/packages/RInside/index.html它提供了 C++ 类来调用嵌入式 R 解释器。我可以按照配置后运行一些示例这篇博文 http://blog.fellstat.com/?p=170并使用 Omnet++ eclipse IDE 中提供的 makefile。我们如何将它与静脉集成(静脉已经在顶级目录和 src 目录中自动生成了 makefile)? Rinside 需要 GCC 工具链,我认为这是 OMNeT++ 中的默认工具链。

根据我迄今为止所了解到的情况,这些是选项:

  1. Omnet++ user manual says we can use custom makefile for some source directory. So keeping RInside code in one source folder and a separate makefile and calling this makefile from veins top level makefile. I tried both of these approaches:
    1. 从 RInside 示例和 makefile 复制一些源文件,并更改 IDE 中的构建属性以从构建中排除此文件夹
    2. 还为此目录使用了选项 custom make file。但到目前为止还没有成功。可能是我做得不正确。
  2. 使用 Rinside 实现所有功能并使其成为一个库(静态/共享)。充分利用这个图书馆。

到目前为止,有人尝试将它与基于 omnet++/veins 的项目一起使用吗?有谁知道是否值得尝试?欢迎任何其他建议。

我使用的是 Ubuntu 16.04 LTS 64 位。


您真的想在 OMNeT++ 中使用 R,还是想要进行结果/数据分析?


结果分析

您能否提供一些有关您想要做什么/为什么尝试在 OMNeT++ 中使用 R 而不是在模拟完成后执行后处理步骤的信息?一般来说,我建议将后处理与模拟分开,使用 OMNeT++ 中的统计收集库在结果中生成相关数据,并使用 R 处理这些数据。您可以找到一些与Plexe http://plexe.car2x.org/,一个基于 VEINS 的 CACC 应用模拟器,这个存储库 https://github.com/michele-segata/plexe-data-extraction。我个人更喜欢使用 python 进行后处理,但如果您已经熟悉 R,那么我建议您看看它。


与 VEINS 整合

如果您确实想这样做,我建议您问题中使用第二种方法,即简单地动态链接到 RInside 库作为系统库并将它们指定为依赖项。这基本上是让事情发挥作用的最简单方法。

但是,如果由于某种原因您想要显式链接该库,您应该意识到 VEINS 的构建过程依赖于配置脚本 https://github.com/sommer/veins/blob/master/configure包含在分发中。它与普通 C++ 程序的工作方式不同之处在于,OMNeT++ 模拟应该使用 OMNeT++ 提供的构建opp_makemake工具:这正是 VEINS 配置脚本的作用。如果您想在构建过程中包含其他库路径,最简单的方法是使用以下命令创建 makefile./configure --include PATH/TO/RINSIDE/HEADERS。更多细节请参考脚本源代码

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以在 omnet++/Veins 项目中使用 RInside 来受益于丰富的 R 功能 的相关文章

  • omnet++,veins,sumo使用多应用层实现车辆和行人的模拟

    1 完成网络的搭建 xff1a 搭建一个简单的十字路口场景 xff1a 1 xff09 定义结点 xff1a 新建intersection node xml 内容如下 xff1a NOTE1 xff1a 结点属性type 61 34 tra
  • tictoc例子理解 16-18

    tictoc16 18 tictoc 16 全局信号signal tictoc 17 在仿真界面幕布上显示总条数信息 tictoc 18 tictoc 16 全局信号signal 前一步的主要问题是 如果我们想要更改所收集的统计信息 就必须
  • 静脉中的行人模拟 (omnet++/sumo)

    我正在尝试在 omnet 中运行相扑行人模拟 为了保持简单 我是初学者 我决定使用Erlangen示例提供了静脉并用几个行人扩展它 我添加了相扑中的行人并运行它 它工作得很好 你可以看到这张照片中的行人和汽车 接下来我尝试在 omnet 中
  • 将静脉坐标转换为 GPS

    我正在使用从以下位置导入的真实街道网络打开街道地图用于静脉模拟 例如卢森堡情景来自拉拉 科德卡 现在 为了准备可视化 使用 Google Earth 我想将模拟中的车辆位置从 SUMO 或 OmNET 坐标导出到 GPS 坐标 作为材料 我
  • 使用 omnet++ 查找内存分配错误

    我正在 omnet 和静脉 v2 0 rc1 下进行网络模拟 为此我实验了 4 个场景 每个场景都重复 20 次 在模拟第三个和第四个场景时 我遇到了一些错误 我猜这是一个内存分配错误 它们共享一个共同的功能 ack 对于相关模拟 它正常启
  • OMNET++:如何获取无线信号功率?

    我正在使用新发布的 OMNET 的 INET 4 0 框架 我想获取无线主机 AdhocHost 类型 中接收到的信号强度值 我该怎么做呢 In INET4 0 0 模块收到的数据包包含几个tags 其他人之间有SignalPowerInd
  • omn​​et++/veins:连接inet和veins:TraCIScenarioManagerLaunchd中的TraCIMobility错误

    我正在尝试连接 inet 3 4 0 和静脉 4 4 以获得 Tcp Ip 支持 我已按照这些说明进行操作 静脉 INET 兼容性 甚至更多 但我在尝试运行模拟时遇到此错误 我不确定是否理解 TraCIMobility 函数 Error i
  • RSU 静脉放置/SUMO

    如果我知道 RSU 将在 SUMO 中放置的坐标 如何将其转换为 omnet 的坐标 我知道 SUMO 的坐标系与 omnet 不同 我应该使用内部函数 traci2omnet 中使用的方程将其离线转换 在开始模拟之前 吗 我尝试过这个 但
  • 如何将标准容器作为字段添加到 OMNet++ 消息中?

    我正在尝试创建一个简单的消息定义包含一个使用实现的字段std vector 根据OMNet 5 5 手册第 1 章6秒 8 1 这看起来很简单 However I m using OMNet 6 0pre6 I can t figure o
  • 允许 RSU 在 Veins 中接收消息

    我正在尝试在 Veins OMNeT SUMO 上实现一个非常简单的场景 只需三辆车和一个独特的固定 RSU 但我是 Veins 的新手 尽管有大量文档 但我无法很好地移动 常见问题解答和教程我已经读过 我的起点是默认的 TraCI 场景演
  • 静脉如何在简单路径损耗模型中计算 RSSI?

    我们正在开发一个基于 Veins 框架的应用程序 它需要接收信号的 RSSI 值以及发送器和接收器之间的距离 我们参考了 VeReMi 项目 它也计算 RSSI 值并将其发送到上层 我们将模拟结果 RSSI 与距离 与 VeReMi 数据集
  • loadNamespace(name) 中的错误:没有名为“Rcpp”的包

    我试图将 RInside 嵌入到 win7 64 位系统上的应用程序中 但是当我初始化 RInside 时 Rin new RInside argc argv 将出现以下消息 loadNamespace name 中的错误 没有名为 Rcp
  • 在Windows上编译RInside程序[重复]

    这个问题在这里已经有答案了 可能的重复 Windows下编译RInside示例的问题 https stackoverflow com questions 5650063 problem with compiling rinside exam
  • 是否可以在 omnet++/Veins 项目中使用 RInside 来受益于丰富的 R 功能

    我正在学习 R 并通过这个名为RInside https cran r project org web packages RInside index html它提供了 C 类来调用嵌入式 R 解释器 我可以按照配置后运行一些示例这篇博文 h
  • 如何在 OMNeT++ 仿真过程中更改网络配置?

    我想修改element的一些参数 iniOMNeT 中的文件 例如模拟运行期间节点的传输速率 例如当节点收到一些控制消息时 我发现信息表明可以以某种方式循环配置 如下所示 一些变量 几个值 但是里面没有条件子句 ini文件 并且无法将来自
  • Veins 中汽车和行人之间的通信

    我想知道如何在 Veins 中创建汽车和行人之间的无线通信 V2P 感谢您的关注 Veins 允许为其从 SuMO 获得的车辆类型指定模块 静脉 多种车辆类型的多种应用 https stackoverflow com questions 4
  • 如何在 OMNeT++ 中创建随机连接图?

    我正在尝试创建一个具有随机连接节点的图 节点应该随机连接 如果一个节点已经连接到另一个节点 则不应使用不同的连接再次连接到同一节点inout port 在文档中 https doc omnetpp org omnetpp manual se
  • OMNET++:在命令行中运行模拟

    在我的 omnetpp ini 文件中 有以下几行描述 cmdenv General cmdenv express mode false cmdenv output file log txt cmdenv autoflush true cm
  • 尝试使用 INET 引用创建新项目,在 .msg 文件中得到:“unexpected NAME, waiting $end”

    我创建了一个项目 其中包含我的链路层和模拟源代码 该项目以 INET 作为项目参考 在构建时 我收到此错误 错误 语法错误 意外的名称 期望 end 它来自消息文件 包含消息类型 import inet common INETDefs 我的
  • 关于 VEINS 中的车辆编号

    我使用 duarouter 修改了 erlagen rou xml 来获取车辆的随机路线 它看起来像这样

随机推荐

  • 如何在 C 中将 double 转换为 int?

    double a a 3669 0 int b b a 我在 b 中得到 3668 而不是 3669 我该如何解决这个问题 如果有 3559 8 这样的我也想要 3559 而不是 3560 我怀疑你不知道actually有这个问题 我怀疑你
  • 同义词分析器不工作

    这是我的设置 countries aliases mappings country properties countryName type string settings index creation date 1472140045116
  • (Perl) 从文件读取字符串时是否可以插入变量?

    我正在编写一个脚本 其中有一些变量传递给字符串 然后将它们打印出来 初始字符串只有 6 行 我不需要外部文件 但现在我有了一个可以填充 1000 多行的新字符串 新字符串还有一些字段将被脚本中声明的变量替换 文本文件内容如下 Hello n
  • 如何在 Android 中以编程方式锁定屏幕? [复制]

    这个问题在这里已经有答案了 可能的重复 以编程方式锁定 Android 设备 https stackoverflow com questions 4545079 lock the android device programatically
  • 在 Docker 中向 Golang 应用程序发送信号

    我正在尝试在 docker 容器内运行用 golang 编写的服务器 例如 package main import net http func main http HandleFunc func w http ResponseWriter
  • Javascript 从 UIWebView 调用 Swift

    我正在尝试从 UIWebView 中的 javascript 函数调用 iOS 10 中的 Swift 我设置了一个非常基本的项目只是为了尝试使其正常工作 代码如下 import UIKit class ViewController UIV
  • django 变量可用于所有视图

    使用 context processors 可以轻松定义一个可调用的结果变量可供所有模板使用 是否有任何类似的技术可以使变量可用于所有视图 这有可能吗 也许有一些解决方法 姜戈 2 2 蟒蛇 3 5 3 您可能想要实现自定义中间件 http
  • 如何终止 Neo4j 中当前长时间运行的查询

    如何终止 Neo4j 中当前长时间运行的查询 无需重新启动服务器 我知道我们可以在全球范围内设置查询超时 https groups google com forum topic neo4j 5ec8FThLTeo 但有时我想在服务器上执行繁
  • vbs安静而优雅的taskkill所有chrome进程

    这段代码有什么办法吗 Dim oShell Set oShell WScript CreateObject WScript Shell oShell Run taskkill im chrome exe 0 True 我希望它关闭所有正在运
  • 如何在ajax中调用Struts2 Action方法?

    如何在ajax中调用Struts2 Action方法 现在我仍然在调用servlet 有没有可能 如果有请分享 更新struts xml as
  • Gtk ComboBox 宽度基于内容

    我正在动态地将选项填充到具有条目的 GTK3 ComboBox 有些选项可能会很长 如果我的模型中有宽的项目 我希望能够使组合框更宽 有没有办法做到这一点 如果组合框可以自动扩展但可以设置上限 那就太好了 None
  • 鼠标滚轮事件与悬停控件一起使用

    在我的 C 3 5 Windows 窗体应用程序中 我有一些 SplitContainer 每个内部都有一个列表控件 停靠填充 当焦点位于这些控件之一并且我移动鼠标滚轮时 现在获得焦点的列表会滚动 我的任务是滚动当前由鼠标悬停的列表 而不是
  • neo4j 和 max 打开文件

    我在 ubuntu 上使用 neo4j 1 8M06 当我启动它时 我收到此警告 WARNING Max 1024 open files allowed minimum of 40 000 recommended 这是什么意思 如果需要的话
  • WordPress 函数获取帖子的顶级类别?

    您好 我正在尝试找到帖子的最高类别 我尝试查找任何 WP 内置函数 但失败了 例如我有这样的类别 Parent sub 1 sub 2 我在 sub 2 中有一个帖子 因此 使用 sub 2 的 ID 我试图找到本例中名为 Parent 的
  • PHP 中是否有 Java HashMap 等效项?

    我需要类似于Java中的HashMap的PHP对象 但我在谷歌搜索时没有找到 所以如果有人知道我如何在PHP中模仿HashMap 我们将不胜感激 PHP 中的数组可以具有键值结构
  • Ubuntu 上的 Java 进程一直被某些东西杀死,有人知道为什么吗?

    所以每隔几天我在 Ubuntu 上的 java 进程就会自动终止 我不明白为什么 我的盒子有 35 84 GB 的 RAM 当我启动 Java 进程时 我向它传递了 Xmx28g 参数 因此它使用的内存应该小于可用的最大 RAM 我运行 j
  • 如何检查DataFrame单元格中是否存在字符

    创建三行 DataFrame 后 import pandas as pd df pd DataFrame a 1 2 3 4 5 6 我检查是否有任何单元格等于 3 4 df a 3 4 Since df a 3 4 命令结果到pandas
  • UITableViewCell、UITextView 具有动态高度

    我需要做一个UITableViewCell其中包含大量文本 我知道我可以添加一个UITextView到我的单元格 但每个条目的文本量不同 我知道我可以控制高度UITableViewCell with CGFloat tableView UI
  • 我不明白 twitter bootstrap span 和 row

    我是 960 网格系统的大用户 我想我会尝试一下推特引导程序 http twitter github com bootstrap 但也许这是一个愚蠢的问题 你可以嘲笑我并对我投反对票 但事实是我不明白跨度和行 所以我的问题是 当我创建一个容
  • 是否可以在 omnet++/Veins 项目中使用 RInside 来受益于丰富的 R 功能

    我正在学习 R 并通过这个名为RInside https cran r project org web packages RInside index html它提供了 C 类来调用嵌入式 R 解释器 我可以按照配置后运行一些示例这篇博文 h