首页 > 解决方案 > 将声明的输入变量(全局)连接到 ExecComp

问题描述

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

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

到 execcomp?

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

标签: openmdao

解决方案


没有任何方法可以连接到已声明的选项。add_input您可以连接的唯一内容是使用或添加到组件内的变量add_output。我认为在这种情况下,由于num_elements不打算更改,您应该使用字符串表达式将值放入 ExecComp - 类似于:

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

wherenum_elements是顶级脚本中的变量。


推荐阅读