#arrays #variables #matrix #openmdao
#массивы #переменные #матрица #openmdao
Вопрос:
Возможно ли, чтобы списки или массивы передавались в качестве выходных данных компонентов в OpenMDAO?
Поскольку моя задача основана на матрицах 6×6 для решения уравнения движения с 6 степенями свободы, я хотел бы иметь возможность сделать следующее:
M = np.ones([6, 6]) outputs['M'] = M
Однако это приводит к ошибке:
Ошибка значения: не удается преобразовать массив размером 36 в форму (1,)
Есть ли какой-либо способ избежать передачи каждого из 36 значений отдельно?
Ответ №1:
Да, вы можете объявить вывод любого размера или формы в setup
методе вашего компонента, выполнив следующие действия:
self.add_output('M', shape=(6, 6))
или
self.add_output('M', val=np.ones((6, 6)))