modelica - 在 Dymola 中使用先前模拟结果的结果值作为下一次模拟的猜测值

标签 modelica dymola

初始化可能非常繁琐,容易导致发散。一个简单的策略是在构建整个系统的一部分时运行模拟,并使用模拟结果来修改猜测值。
这是我在 Francesco Casella 的 PPT 和 Daniel Bouskela 的书中得到的内容。

enter image description here

enter image description here

我发现我可以在 Dymola 中使用一个选项,如下所示,但不是使用初始化结果,我想在达到稳定状态时使用结果。所以我想使用python脚本从.mat结果文件中提取结果,然后自动修改迭代变量。但关键的问题是,我不知道当我在我的模型中添加更多组件时,现有组件的迭代变量集会发生变化,我不知道这会导致什么样的效果。
任何人对这个问题有意见,欢迎回答这个问题。

所以我的问题是我应该在哪里找到python

enter image description here

enter image description here

最佳答案

您可以使用模拟结果的最终值(= 稳态)来创建新的初始化(Dymola 手册 1,第 2.5.12 节)。如果子系统模型和总模型中的组件名称相同,您也可以在更大的系统模型上运行子系统模型中创建的脚本。但是您必须检查您的模型是否具有阻碍外部初始化的初始方程(请参阅 https://2012.international.conference.modelica.org/proceedings/html/pdf/ecp12076927_KruegerMehlhaseSchmitz.pdf 中的第 4.2 节)

关于modelica - 在 Dymola 中使用先前模拟结果的结果值作为下一次模拟的猜测值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59236509/

相关文章:

python-3.x - 使用 pyFMI 模拟时出现 CVodeError

modelica - 在 dymola 中初始化期间出错但以成功结束

modelica - Dymola 翻译时出现错误消息 : "unknown internal error in Dymola"

matlab - 使用 matlab 和命令 importInitial(dsName ="dsfinal.txt") 在 dymola 中控制 modelica 模型

c - 从 Dymola 多次调用 dll

python - pyFMI Python模拟不同数量的输出点数

modelica - 如何在 Dymola 2020X 中旋转或翻转组件

modelica - Modelica 中的 PI Controller 无法使用逆变器和 PMSM 达到引用值

modelica - 运行转换脚本 - Modelica 4.0

具有未指定维度的 Modelica 数组