具有低秩 LHS 矩阵的大规模广义特征值问题

计算科学 线性代数 本征系统 稀疏矩阵
2021-12-19 19:29:13

假设我们已经推广了特征值问题:

BHBx=λAx

在哪里A是一个 nxn Hermitian 稀疏矩阵(n 非常大,所以我们没有A1但可以使用迭代方法求解)和全秩,以及B是一个 2xn 矩阵,使得BHB也是 nxn 但只有 2 级。因此,我们知道这个问题只能有 2 个非零特征值。是否有任何简单的方法可以通过利用非常低的秩来找到与非零特征值相对应的两个特征对BHB? 假设我们有两个特征向量B.

如果我只对与最大特征值对应的特征向量感兴趣,有没有比在转换后的标准特征值问题上使用简单的幂迭代更快的方法找到它:A1BHBx=λx?

谢谢!

2个回答

这个答案本质上是对@WolfgangBangerth 建议的方法的修复,因为评论中没有足够的空间。

从...开始

BHBx=λAx,
如果我们对对应于非零特征值的特征对感兴趣,那么我们必须有BHBx位于范围内A, 和Ax位于范围内BHB,也就是说,由于A是可逆的,
BHBxRange(A)=Cn,
AxRange(BHB)=span(BH).
现在,第一个约束条件很容易满足,但我们必须确保Axspan(BH), 等价于约束
xspan(A1BH).
那么如果酉矩阵的列Q跨越的列A1BH, 我们有
x=QQHx
对于对应于非零特征值的任何特征向量。

我们现在准备使用 Wolfgang 方法中的机制:

  1. 计算W:=A1BH通过两个(预处理的)Krylov 求解
  2. 计算[Q,R]=qr(W)
  3. 形式K:=(BQ)H(BQ)M:=QH(AQ)
  4. 解决2×2特征值问题KU=MUΛ
  5. 形成有趣的全局特征向量,Z:=QU.

如果B2×n,那么仅有的两个非平凡特征向量(即对应于两个非零特征值的特征向量)可以写成形成两行向量的线性组合B. 我们称这两个向量b1,b2以便B=[b1Tb2T].

现在,让PR2×n成为投影仪Rn跨越的二维空间b1,b2. 由于我们只对这个空间中的向量感兴趣,我们知道两个非平凡特征向量必须满足x=PTPx. 特征值问题可以写成

BHBPTPx=λAPTPx.
即使这个线性系统有n行,这实际上只是一个二维问题,因为我们只能确定x. 线性系统的其余部分是超定的,但我们可以通过投影到非平凡子空间来选择两个独立的方程:
PBHBPTPx=λPAPTPx.

换句话说,你只需要解决2×2特征值问题

PBHBPTy=λ(PAPT)y.
这很容易解决,因为所涉及的矩阵只有2×2右边的矩阵可以很容易地用两个矩阵向量和两个向量向量乘积来计算。