使用“在模型中保存起始值”选项来帮助Dymola中的收敛

时间:2019-12-02 07:09:40

标签: modelica dymola

我建立了动力障碍模型。即使在初始化过程中出现一些错误,但计算最终还是成功。 enter image description here

模型成功收敛后,我尝试使用“在模型中保存起始值”选项来获取存储在模型中的正确迭代变量策略值,以使模型在下一次计算中不会出错。但是当我这样做并再次尝试进行计算后,我仍然遇到相同的错误。

所以,我的问题是: 我可以使用“在模型中保存起始值”来帮助收敛吗? 如果是这样,我该怎么办?

enter image description here enter image description here enter image description here

2 个答案:

答案 0 :(得分:2)

您确定有错误消息吗?

模拟日志表明您已启用 Simulation Setup> Debug>非线性迭代

对于非线性求解器的每次迭代,这都会在模拟日志中给出调试消息,而不管是否存在问题。 (这可以很好地分析错误,但由于它会生成较大的日志文件,因此不应将其设置为默认值。)

如果禁用该标志不能删除所有消息,则有必要查看其余消息和模型以了解问题;就像之前指出的程序一样。

答案 1 :(得分:0)

原因是我将某个参数的固定属性设置为false,将某个变量的固定属性设置为true,因此我可以使用变量的值来初始化系统,然后将计算相应的参数。使用“在模型中保存起始值”选项时,它将结果存储到参数的start属性中,但其value属性将保持不变。当我再次进行仿真时,Dymola不会使用参数的start属性,而仍会使用参数的value属性。手动更改value属性后,就不会再有错误了。