modelica - 在dymola的脚本文件中修改模型的参数
问题描述
我正在尝试在 Dymola 中使用 .mos 文件进行多次模拟,这是来自Claytex 博客的示例:
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是如何处理的?
解决方案
“user2024223”的上述评论是正确的,但我认为“变量浏览器”的压力不够,更多解释可能会有所帮助:
在翻译后更改模型的参数时,请确保您没有使用模型编辑(“图形”或“文本”-功能区),因为这会更改模型的代码并因此(通常)强制重新翻译。“模拟”功能区中的“模型视图”也是如此。
如果您使用“模拟”功能区中的“变量浏览器”,代码不会更改。另一种选择(实际上是这样做的)是在“命令”行中键入参数值。例如,这可能是J1.J=5
示例CoupledClutches
。该段落中的两个变体都应与脚本类似。
推荐阅读
- javascript - 如果用户分别输入月、日和年,我怎样才能得到正确的生日格式?
- roku - Roku Brightscript 如何使用海报对象刷新图像
- computer-vision - 索引超出范围 mmdetection test.py
- laravel - 带有中间件的 Laravel 用户角色不起作用
- javascript - 运行此代码时,我不断收到“属性超出范围”错误
- cmake - 这个 CMake 错误是什么意思?我该如何解决呢?
- google-data-studio - Data Studio 中一个浏览量的浏览量计数的新计算字段,但出现错误
- assembly - 浮点指令和浮点运算有什么区别?
- typescript - Typescript 根据是否存在变量更改返回值的类型推断
- julia - 为什么 (; [(:x, 1), (:y, 2)]...) 创建一个 NamedTuple?