Categories: Digest | Tags: | Views: 1,812

 前面写过一个perl版本的Jacobi方法求矩阵特征值特征向量的程序, 这两天在网上看到一个讲理论的, 正好可以参考一下.

 这篇文章来自: http://sxyd.sdut.edu.cn/zhanshi/shuzhifenxi/shuzhifenxi/4.3/szfx043.htm

 

Jacobi方法是求对称矩阵的全部特征值以及相应的特征向量的一种方法,它是基于以下两个结论
    1) 任何实对称矩阵A可以通过正交相似变换成对角型,即存在正交矩阵Q,使得

                QT AQ = diag(λ12 ,…,λn ) (3.1)

其中λi(i=1,2,…,n)A的特征值,Q中各列为相应的特征向量。

    2) 在正交相似变换下,矩阵元素的平方和不变。即设A=(aij)n×n ,Q交矩阵,记B=QT AQ=(bij)n×n , 则
               
    Jacobi方法的基本思想是通过一次正交变换,将A中的一对非零的非对角化成零并且使得非对角元素的平方和减小。反复进行上述过程,使变换后的矩阵的非对角元素的平方和趋于零,从而使该矩阵近似为对角矩阵,得到全部特征值和特征向量。

    1 矩阵的旋转变换
设A为n阶实对称矩阵,考虑矩阵

     
易见 Vij(φ)是正交矩阵, 记
             
注意到B=Vij A的第i,j行元素以及 的第i,j列元素为
    
可得
    
如果aij≠0,取φ使得 则有
      
A(1) 重复上述的过程,可得A(2) ,这样继续下去, 得到一个矩阵序列{A(k) }。可以证明, 虽然这种变换不一定能使矩阵中非对角元素零元素的个数单调增加,但可以保证非对角元素的平方和递减,我们以AA(1) 为例进行讨论。
设    由式(3.4)
     
可得
     
这表明,在上述旋转变换下,非对角元素的平方和严格单调递减,因而由(3.2)可知,对角元素的平方和单调增加。

    2. Jacobi方法

    通过一系列旋转变换将A变成A(k+1) ,求得A的全部特征值与特征向量的方法称为Jacobi方法。计算过程如下

    1)令k=0, A(k) =A

    2) 求整数i,j, 使得
    3) 计算旋转矩阵
        
    4) 计算A(k+1)

   
    5) 计算
    6) 若E(A(k+1))<ε, 则

           
为特征值,

     QT = (V(0) V(1) …V(k+1))T

的各列为相应的特征
向量;否则,k+1=>k
返回2,重复上述过程。
例5 用Jacobi
法求矩阵

的特征值和特征向量。

一般地,Jacobi法不能在有限步内将A化成对角阵,但有下面的定理 。

    定理3 设An阶使对称矩阵,对AJacobi法得到序列{A(k) }, 其中A(0) = A, 则
           
证明 由Jacobi法计算过程
           
故有
           (3.5)
另一方面,有计算A 的公式可以得到
         

于是有, 代入式(3.5)得
    
因为 所以
        

这篇文章来自 迷途知返(PWWANG.COM), 转载请注明出处。 版权说明

;) :| :x :twisted: :roll: :oops: :o :mrgreen: :lol: :idea: :evil: :cry: :arrow: :P :D :?: :? :) :( :!: 8O 8)

你可以使用@somebody:开头, 来邮件通知somebody你回复了他的留言(用户名区分大小写).