2007-06-23

Dense Matrix Eigen System

稠密矩阵特征值和特征向量的计算

稠密矩阵特征值计算一般分为两个步骤:
  1. 将矩阵A转化为Hessenberg矩阵H,A = Q'HQ,对于稠密矩阵,他的Hessenberg阵是三对角阵。
  2. 对Hessenberg阵H运用QR方法,求出H的特征值,H的特征值就是A的特征值。
  3. 用逆迭代的算法,对于一个给定的特征值,计算它对应的特征向量。

1.将矩阵A转化为Hessenberg矩阵H
这一步是整个算法最耗时的部分,一般来说有3种算法可以将A转化为Hessenberg矩阵。
  1. HouseHolder变换
  2. Givens变换
  3. Lanczos方法,这一方法主要针对大型稀疏矩阵
2.对Hessenberg阵H运用QR方法,求出H的特征值
这一步一般就是用经典的QR方法,主要Hessenberg阵在QR的迭代中保持Hessenberg阵的形式

3.用逆迭代的算法,对于一个给定的特征值,计算它对应的特征向量
对于一个给定的特征值t:
  1. (A - tI) y = b, b是一个随机矩阵,解这个方程得出y
  2. b = y / |y|,t = t + 1/(b * y)
  3. 最终b收敛与特征向量,t收敛与特征值

没有评论:

发表评论