雅可比旋轉
在數值線性代數中,雅可比旋轉是 n 維內積空間的二維線性子空間的旋轉 Qkℓ,在用做相似變換的時候,被選擇來置零 n×n 實數對稱矩陣 A 的非對角元素的對稱對:
它是雅可比特徵值算法的核心運算,它是數值上穩定的並適合用並行計算實現。
注意到只有 A 的行 k 和 ℓ 與列 k 和 ℓ 受到影響,並且 A′ 將保持對稱。還有給 Qkℓ 的明顯的矩陣很少被計算,轉而計算輔助值,A 也有效率和數值上穩定的方式更新。但是,為了引用,我們寫矩陣為
就是說,除了四個元素之外,Qkℓ 是一個單位矩陣,兩個在對角線上(qkk 和 qℓℓ 都等於 c) 而兩個位於遠離對角的位置上(qkℓ 和 Qℓk 分別等於 s 和 −s)。這裡的 c = cos ϑ 而 s = sin ϑ 對於某個角度 ϑ;但是對於應用這種旋轉,這個角度自身是不需要的。使用克羅內克δ符號,矩陣元素可以寫為
假設 h 是不為 k 或 ℓ 的索引(它們自身必須是不同的)。類似的更改過程在代數上寫為
數值穩定計算
要確定需要更改的數量,我們必須解遠離對角的元素為零的方程(Golub & Van Loan 1996,§8.4) 。這蘊涵了
設 β 是這個數量的一半,
如果 akℓ 是零,我們可以停止而不需要進行更改,因此我們永不除以零。設 t 是 tan ϑ。則通過一些三角恆等式我們簡約這個方程為
為了穩定性我們選擇解
以此我們可以獲得 c 和 s 為
儘管我們可以使用前面給出的代數更改等式,重寫它們會更好。設
所以 ρ = tan(ϑ/2)。則修訂後的修改方程為
如前面提及的,我們永不需要明確的計算旋轉角度 ϑ。事實上,我們可以通過只保留三個值 k, ℓ 和 t 來重新生成由 Qkℓ 確定的對稱更改,帶有 t 對零旋轉設置為零。
參見
引用
- Golub, Gene H. & Charles F. Van Loan (1996), Matrix Computations (3rd ed.), Baltimore: Johns Hopkins University Press, ISBN 978-0-8018-5414-9 (頁面存檔備份,存於網際網路檔案館)