如何在Python中编写矩阵的unit变换

时间:2018-07-18 11:40:13

标签: python numpy matrix transformation

给定矩阵集,据称共轭IV的转置将获得UB:

IV_transpose*UB(IV)=UB

但是,我得到了不同的输出。请查看代码;

angle=60
UB = np.array([
    [1,0,0,0],
    [0,math.cos(4*math.radians(angle)),math.sin(4*math.radians(angle)),0],
    [0, math.sin(4 * math.radians(angle)), -math.cos(4 
    *math.radians(angle)),0],[0,0,0,-1]])

IV = [[1.0],[1.0],[0.0],[0.0]]

IVT=np.conj(IV).T
UBIV=np.matmul(UB,IV)
output=np.matmul(IVT,UBIV)
print (output)
print (UB)

这是我的输出:

IV_transpose*UB(IV)=[[ 0.5]]
UB=
[[ 1.         0.         0.         0.       ]
[ 0.        -0.5       -0.8660254  0.       ]
[ 0.        -0.8660254  0.5        0.       ]
[ 0.         0.         0.        -1.       ]]

我的问题是为什么IV_transpose*UB(IV)!=UB。 如何使其相等? 谢谢。

0 个答案:

没有答案