连接器定义

语法

正如我们已经多次看到的一样,Modelica定义之间有着相当的句法相似性。这也对connector定义成立。

连接器定义的一般语法是:

connector ConnectorName "Description of the connector"
  // Declarations for connector variables
end ConnectorName;

不同于modelfunctionconnector不得包含任何行为。所以在connector内永远不会出现equationalgorithm区域。

变量

因果性变量

在之前对框图连接器的讨论里,我们介绍了Modelica的connector定义内的变量可以和因果关系联系起来。如果信号应在部件外计算出来,则变量就应该加上input限定词。另一方面,若信号应在部件内计算出来(然后再传输到其他部件),则变量就应该加上input限定词。

非因果变量

在我们对简单领域以及流体连接器的讨论里,我们看到包括许多穿越变量和横跨变量的connector定义。这些变量总是成对出现的。穿越变量带有flow限定词。横跨变量则没有限定词。

我们将在接下来的章节中看到,这样的连接器在定义物理系统建模时非常方便。因为这些连接器帮助Modelica语言编译器自动生成组件网络的守恒方程。此外,连接器允许数量等、质量、动量、能量、电荷、介质种类等双向地流过网络。

参数

connector定义的变量也可以加入parameter限定词。这个限定词和我们第一次讨论参数时意思一样。也就是说,该变量的值在模拟过程中不能改变。parameter变量在连接器定义里经常用于指示连接器内数组的大小。

结语

应该指出的是,单个connector定义可以都在同一个连接器内混合因果、非因果和参数变量。事实上,连接器的变量本身可以也是一个连接器。Modelica的丰富表现力允许用户模拟一系列不同类型的相互作用,以及为每个变量选择对潜在相互作用最有意义的语义。