如何为自动连接别名输出?
How to alias an output for automatic connection?
我目前有这个代码:
self.add_subsystem('IntegrateForTheta2Ue6', utilities.CumulativeIntegrateTrapeziums(n=n),
promotes_inputs=[('x', 'panel_lengths'),
('x0', 'stagnation_point_position'),
('y', 'ue5'),
('y0', 'panel_start_external_tangential_velocity')],
promotes_outputs=[('cumulative_integral', 'intue5')])
self.add_subsystem('ThwaitesCalculateMomentumThickness', ThwaitesCalculateMomentumThickness(n=n),
promotes_inputs=['external_tangential_velocities',
'intue5',
'kinematic_viscosity'],
promotes_outputs=['momentum_thickness'])
它在 运行 时不会抛出任何错误,但在调试时很明显 intue5
又名 cumulative_integral
的输出没有被传递到 ThwaitesCalculateMomentumThickness - 它显示为所有那些。当我使用 self.connect('IntegrateForTheta2Ue6.intue5', 'ThwaitesCalculateMomentumThickness.intue5')
尝试上述操作时,我得到 Attempted to connect from 'IntegrateForTheta2Ue6.intue5' to 'ThwaitesCalculateMomentumThickness.intue5', but 'IntegrateForTheta2Ue6.intue5' doesn't exist.
我的输出别名是不是有误,或者这是一个错误?
更新到最新版本的 OpenMDAO 有效。我相信我已经在调用 run_model(),所以我不确定为什么它不起作用。
我目前有这个代码:
self.add_subsystem('IntegrateForTheta2Ue6', utilities.CumulativeIntegrateTrapeziums(n=n),
promotes_inputs=[('x', 'panel_lengths'),
('x0', 'stagnation_point_position'),
('y', 'ue5'),
('y0', 'panel_start_external_tangential_velocity')],
promotes_outputs=[('cumulative_integral', 'intue5')])
self.add_subsystem('ThwaitesCalculateMomentumThickness', ThwaitesCalculateMomentumThickness(n=n),
promotes_inputs=['external_tangential_velocities',
'intue5',
'kinematic_viscosity'],
promotes_outputs=['momentum_thickness'])
它在 运行 时不会抛出任何错误,但在调试时很明显 intue5
又名 cumulative_integral
的输出没有被传递到 ThwaitesCalculateMomentumThickness - 它显示为所有那些。当我使用 self.connect('IntegrateForTheta2Ue6.intue5', 'ThwaitesCalculateMomentumThickness.intue5')
尝试上述操作时,我得到 Attempted to connect from 'IntegrateForTheta2Ue6.intue5' to 'ThwaitesCalculateMomentumThickness.intue5', but 'IntegrateForTheta2Ue6.intue5' doesn't exist.
我的输出别名是不是有误,或者这是一个错误?
更新到最新版本的 OpenMDAO 有效。我相信我已经在调用 run_model(),所以我不确定为什么它不起作用。