【问题标题】:Is it possible to conditionally set equation attributes in Modelica?是否可以在 Modelica 中有条件地设置方程属性?
【发布时间】:2016-08-02 01:31:17
【问题描述】:

我正在研究一个包含多个子系统和大量变量/方程的大型模型。我一直在子系统上使用 protected 属性,因此只有系统级结果在模拟结果中可见。这使得在 Dymola 模拟选项卡或 FMU 输入/输出中查找系统级结果变得更加容易。但在某些情况下,如果还能够看到子系统的完整详细信息,那就太好了。

是否可以根据布尔参数或其他方式有条件地应用 protected 属性?

例如,是否可以像下面的伪代码一样做一些事情?

// Parameter that sets whether or not to use the protected attribute on subsystems.
parameter Boolean useProtected = true;

// Conditionally define the subsystem with or without protected attribute
if (useProtected) then
  protected subsystem subsystem1 = ...
else
  subsystem subsystem1 = ...
end if;

谢谢, 贾斯汀

【问题讨论】:

标签: modelica dymola


【解决方案1】:

参见 HideResult 注释: https://modelica.org/documents/ModelicaSpec33Revision1.pdf

subsystem subsystem1 annotation(HideResult = true / false);

【讨论】:

    【解决方案2】:

    使用 HideResult 是一种可能性 - 另一种是始终使其受到保护,并在您想要调查时存储受保护的变量(“模拟设置>输出>存储附加变量”)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-19
      • 2017-05-28
      • 1970-01-01
      • 1970-01-01
      • 2015-03-01
      • 1970-01-01
      相关资源
      最近更新 更多