物理建模语言的端口 AnyMath
用物理建模的语言 *AnyMath*端口是通过其接口 物理组件与模型的其他块交互。 可以通过端口传输以下数据:
*物理量(电压、压力、温度); *控制信号(例如数值系数)。
物理组件的端口(以及整个库 Physical Modeling)只能连接到同一域的物理建模的其他块(例如,平移力学的端口与另一个块的平移力学的端口)。
港口类型
用物理建模的语言 *AnyMath*有两种类型的端口:
*非定向端口(@节点)--用于描述物理连接。 他们没有严格划分为"入口"和"出口":流动可以流向任何方向。 它们用于对真实物理域进行建模,例如:
电力(电压和电流); 平移力学(速度和力); **热量(温度和热流)。
*定向端口(@输入, @输出)--用于传输信号。 他们总是有一个既定的方向:入口(@输入)或退出(`@输出`此类端口最常用于需要传输控制或计算值的控制单元。
非定向端口
在组件内部,这些端口通过构造声明 @节点.
@engeemodel Resistor begin
@parameters begin
R = 1.0, [unit = "Ohm"]
end
@nodes begin
p = EngeePhysicalFoundation.Electrical.Pin
n = EngeePhysicalFoundation.Electrical.Pin
end
@variables begin
v = 0.0, [unit = "V"]
i = 0.0, [unit = "A"]
end
@branches begin
i:(p.i, n.i)
end
@equations begin
v ~ p.v - n.v
v ~ R * i
end
end
这里:
-
@节点--增加两个电气端口p和n; -
@分行--制定分支电流守恒规则; -
@方程--设定欧姆定律:电阻两端的电压等于电阻和电流的乘积。
以下是内置的 AnyMath*非定向端口的类型。 使用这些端口将组件连接到库中的块。 *AnyMath.
| 物理域 | 端口类型 | 端口变量 |
|---|---|---|
单相电 |
|
|
三相电 |
|
|
磁性;磁性 |
|
|
热 |
|
|
平移力学 |
|
|
旋转力学 |
|
|
等温液体 |
|
|
导热液体 |
|
|
煤气 |
|
|
潮湿空气 |
|
|
湿度和杂质气体的来源 |
|
|
两相液体 |
|
|