有没有办法在OpenMDAO中使用符号变量导出表达式?

问题描述 投票:0回答:1

我想使用 OpenMDAO 编写的代码块来提取输出表达式作为几个变量的函数(需要声明为符号)。在这种情况下,问题的结构不是高度嵌套的,所以也许我会浪费更少的时间直接手动完成它,但我想知道是否存在任何类似的功能来执行此操作。

在这种情况下,结构如下:仅计算作为马赫数 (M) 和升力系数 (CL) 函数的阻力系数 CD:

每个贡献(CD0 和 e)都是由多个组件(在本例中为 ExplicitComponents)组成的组,并进一步依赖于 M 和 CL。

python symbolic-math openmdao
1个回答
0
投票

您正在寻找

ExecComp
,它可以让您只需在初始化参数中键入一个方程。

文档位于此处

从这些文档复制的简单示例:

import openmdao.api as om

prob = om.Problem()
model = prob.model

model.add_subsystem('comp', om.ExecComp('y=x+1.'))

model.set_input_defaults('comp.x', 2.0)

prob.setup()

prob.run_model()

print(prob.get_val('comp.y'))
© www.soinside.com 2019 - 2024. All rights reserved.