Hermitian矩阵的特征分解和奇异值分解之间的区别

计算科学 matlab 矩阵
2021-12-05 05:21:30

让我们考虑以下 Hermitian 矩阵

T =[   1.0000            -0.1000 - 0.0600i   0.3000 - 0.0300i
      -0.1000 + 0.0600i   1.0000            -0.0400 + 0.0800i
       0.3000 + 0.0300i  -0.0400 - 0.0800i   1.5000            ]

使用matlab的SVD分解是 [U,S,V] = svd(T)

U =

  -0.4311 + 0.0000i   0.3253 - 0.0000i   0.8416 + 0.0000i
   0.1302 - 0.1375i  -0.8697 + 0.1658i   0.4028 - 0.1345i
  -0.8757 - 0.1074i  -0.2973 - 0.1484i  -0.3336 + 0.0024i

S =

  1.0e+003 *

    1.6662         0         0
         0    1.0101         0
         0         0    0.8237

V =

  -0.4311             0.3253             0.8416          
   0.1302 - 0.1375i  -0.8697 + 0.1658i   0.4028 - 0.1345i
  -0.8757 - 0.1074i  -0.2973 - 0.1484i  -0.3336 + 0.0024i

特征分解是 [F,D] = eig(T_t)

F =

  -0.8416 - 0.0059i  -0.2911 + 0.1453i   0.4279 - 0.0525i
  -0.4037 + 0.1317i   0.7040 - 0.5368i  -0.1125 + 0.1524i
   0.3336             0.3323             0.8822          

D =

  1.0e+003 *

    0.8237         0         0
         0    1.0101         0
         0         0    1.6662

理论上,对于 Hermitian 矩阵,两种分解是等价的。然而,我们观察到两种分解都给出相同的特征值,但特​​征向量不同。哪种分解是准确的?

1个回答

如果您按条目划分第三列F由任何一个的第一列U要么V,你会发现两者只是彼此的缩放版本。Matlab 将特征向量返回为单位范数,但它们可以通过模 1 的复数任意缩放。