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

时间:2018-07-26 12:53:37

标签: openmdao

有没有一种方法可以连接全局输入变量,即

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

到execcomp?

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

1 个答案:

答案 0 :(得分:0)

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

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

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