我遇到了开发模型的问题,其中翻译时间(模拟速度快但翻译时间太长)已经成为一个严重的问题,可以使用一些见解,所以我可以考虑解决这个问题。
所以问题是:
影响模型翻译时间和解决问题的想法有哪些主要因素?
例如,可能产生影响的事情:
for
循环与矢量化方法 - 测试此功能的基本模型似乎不会影响任何内容input
变量与参数Evaluate=true
)connect()
- 这似乎是一个因素(也许是主要的),因为它迫使翻译人员完成所有繁重的工作非常感谢任何见解。
答案 0 :(得分:1)
显然,如果自然开放,这个问题的答案就结束了。当计算时间可能是一个因素时,有许多事情需要考虑。
对于分布式模型(例如,有限差分),使用简单模型然后使用connect
方程以适当的顺序链接它们不是生成模型的最佳方法。经验表明,这种方法将翻译时间显着增加到无法忍受的长度。最好使用与MSL Dynamic管道相同的方法创建分布式模型(不完全像它,但类似)。
随着分布式元素的数量增加到更大的数量,改变所描述的方法在转换时间(大型模型的数量级,> ~100,000个等式)方面明显快于使用connect
语句。这是使用Dymola 2017和2017FD01测试的。
下面列出了其他可能对更多信息有用的相关材料: