У меня есть переменная numpy.ndarray
A
размера MxN
. Я хочу взять каждую строку и умножить ее на сопряженное транспонирование. Для первой строки получим:
np.matmul(np.expand_dims(A[0,:],axis=1),np.expand_dims(A[0,:].conj(),axis=0))
мы получаем результат размера NxN
. Я хочу, чтобы окончательный результат всей операции имел размер MxNxN
.
Я могу сделать это с помощью простого цикла, который перебирает строки A
и объединяет результаты. Я хочу избежать цикла for для более быстрого выполнения операций SIMD. Есть ли способ сделать это в одной строке кода с вещанием?
В противном случае, могу ли я сделать что-то еще и как-то переформировать результаты в свое требование?