gpt4 book ai didi

dymola - 如何在 Dymola 中自动创建转换脚本

转载 作者:行者123 更新时间:2023-12-02 14:30:43 24 4
gpt4 key购买 nike

https://trac.modelica.org/Modelica/ticket/2229#comment:2据称,当对库进行更改时,Dymola 能够自动更新转换脚本。我正在搜索 Dymola 手册,但找不到任何如何应用此功能的实际指南。

但是,我可以在选项中找到一些设置,但我无法强制 Dymola 创建/更新转换脚本。

enter image description here

有人有一些关于如何启用自动创建转换脚本功能的指南吗?

最佳答案

生成转换命令

为此提供了三个高级变量,即:

Integer Advanced.ActivateSmartDelete = 3 "Updates other classes when deleting class/component [0 - no, 1 - ask, 2 yes (if possible)]";
Integer Advanced.ActivateSmartRename = 3 "Updates other classes when renaming component [0 - no, 1 - ask, 2 yes, 3 - also script]";
Integer Advanced.ActivateSmartRenameClass = 3 "Updates other classes when renaming class [0 - no, 1 - ask, 2 yes, 3 - also script]";

如注释所示,将这些变量设置为 3(使用 Dymola 命令窗口,或者在较新的 Dymola 版本中,可以在屏幕截图中看到的选项)会自动创建转换命令。

Dymola 会将转换命令写入您的库的模型注释中。它们看起来像这样:

  from(
version="3.2.3",
to="Intermediate",
change(item=convertClass("Modelica.Blocks.Continuous.PID", "Modelica.Blocks.Continuous.PID_Controller"),
item=convertClass("Modelica.Blocks.Continuous.FirstOrder", "Modelica.Blocks.Continuous.PT1")))

将命令导出到文件

Dymola 2022x 之前

如果您希望将转换脚本放在单独的文件中(而不是库的 package.mo),则必须稍微转换命令。

在脚本中,上述命令如下所示:

convertClear()
convertClass("Modelica.Blocks.Continuous.PID", "Modelica.Blocks.Continuous.PID_Controller"),
convertClass("Modelica.Blocks.Continuous.FirstOrder", "Modelica.Blocks.Continuous.PT1")

所以命令相同,但没有 item= 和尾随 ,

使用 Dymola 2022x

Dymola 2022x 可以将命令导出到文件。

  • 从包浏览器中打开库的属性对话框
  • 使用版本选项卡中的从预发布版本转换...按钮

Version tab in package attributes in Dymola

然后,Dymola 将从库注释中删除之前生成的命令,并将它们以正确的格式复制到指定文件中。请注意,Dymola 还将更新库的版本号并调整 from 命令。如果不需要,请将其改回来。

关于dymola - 如何在 Dymola 中自动创建转换脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56174800/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com