使用 ExternalCodeComp 作为单一组件和 OpenMDAO 概念
Using ExternalCodeComp as the single comp and OpenMDAO concept
我对使用 OpenMDAO 的想法非常感兴趣。但是,我不确定在优化场景中使用 OpenMDAO 是否值得,在这种场景中,我将外部代码用作单个组件,仅此而已。
使用 SciPy 中可用的优化器的实现与上述 openmdao 实现之间是否有任何区别。
或者这与在其他语言(如 matlab 优化工具箱等)中实现类似方法有什么区别?
(当然,优化器的实现方式可能有所不同,但我的意思是从概念上讲,我是否通过这种方法利用了 OpenMDAO?)
就我阅读的文章而言; openMDAO 在多个组件 ''interact'' 彼此和 "global derivatives"" 获得的情况下是否强大?
我是否通过使用单个 ExternalCodeComp
来利用 openMDAO
仅使用一个 ExternalCodeComp 不会发挥 OpenMDAO 的全部潜力。仍然会有一些优势,因为 ExternalCodeComp 会为您处理很多文件包装细节。此外,优化中通常会有一些细节,例如添加约束,通常需要额外的组件。在这种情况下,您可以使用 ExecComp 添加一些额外的计算。
最后,使用 OpenMDAO 将使您有可能在未来扩展您的模型以包括其他学科。
如果您确定除了优化一个外部代码之外您永远不会做任何事情,那么 OpenMDAO 确实会减少到与使用裸 pyoptsparse、scipy 或 matlab 优化器类似的功能。在这种极端情况下,除了 ExternalCodeComp 的易用性之外,OpenMDAO 并没有给 table 带来很多好处。
我对使用 OpenMDAO 的想法非常感兴趣。但是,我不确定在优化场景中使用 OpenMDAO 是否值得,在这种场景中,我将外部代码用作单个组件,仅此而已。
使用 SciPy 中可用的优化器的实现与上述 openmdao 实现之间是否有任何区别。
或者这与在其他语言(如 matlab 优化工具箱等)中实现类似方法有什么区别?
(当然,优化器的实现方式可能有所不同,但我的意思是从概念上讲,我是否通过这种方法利用了 OpenMDAO?)
就我阅读的文章而言; openMDAO 在多个组件 ''interact'' 彼此和 "global derivatives"" 获得的情况下是否强大? 我是否通过使用单个 ExternalCodeComp
来利用 openMDAO仅使用一个 ExternalCodeComp 不会发挥 OpenMDAO 的全部潜力。仍然会有一些优势,因为 ExternalCodeComp 会为您处理很多文件包装细节。此外,优化中通常会有一些细节,例如添加约束,通常需要额外的组件。在这种情况下,您可以使用 ExecComp 添加一些额外的计算。 最后,使用 OpenMDAO 将使您有可能在未来扩展您的模型以包括其他学科。
如果您确定除了优化一个外部代码之外您永远不会做任何事情,那么 OpenMDAO 确实会减少到与使用裸 pyoptsparse、scipy 或 matlab 优化器类似的功能。在这种极端情况下,除了 ExternalCodeComp 的易用性之外,OpenMDAO 并没有给 table 带来很多好处。