减少OpenModelica中的输出变量数量

时间:2017-05-26 13:54:26

标签: modelica openmodelica

我的模型目前约为2000个方程式,模拟周期为几周。我正在使用OpenModelica连接编辑器。

我面临的问题是输出变量数量巨大,而且我的情节窗口崩溃了几次。

因此,问题是如何减少输出变量的数量?

我只对它们中的20-50个感兴趣。我知道我可以通过保护参数输出来删除参数输出,但我无法找到任何类似的变量技巧。

2 个答案:

答案 0 :(得分:1)

如果您通过命令行模拟模型,请查看variableFilter命令https://build.openmodelica.org/Documentation/OpenModelica.Scripting.simulate.htmlsimulate参数。

如果您使用的是OMEdit,请Simulation->Simulation Setup->Output->Variable Filter (Optional)

答案 1 :(得分:0)

实际上,受保护并不限于参数。这是一个复制Modelica.Mechanics.Translational.Examples.SignConvention并保护除了mass1之外的所有内容的示例 在Dymola 2017FD01中以迂腐模式进行测试(所以它也适用于OpenModelica);它工作正常,并且在模拟结果中仅提供mass1参数和变量

model SignConvention "Examples for the used sign conventions."
 extends Modelica.Icons.Example;
 Modelica.Mechanics.Translational.Components.Mass mass1(
   L=1,
   s(fixed=true),
   v(fixed=true),
   m=1) a;

protected
 Modelica.Mechanics.Translational.Sources.Force force1
   a;
 Modelica.Blocks.Sources.Constant constant1(k=1) a;
 Modelica.Mechanics.Translational.Components.Mass mass2(
   L=1,
   s(fixed=true),
   v(fixed=true),
   m=1) a;
 Modelica.Mechanics.Translational.Sources.Force force2
   a;
 Modelica.Blocks.Sources.Constant constant2(k=1) a;
 Modelica.Mechanics.Translational.Components.Mass mass3(
   L=1,
   s(fixed=true),
   v(fixed=true),
   m=1) a;
 Modelica.Mechanics.Translational.Sources.Force force3(useSupport=true)
   a;
 Modelica.Blocks.Sources.Constant constant3(k=1) a;
 Modelica.Mechanics.Translational.Components.Fixed fixed
   a;

equation
...