QR方法是Francis于1961年发表的用于求解所有特征值的算法呢。该算法对对称矩阵和非对称矩阵都适用,都可以分解成正交矩阵Q和上三角矩阵R乘机的形式。但是在实际应用中,需要先进行相似变化在OR分解。其中,对于非对称矩阵,需要利用Hessenberg矩阵;而对于对称矩阵,需要利用三对角矩阵。如果再加上最后要讲的原点位移、降阶等技巧,整套算法会变得相当复杂。该方法是利用2个正交矩阵的乘机一定是正交矩阵,正交矩阵的逆矩阵也是正交矩阵,故QR分解是利用了上述特点,即对正交矩阵进行多次分解,相乘。
用QR方法求解矩阵特征值的基本流程:
(1)对需要求解的特征值得矩阵进行QR分解
(2)对分解出来的结果进行逆向相乘
(3)将相乘得到的矩阵进行QR分解
(4)对分解出来的结果进行逆向相乘
。。。。。
其中Q*Q^T=I,Q为正交矩阵,R为非奇异上三角矩阵。
Hessenberg矩阵
在上三角矩阵的基础上,若其对角线左下方的一条斜线不为0,则该方阵成为Hessenberg矩阵,也称海森伯格矩阵,如下图所示。