我们包含了一个数值示例,以便潜在用户可以验证和比较Jacobi-Davidson算法的计算结果。
对称矩阵A的维度为n=1000。对角线元素为a_{i,i} = i,次对角线元素为a_{i,i-1} = a_{i,i+1}= 0.5,并且a_{1000,1} = a_{1,1000} = 0.5。其他所有元素均为零。此示例取自[88],并在[411, p. 410]中针对Jacobi-Davidson算法进行了讨论。
我们使用算法4.17来计算{k}_{\max}=10个最大特征值。输入参数选择如下:初始向量{v}_0=(0.01,\ldots,0.01,1)^T,容差\epsilon = 10^{-8},子空间维度参数{m}_{\min}=10,{m}_{\max}=15,目标值\tau=1001。
我们在图4.5中以图形方式展示了残差向量的范数随迭代次数的变化。每次范数小于\epsilon时,表示在此精度内确定了特征值,并通过缩减继续迭代以确定下一个特征值。四幅图按字母顺序分别代表以下不同情况:
在图4.6中,我们展示了内部特征值的收敛历史,分别由算法4.17(顶部)和算法4.19(底部)获得,输入参数如下:{v}_0=(0.01,\ldots,0.01,1)^T,\tau=900.5,\epsilon = 10^{-8},{k}_{\max}=10,{m}_{\min}=5,{m}_{\max}=10。同样,每次曲线低于\epsilon,表示在此容差内特征值的近似收敛。所有图中,我们使用5步GMRES来求解校正方程(32)。左图未使用预处理,右图则采用{K}=\mathrm{diag}(A)-\tau I进行预处理,如算法4.18所示。