继承 OpenMDAO 中的单元

Inheriting units in OpenMDAO

我在一个组中有一系列组件,其中一些组件是为通用目的而不是特定于我的应用程序而编写的。我想让这些通用组件的输入和输出从它们在父组中连接的参数继承单位。这可能吗?我不确定是否真的有必要,而且一切似乎都运行良好,但我不断收到以下警告:

Unit Conversions
GeneralComp.Output -> SpecificComp.Input : None -> kW

我可以预见一个问题,即传递给 GeneralComp 的单位在某些时候应该被转换,但由于单位丢失而没有转换。

我们无法从 src 连接继承单位。一般来说,这将是一种冒险的方式,并且可能会导致 some satellite to crash into mars。在这种情况下,我喜欢单位是明确的,因为不指定它们就可以正常工作(我们只是获取您提供的值并将其传递到下游)。

为什么不在您的组件中添加一个 'units' 初始化参数,这样您就可以在初始化时指定它?