使用 "Save start values in the model" 选项帮助 Dymola 收敛

Using "Save start values in the model" option to help the convergence in Dymola

我在 dymola 中构建了一个模型。虽然在初始化过程中出现了一些错误,但最终还是计算成功了。

模型收敛成功后,我尝试使用"Save start values in the model"选项将正确的迭代变量strat值存储到模型中,以便模型在下一次计算中不会出错。但是在我这样做并再次尝试计算之后,我仍然得到同样的错误。

所以,我的问题是: 我可以使用 "Save start values in the model" 来帮助收敛吗? 如果可以,我应该怎么做?

您确定有错误条消息吗?

模拟日志表明您已经启用 仿真设置>调试>非线性迭代

无论是否存在问题,都会在非线性求解器的每次迭代的模拟日志中给出 调试消息 。 (这对分析错误很有用,但不应默认启用,因为它会生成大型日志文件。)

如果禁用该标志没有删除所有消息,则有必要查看剩余的消息和模型以了解问题;因为前面指出的程序应该有效。

原因是我把某个参数的固定属性设为false,把某个变量的固定属性设为true,这样就可以用变量的值来初始化系统,然后计算出相应的参数。使用 "save start values in the model" 选项时,会将结果存储到参数的 start 属性中,但其 value 属性将保持不变。当我再次进行仿真时,Dymola 不会使用参数的 start 属性,它仍然会使用参数的 value 属性。我手动修改value属性后,就不会报错了。