Engee 文档

Engee物理建模语言的元数据

页面进行中。

Engee物理建模语言中的元数据用于描述参数、变量、节点和其他实体的属性。 物理成分

它们不直接影响数学方程,但它们决定:

  • 测量单位;

  • 文字描述;

  • 界面中的显示规则;

  • 在块设置窗口中分组;

  • 优先事项;

  • 访问。

因此,元数据有助于使组件在*Engee*中易于理解和用户友好。

元数据语法

元数据在参数、变量或其他构造的名称后面的方括号中指定。 您可以在同一时间指定多个字段。

@parameters [group = "Parameters"] begin
    R = 1.0, [unit = "Ohm", description = "Resistance"]
    v = 5.0, [unit = "V", description = "Voltage"]
end

在这个例子中:

  • [组="参数"] -整个结构的元数据 @参数. 它们指定此构造中的所有参数将分组在称为Parameters的接口中。

  • [单位="欧姆",描述="电阻"] -特定参数的元数据 R. 测量单位在这里表示(欧姆)和描述(电阻).

  • [单位="V",说明="电压"] -特定参数的元数据 v. 测量单位在这里表示(V)和描述(电压;电压).

因此,元数据既可以在整个结构的级别上设置,也可以在单个元素上设置。

测量单位

计量单位设置为元数据 单位 并同样适用于 @参数@变量.

@parameters begin
    R = 1.0, [unit = "Ohm"]
end
@variables begin
    i = 0.0, [unit = "A"]
    v = 0.0, [unit = "V"]
end

这里:

  • R 以欧姆为单位;

  • v -以伏特为单位;

  • i -以安培为单位。

元数据密钥及其用途

下表提供了受支持的元数据键的列表、它们的用途、可接受的值和使用示例。

钥匙 委任事宜 可接受的值 例子:

单位

计量单位。

支持的设计:

  • @参数

  • @结构参数

  • @变量

  • @中间体

指示测量单位的字符串(例如, "欧姆", "V", "一个", "N*m").

R = 1.0, [unit = "Ohm"]

资料描述

元素的文字描述。

支持的设计:

  • @参数

  • @结构参数

  • @变量

行。

i = 0.0, [unit = "A", description = "Current through element"]

团体

在接口中分组参数/变量。

支持的设计:

  • @参数

  • @结构参数

  • @变量

行。 默认情况下:

  • "参数" -对于参数;

  • "初始目标" -对于变量的初始值。

@parameters [group = "Model parameters"] begin
    a = 1.0
end

标签

将项目放在界面中的单独选项卡上。

支持的设计:

  • @参数

  • @结构参数

  • @变量

行。 默认情况下 "主要".

R = 1.0, [tab = "Main"]

优先次序

初始化时使用的变量的优先级。

支持的设计:

  • @变量

"高", "低", "没有" (默认情况下)。

v_C = 0.0, [unit = "V", priority = "high"]

gui

管理界面中的可见性和编辑。

支持的设计:

  • @节点

  • @输入

  • @输出

  • @组件

  • @参数

  • @结构参数

  • @变量

  • @中间体

  • 修改 (默认)-可以设置值,并在录制时显示;

  • 观察 -你可以看到 记录 signal logging 1 模型工作后的值;

  • -隐藏界面中的任何提及。

访问=公共 默认情况下 gui=修改,为 访问=私人 默认情况下 gui=观察.

debug_var = 0.0, [gui = Observe]

查阅资料

访问级别(确定变量是否可从外部访问)。

支持的设计:

  • @节点

  • @输入

  • @输出

  • @组件

  • @参数

  • @结构参数

  • @变量

  • @中间体

如果施工是在条件内申报的 if/elseif/else,那么默认将是 私人 没有能力改变到 公众人士. 否则,将应用默认值 公众人士.

internal = 0.0, [access = Private]

活动

将变量标记为离散事件驱动。

支持的设计:

  • @变量

真的错误. 默认情况下 错误.

counter = 0, [event = true]

连接

定义变量在端口连接中的角色。

支持的设计:

  • @变量 里面 @engeeconnector

  • 流动;流动 -流变量(sum=0在所有连接的端口)。

  • 如果未指定,则该变量被认为是电位(在所有连接的端口中值相等)。

@engeeconnector Pin2 begin
    @variables begin
        v = 2.0                    # pоteнциал (pоteнциальная pepemeнная)
        i = 0.0, [connect = Flow]  # tоk (pоtоkовая pepemeнная)
    end
end

查看

口的外观。

支持的设计:

  • @节点

  • @输入

  • @输出

元组 以两行为例 ("A","左"):

  • 通过对块上的端口进行签名

  • 签名位置 "左" / "对" / "顶" / "底部".

默认情况下 ("","顶") 与此同时,端口位于等距的每一侧。

您还可以更详细地设置端口的可视化表示。:

  • 标签 --端口签名(字符串);

  • 侧面 --签名的位置("左" / "对"/ "顶" /"底部");

  • 职位 --端口沿块边界的位置(从0到1的相对数字);

  • 偏移量 --签名沿块边界的偏移(数字);

  • 子_offset --签名从块边界(数字)的偏移。

pin, [view = ("A","left")]
port = EngeePhysicalFoundation.Electrical.Pin, [
    label="n4",
    side="left",
    position=0.15,
    offset=-3,
    sub_offset=2,
]

使用元数据的功能

  • 可以为整个结构以及单个元素设置元数据。 单个元数据优先。 例如:

    @parameters [group = "Main", gui = Modify] begin
        R = 1.0, [unit = "Ohm", group = "Electrical"]
        debug_param = 0.0, [gui = Observe]
    end

    这里为参数 R 该组将使用 "电气" 而不是继承 "主要",并为 debug_param -显示模式 观察 而不是继承 修改.

  • 元数据 优先次序单位 可以在创建子组件时传递:

    @components begin
        custom = CustomComponent(a = (value = 10, unit = "kg/s", priority = "high"), c = 20)
    end
  • 如果未显式指定元数据,则应用组件中指定的默认值。

  • 元数据 gui 您可以使用构造有条件地更改它 @注释:

    @parameters begin
        a::Bool = true
        b = 1, [gui = None]
    end
    
    if a
        @annotations begin
            b, [gui = Modify]
        end
    end

    在此示例中,元数据行为取决于参数值。 a:

    • 如果 a=错误,则参数 b 隐藏在界面中(gui=无),

    • 如果 a=真,则参数 b 显示(gui=修改).