使用戴维森算法查找内部特征值

计算科学 特征值 迭代法 本征系统
2021-12-09 16:28:40

是否可以使用戴维森方法找到更接近某个 lambda 的内部特征值?我在网上搜索,但发现大多数人使用 Jacobi-Davidson 方法。

1个回答

这应该是可能的,但它可能不是最有效的。这就是我将如何做到的。

戴维森方法构建一个子空间来表示特征谱的所需区域。Davidson 的重要部分是从该子空间添加和删除向量的方法。与“正常”戴维森相比,我假设它正在寻找最低的特征值。

通常,Davidson 将来自最低特征值近似解的残差相加: 其中是预条件子(近似逆),是近似特征值,是对应的近似特征向量,是升序排列,是期望特征向量的个数。您可能希望将排序更改为与所需特征值的距离。

K(Aλ~iI)v~i:i<n
Kλ~iv~iin

戴维森在每次迭代时将向量添加到子空间。如果开始的猜测不好并且需要多次迭代,则子空间会被高特征空间污染。通常,具有大特征值的近似特征向量会周期性地从子空间中修剪出来。您可能想要修剪离您想要的特征值最远的特征向量。最简单的方法是使用所需特征对的最佳近似值作为起始猜测来重新启动该过程。