2

假设我有一个流体模型,具有初始压力、温度、阀门设置等。

有没有办法运行状态图模拟,其中每个状态都包含模型的新组件参数设置,即某些选定组件的某些参数在一个状态期间更改,并在下一个状态期间再次更改?

例如,在 State1 期间,让我们设置以下组件参数的值:

  • 源压力 = 1
  • 源.温度 = 1
  • 阀门1.开度 = 1

直到 State1 切换到 State2,其中参数为:

  • 源压力 = 0.5
  • 源.温度 = 0.5
  • 阀门1.开度 = 0.5

谢谢你的时间 :-)

4

1 回答 1

2

简短回答:不。对于那个用例,您应该使用离散变量(并使用 when 子句更改它们)。

长答案:从 3.3 版开始,Modelica 有一个新功能,称为状态机(参见规范的第 17 章)。从理论上讲,它应该可以满足您的要求,但由于它很新,它可能仍然存在问题。

您尝试做的事情称为“可变结构建模”(尽管正如我的简短回答所暗示的那样,仅更改参数几乎不是“可变结构”,而是可以使用离散变量来实现)。早在将 StateMachines 引入 Modelica 之前,这是(并且仍然是)一个活跃的研究领域。您还可以使用外部工具来实现您的目标,例如DysMo

于 2015-05-27T16:02:43.540 回答