雅可比旋转

数值线性代数中,雅可比旋转n内积空间的二维线性子空间的旋转 Qk,在用做相似变换的时候,被选择来置零 n×n 实数对称矩阵 A 的非对角元素的对称对:

它是雅可比特征值算法的核心运算,它是数值上稳定的并适合用并行计算实现。

注意到只有 A 的行 k 和 ℓ 与列 k 和 ℓ 受到影响,并且 A′ 将保持对称。还有给 Qk 的明显的矩阵很少被计算,转而计算辅助值,A 也有效率和数值上稳定的方式更新。但是,为了引用,我们写矩阵为

就是说,除了四个元素之外,Qk 是一个单位矩阵,两个在对角线上(qkkqℓℓ 都等于 c) 而两个位于远离对角的位置上(qkQk 分别等于 s 和 −s)。这里的 c = cos ϑ 而 s = sin ϑ 对于某个角度 ϑ;但是对于应用这种旋转,这个角度自身是不需要的。使用克罗内克δ符号,矩阵元素可以写为

假设 h 是不为 k 或 ℓ 的索引(它们自身必须是不同的)。类似的更改过程在代数上写为

数值稳定计算

要确定需要更改的数量,我们必须解远离对角的元素为零的方程(Golub & Van Loan 1996,§8.4)。这蕴涵了

 

设 β 是这个数量的一半,

 

如果 ak 是零,我们可以停止而不需要进行更改,因此我们永不除以零。设 t 是 tan ϑ。则通过一些三角恒等式我们简约这个方程为

 

为了稳定性我们选择解

 

以此我们可以获得 cs

 
 

尽管我们可以使用前面给出的代数更改等式,重写它们会更好。设

 

所以 ρ = tan(ϑ/2)。则修订后的修改方程为

 
 
 
 
 

如前面提及的,我们永不需要明确的计算旋转角度 ϑ。事实上,我们可以通过只保留三个值 k, ℓ 和 t 来重新生成由 Qk 确定的对称更改,带有 t 对零旋转设置为零。

参见

引用