如何在OMNET ++中指定输出文件名和命令行参数?

时间:2020-02-26 07:31:03

标签: c++ omnet++

通常,OMNeT ++输出文件名是workloadType-#r.scaworkloadType-#r.vec。我们想使用不同的命令行参数运行不同的模拟,以找到最佳的最佳模拟参数。因此,我们希望输出文件名可以与命令行参数区分开。

例如:
如果我有-arg1 8 -arg2 12,我们希望有workloadType-#r-8-12.sca。因此,我们知道哪个文件来自哪个模拟。当然,我们可以一次运行每个以手动标记它们。但这是太多的工作。如果可以在OMNeT ++中指定输出文件名,则可以使过程自动化并同时运行许多模拟。提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用output-scalar-fileoutput-vector-file配置选项(从命令行即--output-scalar-file或INI文件中使用)。默认情况下,其值为${resultdir}/${configname}-${iterationvarsf}#${repetition}.sca,因此通常,如果您具有不同的迭代变量值,则将获得不同的文件名。

有关详细信息,请参见手册:https://doc.omnetpp.org/omnetpp/manual/#sec:config-options:config-options

我不确定arg1到底是什么,但是我的感觉是您在做应该做不同的事情。仿真结果应该取决于配置名称和迭代变量值(以及初始种子),并且所有这些变量已经是文件名的一部分。

或者从另一个角度来看:如果模拟结果取决于-r-c以外的命令行参数,那么您可能做错了。