使用子空间迭代方法获得特征值。也得到特征向量,但我不明白为什么

计算科学 特征值
2021-12-10 01:34:24

我正在使用迭代子空间算法(dsrrit)来获得特征向量方程的特征值

2x=λx
在哪里2是通常的拉普拉斯算子。该算法返回一组特征值λ和一个子空间Q跨越的特征向量λ.

文献称

“程序不会产生一组与计算的特征值相对应的特征向量”......“如果需要明确的特征向量,它们可以通过评估特征向量来获得T并申请(2)。”

但我已经在返回的子空间中绘制了向量Q它们确实与预期的特征向量相匹配λ. 是否有特定条件可以保证这一点?(我的特征向量是实数,我的算子用对称矩阵表示)

2个回答

我没有详细阅读它,但来自您的链接文件(第 2 页):

SRRIT 试图计算一个嵌套的正交基序列Q1,Q2,,Qm. 具体来说,如果一切顺利,子程序会生成一个矩阵 Q,其正交列具有以下属性:|λi|>|λi+1|然后q1,,qi跨度Qi.

这意味着如果您的矩阵只有实特征值,则|λ1||λ2||λn|, 然后qi将是一个特征向量λi,利用矩阵是对称的并且特征向量将彼此正交的事实。

如果λi,λi+1是两个复共轭特征值,那么对应的列Q不会是特征向量,因为它们是真实的。

原因是Qi是原始矩阵的特征向量实际上是由于该矩阵的对称性。是的,由于对称性,特征值确实是实数。但也由于对称性,T从返回的矩阵dsrrit不仅是上三角矩阵,而且本身也是对称的。因此它必须是一个对角矩阵。T矩阵可以被认为是表示简化特征系统的特征向量。通常,原始矩阵的特征向量计算为QT. 在这种情况下,因为T是对角线,它只是从Q矩阵。

特征值都是实数不足以使特征向量成为Q. 构造具有实特征值的非对称矩阵很容易。在这种情况下,T将不是对角线,因此特征向量必须计算为QT.