CreateSystemModel
CreateSystemModel[sys]
根据系统模型 sys 创建一个 Modelica SystemModel.
CreateSystemModel[eqns,t]
创建自变量为 t 的系统方程 eqns 的模型.
CreateSystemModel[…,tspec]
创建变量和参数类型指定为 tspec 的模型.
CreateSystemModel[…,spec]
创建一个模型,其中参数值、初始值和模型关系由 spec 给出.
更多信息和选项
- CreateSystemModel 返回 SystemModel[…].
- CreateSystemModel["NewModel",…] 将创建的模型命名为 "NewModel".
- CreateSystemModel["PackageA.NewModel"] 把 "NewModel" 插入到 "PackageA" 中.
- 可能的动态系统模型 sys 包括 StateSpaceModel、TransferFunctionModel、AffineStateSpaceModel、NonlinearStateSpaceModel 和 DiscreteInputOutputModel. »
- 可能的静态系统模型 sys 包括 FittedModel、NetChain 和 NetGraph.
- 可能的方程 eqns 包括常微分方程 (ODE)、微分代数方程 (DAE)、初始值方程和 WhenEvent 给出的事件指定. »
- eqns 和 sys 中的参数被认为是不明确依赖于 t 的变量.
- 变量和参数的类型指定 tspecs 为 {tspec1,…},其中每个 tspeci 的格式为:
-
pari∈typei 参数类型 typei vari∈typei 变量类型 typei - 类型 typei 可以为基本的 Reals、Integers 和 Booleans,或任意带有单位的 Modelica 类型. »
- SystemModels["Modelica.Units.*","type"] 可用于查找内置标准单位.
- 一般情况下,通过将许多模型组合成更大的系统来构建 Modelica 模型. 这些模型之间的交互连接则由 Modelica 中的概念 connector 描述. »
- 接口由力和流变量组成. 当把多个接口连在一起时,流变量的和为 0,而力变量被设为相等.
- 举例来说,电路接口常被称为引脚 (pin),由电压变量 v 和电流变量 i 组成.
- 将引脚 n 和 p 连接在一起,流变量(这里为电流 i)相加为 0,力(这里为电压 v)则被设为相等:
- 所有流入元件的流变量为正.
- 不同域的力和流变量包括:
-
域 力变量 流变量 电路 电压 电流 磁路 磁位 磁通量 平移力学 位置 力 转动力学 角度 转矩 三维力学 位置向量,定向对象 切割力向量,切割扭矩向量 流体流动系统 压力,比焓 质量流率,焓流率 热传导系统 温度 热流率 示意图 实数,整数,布尔值 - - 一个域的可能的接口 conni 通常在 Interfaces 包中被定义. 例如,SystemModels["Modelica.Electrical.Analog.Interfaces.*","connector"] 可用于查找内置电子模型库中的接口.
- 指定 vari∈conni 可用来指定变量 vari 指代类型为 conni 的接口.
- 连接器 c 中的变量 vi 可以用 c▴vi 在 eqns 中引用,其中 ▴ 字符可以输入为 \[UpPointer].
- 可用 SystemModel[conn,"SystemVariables"] 来列出由接口 conn 定义的变量.
- 在 CreateSystemModel[…,spec] 中,spec 是一个 Association,其中的键为:
-
"ParameterValues" {p1val1,…} 参数值 "InitialValues" {v1val1,…} 初始值 "ExtendsModels" {partial1,…} 所基于的部分模型 "DiscreteVariables" {v1,v2,…} 仅在事件发生时变化的变量 "SimulationSettings" {opt1val1,…} 模型仿真选项 - 模型库经常含有被称为 interfaces 的部分模型,可用来构建新的元件模型. 这些界面通常由接口和描述接口间基本关系的方程构成.
- 当设置为 CreateSystemModel[…,"ExtendsModels"partial] 时,会将新模型与 Modelica 中已定义的 partial SystemModel 结合在一起. »
- 通过使用 "ExtendsModels"{"partial1",…} 一个模型可以跨越多个模型.
- 在其上进行构建的部分模通常在 Interfaces 包中被定义. 例如,SystemModels["Modelica.Electrical.Analog.Interfaces.*","model" "block"] 可用于查找内置电子模型库中的部分模型 (partial models).
- "InitialValues" 对应于 Modelica 模型中的 start 属性.
- 在 "SimulationsSettings"->{opt1val1,…} 中允许的选项包括:
-
"Method" 仿真方法 "StartTime" 仿真开始时间 "StopTime" 仿真停止时间 - 可用的自适应步长 "Method" 值包括:
-
"DASSL" DASSL DAE 求解器 "CVODES" CVODES ODE 求解器 - 自适应步长法的选项包括:
-
"InterpolationPoints" 插值点数 "Tolerance" 自适应步长的公差 - 可用的固定步长 "Method" 值包括:
-
"Euler" 显式 1 阶欧拉方法 "Heun" 2 阶 Heun 方法 "RungeKutta" 显式四阶 Runge-Kutta 法 - 固定步长法的选项包括:
-
"StepSize" 固定步长 - 使用 GeneratedAssetLocationloc 选项,您可以将生成的资源存储在位置 loc 中.
范例
打开所有单元关闭所有单元基本范例 (3)
范围 (50)
系统模型 (11)
创建一个单入单出模型 TransferFunctionModel:
创建一个单入单出模型 StateSpaceModel:
微分方程 (12)
关联和函数 (4)
区域和 Graphics3D (2)
用 "Modelica.Mechanics.MultiBody" 组件存储如 RegionMeasure、RegionCentroid 和 MomentOfInertia 这样的数据:
Graphics3D 对象输出,以制作可视化效果:
DiscretizeGraphics 或 BoundaryDiscretizeGraphics 也许能够从 Graphics3D 生成一个区域:
拟合模型与神经网络 (2)
模型命名 (3)
类型和连接器 (4)
初始值和参数值 (6)
选项 (2)
GeneratedAssetLocation (2)
默认情况下,从区域创建的模型会将资产文件导出到 $WolframDocumentsDirectory:
使用 GeneratedAssetLocation 为资源指定一个位置:
默认情况下,从神经网络创建的模型将 ONNX 文件导出到 $WolframDocumentsDirectory:
使用 GeneratedAssetLocation 指定结果的位置:
应用 (7)
属性和关系 (3)
可能存在的问题 (2)
文本
Wolfram Research (2018),CreateSystemModel,Wolfram 语言函数,https://reference.wolfram.com/language/ref/CreateSystemModel.html (更新于 2022 年).
CMS
Wolfram 语言. 2018. "CreateSystemModel." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2022. https://reference.wolfram.com/language/ref/CreateSystemModel.html.
APA
Wolfram 语言. (2018). CreateSystemModel. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/CreateSystemModel.html 年