将声明的输入变量(全局)连接到 ExecComp

Connecting the declared input variables (global) to ExecComp

有没有办法连接全局输入变量,即

def initialize(self):
    self.options.declare('num_elements', types=int)

执行官?

prob.model.add_subsystem('paraboloid', ExecComp('f = num_elements*3 + c')) 

无法连接到声明的选项。您唯一可以连接的是使用 add_inputadd_output 添加到组件内部的变量。我认为在这种情况下,由于 num_elements 并不意味着改变,您应该使用字符串表达式将值放入 ExecComp 中——类似于:

prob.model.add_subsystem('paraboloid', ExecComp('f = %d*3 + c' % num_elements))

其中 num_elements 是顶级脚本中的一个变量。