论文部分内容阅读
Krylov子空间方法可用于计算大规模稀疏矩阵的矩阵函数乘向量f (A)v.与其他数值代数问题如求解线性方程组、计算特征值问题等不同的是,计算f (A)v的Krylov子空间算法没有可计算的误差表达式或相应的残差的概念可以用来判定计算的精度、设计算法的停机准则.对于eAv的Arnoldi近似,Saad曾于1992年建立了误差展开式,并从数值试验结果中观察到展开式中的第一项是一个较好的后验误差估计.本文通过建立两个误差上界,首次给出了误差展开式中第一项是可靠的后验误差估计的理论依据.更进一步,我们将Saad的结论进行了推广,针对足够光滑的函数f (z),建立了其Krylov-like近似的误差展开式,同时从理论和数值实验两方面验证了误差展开式中的第一项是f (A)v的Krylov-like近似的可靠的后验误差估计,据此理论设计出了相应Krylov子空间算法的可靠的停机准则.计算f (A)v的Krylov子空间算法的误差可与求解线性方程组的对应方法的残差相联系.标准Arnoldi方法对应于求解方程组的Arnoldi方法,一般没有任何最优性.基于求解线性方程组的GMRES方法及其收敛性结果,本文提出了计算f (A)v的调和Ritz方法,并给出了相应的收敛性分析.同时根据标准Arnoldi算法的重启思想,设计出了重启的调和Ritz方法,解决了其计算量和存储量的问题.调和Ritz方法与矩阵A在目标点ξ处的调和Ritz值密切相关.和Arnoldi方法相比,调和Ritz方法有两点显著的优势,一是收敛曲线相比于标准Arnoldi方法更为光滑,二是通过算法中参数ξ的选取可以保证重启的调和Ritz方法对任意的重启步数均收敛,该点在实际中尤为重要.本文给出了ξ的三条选取准则及其显式表达式,并论证了调和Ritz算法对ξ的选取并不敏感,这表明,我们的方法具有普适性.数值实验表明了调和Ritz算法及其重启算法的有效性和光滑性,并且验证了算法对ξ的选取并不敏感.隐式重启算法通过构造合适的多项式过滤算子,可以有效的选取重启算法的初始向量,提高重启后的子空间的质量,加速目标不变子空间的收敛.基于该思想,本文给出了计算f (A)v的隐式重启Arnoldi算法,且在选取精确位移(即A的Ritz值)构造多项式过滤算子时,证明了计算f (A)v的隐式重启Arnoldi算法数学上与带收缩技术的重启Arnoldi算法等价.