# 模型导出
训练完成的系统模型可以导出模型至本地。单击导出,弹出导出模型窗口。用户可以自定义选择导出 DLL 模型和导出 ONNX 模型。
模型导出功能允许用户将训练好的降阶模型导出为不同格式,以便在其他平台或应用中使用。
导出格式:
- DLL 模型:导出为动态链接库,适用于 Windows 平台的 Modelica 仿真;
- ONNX 模型:导出为开放神经网络交换格式,适用于跨平台部署和推理。
导出对象:
- 系统模型:适用于系统数据的降阶模型;
- 场模型:适用于场数据的降阶模型,包括 case 格式和 csv 格式
# 导出 DLL 模型
如用户选择导出 DLL 模型,用户可以自定义模型名称,保存路径(PKL 模型路径为默认路径,支持修改)。
参数说明:
模型名称:
- 原理:定义导出模型的标识符,用于在 Modelica 中引用该模型。
- 效果:模型名称影响 Modelica 代码中的模型实例化和文件命名。
- 建议:使用有意义的名称,反映模型的用途或特性,避免使用特殊字符,可使用ROM关键字,但是避免直接命名为ROM,防止因为关键字识别造成的仿真失败。
保存路径:
- 原理:指定导出模型的存储位置,决定模型文件的物理位置。
- 效果:保存路径影响模型文件的组织和管理。
PKL 模型路径:
- 原理:指定训练好的模型文件位置,作为导出的源文件。
- 效果:PKL 模型路径必须正确,否则无法导出模型。
- 建议:使用默认路径即可。
# 1 系统模型
系统模型的 DLL 导出结果,包含以下三部分:mo 模型、exte_file 文件夹与 Resources 文件夹。
# 1.1 mo 模型
mo 模型名称与导出模型名称相同。
文件说明:
- mo 模型:
- 原理:Modelica 语言编写的模型文件,定义模型接口和外部函数调用。
- 效果:mo 模型是 Modelica 仿真中使用的降阶模型接口。
# 1.2 exte_file 文件夹
此文件夹中包含一个 Lib 文件夹,Lib 文件夹中包含 32 位(win32)与 64 位(win64)的库文件夹,以及两个 bin 文件。
Win32 和 Win64 内的静态库和动态库文件名都相同,用户在选择不同位数的仿真时进行分别调用。
文件说明:
- exte_file 文件夹:
- 原理:包含模型推理所需的动态链接库和静态库,支持 32 位和 64 位系统。
- 效果:exte_file 文件夹中的库文件是模型运行的核心组件。
- 建议:不要删除或修改 exte_file 文件夹中的文件,确保库文件与 Modelica 仿真环境位数匹配。
# 1.3 Resources 文件夹
包含rom.svg图标。
# 2 场模型
场模型导出文件与上述系统模型导出形式基本相同,区别在于 Resources 文件夹内容,并且 case 形式与 csv 形式的场数据也存在区别。
# 2.1 case 格式场模型
若场导入数据形式为case,导出模型的 Resources 文件夹中,除rom.svg图标外,还存在*.case文件、*.geo(*.geom)与Phi文件,其中Phi文件的命名方式应为降阶时所选变量名+下划线+Phi,导出案例如下:
文件说明:
.case 文件:
- 原理:包含场数据的几何信息和拓扑结构,用于可视化。
- 效果:.case 文件是场模型可视化的基础。
- 建议:不要修改 .case 文件,确保几何信息完整。
.geo 文件:
- 原理:包含网格的几何信息和拓扑结构。
- 效果:.geo 文件用于场数据的网格渲染。
- 建议:不要修改 .geo 文件,确保网格信息完整。
Phi 文件:
- 原理:包含降阶后的模态信息,用于场数据的重构。
- 效果:Phi 文件是场模型推理的核心数据。
- 建议:不要修改 Phi 文件,确保模态信息完整,以及Phi文件命名需要满足变量名+_+Phi的形式。
# 2.2 csv 格式场模型
若场导入数据形式为csv,导出模型的 Resources 文件夹中,除rom.svg图标外,还存在Phi文件,命名方式与case文件导出命名方式相同,导出案例如下:
文件说明:
- Phi 文件:
- 原理:包含降阶后的模态信息,用于场数据的重构。
- 效果:Phi 文件是场模型推理的核心数据,位移叠加场包含四个 Phi 文件,分别对应 x、y、z 位移和叠加变量。
- 建议:不要修改 Phi 文件,确保模态信息完整。
# 导出 ONNX 模型
如果选择导出 ONNX 模型,则单击导出模型类型中的 PKL 按钮。用户可以自定义模型名称和保存路径(这里 PKL 模型路径已经存在,用户不需要去修改。用户修改的导出路径最好和 PKL 模型路径在一个根目录下),导出完成后,会在 PKL 模型路径下找到保存好的 ONNX 模型。
如果用户已有一个 ONNX 模型,并且期望将该 ONNX 模型导出为 Modelica 降阶模型,则可以先创建一个新项目然后导入数据,选择好输入输出后,不进行训练,直接单击导出。在导出模型类型单击 ONNX 按钮,然后找到指定路径下的 ONNX 模型,导出即可。
参数说明:
模型名称:
- 原理:定义导出模型的标识符,用于在 Modelica 中引用该模型。
- 效果:模型名称影响 Modelica 代码中的模型实例化和文件命名。
保存路径:
- 原理:指定导出模型的存储位置,决定模型文件的物理位置。
- 效果:保存路径影响模型文件的组织和管理。
PKL 模型路径:
- 原理:指定训练好的模型文件位置,作为导出的源文件。
- 效果:PKL 模型路径必须正确,否则无法导出模型。
ONNX 导出文件中,关于系统数据与场数据的区别与 DLL 导出的区别相同,即场模型 ONNX 导出的 Resouces 文件中会存在*.case,*.geo以及Phi文件,此处不做过多赘述;ONNX 与 DLL 在 exte_file 文件夹中,存储的内容存在区别,具体如下:
完成导出后,本地会保存 Modelica 模型。
自定义算法导出选择自定义算法即可,无需选择具体算法类型。
# 导出位移叠加场模型
位移叠加场是对 x,y,z 三个位移分量与一个额外变量,共四个变量场分别完成降阶训练,后将四个降阶模型整合为统一模型,使该模型在仿真过程中既能够实现结构变形效果,又可基于叠加的变量完成渲染变色展示。
# 1 打开位移叠加场导出
在打开的场工程(动态静态均可)页面,单击菜单栏中的导出下拉选项,选择位移叠加场导出,打开位移叠加场的设置页面。
# 2 设置位移叠加场参数
在位移叠加场导出页面中,设置如下相应参数:
基本配置参数:
- 导出名称:定义导出模型的标识符;
- 导出路径:指定导出模型的存储位置。
场模型配置:
- X 方向位移场:设置 PKL 文件路径以及降阶模型类型;
- Y 方向位移场:设置 PKL 文件路径以及降阶模型类型;
- Z 方向位移场:设置 PKL 文件路径以及降阶模型类型;
- 叠加变量场:设置 PKL 文件路径以及降阶模型类型。
PKL 文件存放在项目文件夹中,训练后会刷新,需要对训练好的降阶模型及时进行保存。
设置参数后,单击确认即可。
参数说明:
导出名称:
- 原理:定义导出模型的标识符,用于在 Modelica 中引用该模型。
- 效果:模型名称影响 Modelica 代码中的模型实例化和文件命名。
导出路径:
- 原理:指定导出模型的存储位置,决定模型文件的物理位置。
- 效果:保存路径影响模型文件的组织和管理。
PKL 文件路径:
- 原理:指定训练好的模型文件位置,作为导出的源文件。
- 效果:PKL 模型路径必须正确,否则无法导出模型。
降阶模型类型:
- 原理:指定使用的降阶模型算法,如前馈神经网络、响应面等。
- 效果:降阶模型类型影响模型的性能和适用场景。
# 3 导出文件结构
导出的位移叠加场模型文件夹整体结构与场模型导出结果相似,包含位移叠加场的 mo 模型,exte_file 文件夹以及 Resources 文件夹。
# 3.1 exte_file 文件夹
exte_file 文件夹中包含内容如下:
# 3.2 Resources 文件夹
Resources 文件夹中包含图标、四个Phi文件以及*.case,*.geo文件。
文件说明:
Phi 文件:
- 原理:包含降阶后的模态信息,用于场数据的重构。
- 效果:Phi 文件是场模型推理的核心数据,位移叠加场包含四个 Phi 文件,分别对应 x、y、z 位移和叠加变量。
- 建议:不要修改 Phi 文件,确保模态信息完整。
.case 文件:
- 原理:包含场数据的几何信息和拓扑结构,用于可视化。
- 效果:.case 文件是场模型可视化的基础。
- 建议:不要修改 .case 文件,确保几何信息完整。
.geo 文件:
- 原理:包含网格的几何信息和拓扑结构。
- 效果:.geo 文件用于场数据的网格渲染。
- 建议:不要修改 .geo 文件,确保网格信息完整。
提示
- 当前项目为场降阶项目时,才可以选择导出位移叠加场模型;
- 导出位移叠加场,需要具备四个场降阶的 PKL 文件,虽然界面仅需要 PKL 文件地址,但是导出时,会根据当前文件地址在同级文件夹中查找所需其他文件,所以建议每个降阶模型在保存 PKL 文件时,保留完整的工程项目文件夹;若未保存工程文件夹,仿真失败或无法可视化,可手动拷贝上述的 Resources 文件夹中所需文件。