Dymola 中的初始化受注释标志评估的影响
initialization in Dymola influenced by annotation flag evaluate
正如标题中已经提到的,我的(多体)模型的初始化受注释(评估)的影响。
在模型中实现了新参数 par
后,如果我使用 :
初始化总是失败
parameter par annotation(evaluate=false)
但如果我使用
evaluate=true,
有效。
不幸的是,第一个选项对我来说不是一个好的解决方案,因为我希望能够在编译时间后设置参数值。
当其中一个参数设置为 evaluate=false
时,模型结构究竟发生了什么?
除了初始条件我还应该检查什么?
参数的值是多少?
有许多不同的情况会发生这种情况:
Boolean/Integer 决定数组大小的值等。如果它们有 Evaluate=false 你甚至会在翻译你的模型时遇到问题。
零值,例如影响折射率的质量;在这种情况下,除了初始条件外,您还应该记录索引缩减。
影响初始化方程组结构的任何其他因素;您可以查看该日志 - 还可以为非线性方程组添加调试消息(例如,检测它们是否是奇异的)。旋转关节的轴通常属于最后一类。
正如标题中已经提到的,我的(多体)模型的初始化受注释(评估)的影响。
在模型中实现了新参数 par
后,如果我使用 :
parameter par annotation(evaluate=false)
但如果我使用
evaluate=true,
有效。
不幸的是,第一个选项对我来说不是一个好的解决方案,因为我希望能够在编译时间后设置参数值。
当其中一个参数设置为 evaluate=false
时,模型结构究竟发生了什么?
除了初始条件我还应该检查什么?
参数的值是多少?
有许多不同的情况会发生这种情况:
Boolean/Integer 决定数组大小的值等。如果它们有 Evaluate=false 你甚至会在翻译你的模型时遇到问题。
零值,例如影响折射率的质量;在这种情况下,除了初始条件外,您还应该记录索引缩减。
影响初始化方程组结构的任何其他因素;您可以查看该日志 - 还可以为非线性方程组添加调试消息(例如,检测它们是否是奇异的)。旋转关节的轴通常属于最后一类。