如何解决Dymola 无法加载 MAT 文件
我正在尝试加载由 matlab 输出的 .mat 文件,但它无法显示变量名称。
我在 matlab 中检查了与 mat 文件相关的首选项,我确定它符合 dymola 的要求。
我想在 dymola 中使用二维插值函数。但是我的数据存储在matlab中。我尝试以这种方式直接导入但失败了。
然后我尝试了另一种导入方式。
可以看到变量没有显示。 但是dymola创建的另一个mat文件是完全正常的。
我猜我的matlab可能有问题,但我不知道该怎么办
那是我的 mat 文件 https://drive.google.com/file/d/1kX_cBIu6cwkG-gDD32WnJvs2Edxzg_j_/view?usp=sharing
解决方法
在查看您的 .mat 文件后,我有一些评论可能会有所帮助:
-
可能最重要的评论是关于 MSL 的 CombiTables 中使用的格式:您需要将轴存储在 2D 表中。这是模型文档的一部分,可以访问,例如通过切换到 Dymola 的“文档”功能区,并在包浏览器中激活相应的 CombiTable。关于格式的文档的重要部分说:
-
关于通过 GUI 导入,请注意 Dymola 手册中的段落:
表格的数据也可以使用导入...按钮加载。数据可以从外部 Matlab 4(.mat 文件)、科学数据格式 (.sdf) 或逗号分隔值文件导入。逗号分隔值文件的扩展名可以是 .csv 或 .txt。 .txt 格式的文件可以使用制表符、空格、分号或逗号作为分隔符。
因此您需要将文件保存为 v4 格式,以便通过 GUI 导入。
- 作为替代方案:您的计算机上应该有“SDF 编辑器”(在 Dymola 的
bin64
文件夹中,以防它不在“开始”菜单中)。该工具将能够读取 mat v7.3 文件,例如通过将其拖放到 UI 中,您将能够使用 CTRL+C 从那里复制突出显示的数据,并使用矩阵编辑器中的“粘贴矩阵”按钮将其粘贴到矩阵编辑器中,如下所示。
- 您也可以直接在 MSL 的 CombiTables 中使用 .mat 文件。这可以通过像这样配置表来完成:
关于直接使用文件中的数据:通过单击上面显示的“信息”按钮来阅读有关如何创建文件的文档是有意义的。对于 Dymola,我认为创建一个 MATLAB v7 文件来从文件中读取表是最有意义的,因为使用 v7.3 文件会给我一个错误。
直接从文件中读取数据的优势在于,对 .mat 文件的更改将对模拟产生直接影响 - 无需重新导入。
就我个人而言,我会使用“从文件读取”变体,因为它应该是最省力的,并且无需在发生更改时重新导入数据。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。