OpenMDAO 中灵活的未知大小

Flexible unknown size in OpenMDAO

我有一个在二维网格上生成结果的组件。我希望能够更改该网格的大小作为组件的输入。当我这样做时,我会收到如下错误:

ValueError: could not broadcast input array from shape (42025) into shape (40401)

我有如下参数和未知数:

self.add_param('plot_res', val=201, pass_by_obj=True, description='Data output resolution')
self.add_output('out_grid', shape=201*201, description='output grid')

当我更改 plot_res 时,出现上面粘贴的错误。

在此先感谢您的帮助。

调用 setup() 后,您不能更改变量的大小。相反,我建议您将所需的大小作为 __init__ 方法的参数。