RuntimeError: Group (<model>): Output not found for design variable 'paraboloid.x'
RuntimeError: Group (<model>): Output not found for design variable 'paraboloid.x'
我一直在尝试 运行 在我的 mac 上打开 mdao。 Openmdao 似乎与 mpi4py 一起安装,但代码似乎无法正常工作。我收到以下错误
“RuntimeError:Group ():未找到设计变量 'paraboloid.x' 的输出。”
以下是代码。此代码是 openmdao 入门页面中提供的示例代码。请帮忙!
import openmdao.api as om
# build the model
prob = om.Problem()
prob.model.add_subsystem('paraboloid', om.ExecComp('f = (x-3)**2 + x*y + (y+4)**2 - 3'))
# setup the optimization
prob.driver = om.ScipyOptimizeDriver()
prob.driver.options['optimizer'] = 'SLSQP'
prob.model.add_design_var('paraboloid.x', lower=-50, upper=50)
prob.model.add_design_var('paraboloid.y', lower=-50, upper=50)
prob.model.add_objective('paraboloid.f')
prob.setup()
# Set initial values.
prob.set_val('paraboloid.x', 3.0)
prob.set_val('paraboloid.y', -4.0)
# run the optimization
prob.run_driver()
# minimum value
print(prob.get_val('paraboloid.f'))
# location of the minimum
print(prob.get_val('paraboloid.x'))
print(prob.get_val('paraboloid.y'))
此代码仅适用于 OpenMDAO >= 3.2(自动 ivc 功能)。使用命令 openmdao --version
检查您的版本。否则您必须添加 IndepVarComp 声明(参见 Conversion Guide for the Auto-IVC (IndepVarComp) Feature)。
我一直在尝试 运行 在我的 mac 上打开 mdao。 Openmdao 似乎与 mpi4py 一起安装,但代码似乎无法正常工作。我收到以下错误 “RuntimeError:Group ():未找到设计变量 'paraboloid.x' 的输出。” 以下是代码。此代码是 openmdao 入门页面中提供的示例代码。请帮忙!
import openmdao.api as om
# build the model
prob = om.Problem()
prob.model.add_subsystem('paraboloid', om.ExecComp('f = (x-3)**2 + x*y + (y+4)**2 - 3'))
# setup the optimization
prob.driver = om.ScipyOptimizeDriver()
prob.driver.options['optimizer'] = 'SLSQP'
prob.model.add_design_var('paraboloid.x', lower=-50, upper=50)
prob.model.add_design_var('paraboloid.y', lower=-50, upper=50)
prob.model.add_objective('paraboloid.f')
prob.setup()
# Set initial values.
prob.set_val('paraboloid.x', 3.0)
prob.set_val('paraboloid.y', -4.0)
# run the optimization
prob.run_driver()
# minimum value
print(prob.get_val('paraboloid.f'))
# location of the minimum
print(prob.get_val('paraboloid.x'))
print(prob.get_val('paraboloid.y'))
此代码仅适用于 OpenMDAO >= 3.2(自动 ivc 功能)。使用命令 openmdao --version
检查您的版本。否则您必须添加 IndepVarComp 声明(参见 Conversion Guide for the Auto-IVC (IndepVarComp) Feature)。