np.diag(np.dot(np.dot(a, b), a.T))
np.einsum('ij,ji->i', np.dot(a, b), a.T)
np.einsum('ij,ij->i', np.dot(a, b), a)
Существует ли точечный продукт numpy/scipy, вычисляющий только диагональные записи результата?