【问题标题】:modify model's parameters in dymola's script file在dymola的脚本文件中修改模型的参数
【发布时间】:2021-10-03 10:10:05
【问题描述】:

我正在尝试在 Dymola 中使用 .mos 文件进行多次模拟,这是来自 claytex's blog 的示例:

openModel("C:/Dymola/Testing/Test1.mo")
translateModel ("Test1");
for i in 1:10 loop
         a=i;
         simulate();
         system("copy dsres.mat results"+String(i) +".mat");
end for;

似乎在我翻译脚本文件中的模型时,我可以再次修改模型的参数,这在我使用 Dymola 的 GUI 时是不同的。在 Dymola 的 GUI 中,如果我在翻译模型后尝试修改参数,则必须重新翻译模型。我的问题是:
在 Dymola 的脚本文件中,当我修改参数时,Dymola 是如何处理的?

【问题讨论】:

  • 使用脚本修改参数相当于在 Dymola GUI 变量浏览器中修改参数。请参阅 Dymola 用户手册第 1A 卷的第 1.2 节。

标签: modelica dymola


【解决方案1】:

“user2024223”的上述评论是正确的,但我认为“可变浏览器”的压力不够,更多解释可能会有所帮助:

在翻译后更改模型的参数时,请确保您使用模型编辑(“图形”或“文本”-功能区),因为这会更改模型的代码,因此(通常)强制重新翻译。 “模拟”功能区中的“模型视图”也是如此。

如果您使用“模拟”功能区中的“变量浏览器”,代码不会更改。另一种方法(实际上是这样做的)是在“命令”行中键入参数值。例如。对于CoupledClutches 示例,这可能是J1.J=5。段落中的两个变体都应该与脚本类似。

【讨论】:

    【解决方案2】:

    Dymola 通过修改 dsin.txt 文件来处理翻译后的参数变化。 一些/许多参数已被评估,无法以这种方式更改 - 这些变量在变量浏览器中不可编辑。

    如果您尝试更改脚本中不可编辑的变量,您将收到警告。

    注意:在大多数情况下,即使在 GUI 中修改了模型的可编辑参数,您也不必重新翻译模型。再次模拟模型 - 希望它不需要重新翻译。

    【讨论】:

      猜你喜欢
      • 2021-06-05
      • 2014-04-14
      • 1970-01-01
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 2018-08-10
      • 2017-11-09
      相关资源
      最近更新 更多