OpenModelica';中的状态集变量的用途是什么;s结果变量浏览器

OpenModelica';中的状态集变量的用途是什么;s结果变量浏览器,modelica,openmodelica,Modelica,Openmodelica,当我模拟下面的模型时,我得到了标记为$STATESET1的附加变量,这些变量显然是自动生成的 从用户的角度来看,这些变量的用途是什么?一般来说,我只对解决方案感兴趣,而不感兴趣的是一个特定的解决方案所采用的具体策略,对吗?那么,这不是更像是只有在打开某种模型调试时才应该输出的东西,而不是普通OpenModelica用户可以利用的东西吗?如果存在多个“状态集”(例如$STATESET1和$STATESET2):给定这些变量的通用名称,我如何知道这些变量与模型的关系?更具体地说,什么是$STATES

当我模拟下面的模型时,我得到了标记为
$STATESET1
的附加变量,这些变量显然是自动生成的

从用户的角度来看,这些变量的用途是什么?一般来说,我只对解决方案感兴趣,而不感兴趣的是一个特定的解决方案所采用的具体策略,对吗?那么,这不是更像是只有在打开某种模型调试时才应该输出的东西,而不是普通OpenModelica用户可以利用的东西吗?如果存在多个“状态集”(例如
$STATESET1
$STATESET2
):给定这些变量的通用名称,我如何知道这些变量与模型的关系?更具体地说,什么是
$STATESET1.x[:]
?原始模型或展平模型中的任何内容都没有给出这方面的提示

model StateSetTest
  import SI = Modelica.SIunits;
  Real[3] q(start = zeros(3), each fixed = true);
  Real q4(start = 1);
  Real[3] w(start = zeros(3), each fixed = true);
  SI.Torque[3] TResult;
equation
  q * q + q4 * q4 = 1;
  w = 2.0 * (q4 * der(q) - der(q4) * q - cross(der(q), q));
  der(w) = TResult;
  TResult = zeros(3);
end StateSetTest;

它们用于动态状态选择,即在模拟过程中更改状态。是的,用户并不真正需要它们。我想我们可以从OMEdit中过滤掉它们。我会为此开一张罚单。

要么是这个,要么应该在某个地方记录,如何为自己的利益使用它。