如何得到多维np中二维矩阵的厄米特矩阵.例如F有(3,2,2,2)个形状,前两个维度表示某一类别的项,数据是一个存在于后两个维度(2*2)的二维矩阵:
import numpy as np
F=np.array([[[[ 1+2.j, 2-1.j],[1+2.j, 2-1.j]],
[[ 0, 2+1.j],[0, 3-1.j]]],
[[[ 1+2.j, 2-1.j],[ 1+2.j, 2-1.j]],
[[ 0, 2+1.j],[ 0, 3-1.j]]],
[[[ 1+2.j, 2-1.j],[ 1+2.j, 2-1.j]],
[[ 0, 2+1.j],[ 0, 3-1.j]]]])
因此,输出应该是所有2*2矩阵的厄米特矩阵,而输出应该具有与F相同的形状:
F_Herm=np.array([[[[ 1-2.j, 1-2.j],[2+1.j, 2+1.j]],
[[ 0, 0],[2-1.j, 3+1.j]]],
[[[ 1-2.j, 1-2.j],[2+1.j, 2+1.j]],
[[ 0, 0],[ 2-1.j, 3+1.j]]],
[[[ 1-2.j, 1-2.j],[ 2+1.j, 2+1.j]],
[[ 0, 0],[2-1.j, 3+1.j]]]])
因此F_Herm.Shape应该等于(3,2,2,2)