摘要
当矩阵的规模较大或者条件数较高时,格拉姆-施密特(Gram-Schmidt)正交化算法和其相关修正算法时常表现出数值不稳定性的现象。为了解决该问题,探索了修正Gram-Schmidt算法(MGS)中舍入误差的累积效应,然后基于无误差变换技术和双倍双精度算法,设计并实现了双倍双精度修正Gram-Schmidt正交化算法(DDMGS)。该算法的精度测试中显示所提算法较分块施密特正交化(BMGS_SVL,BMGS_CWY,BCGS_PIP与BCGS_PIO)的变体算法具有更好的数值稳定性,证明了DDMGS算法能够有效地减少矩阵的正交性损失,提升数值精度,展示了所提算法的可靠性。在算法的性能测试中,首先计算并比较了不同算法的浮点计算量(flops),随后将所提DDMGS算法与修正施密特正交化算法在ARM和Intel两款处理器上作比较,虽然DDMGS算法的运行时间分别是MGS的5.03倍和18.06倍左右,但获得了明显的精度提升效果。
- 单位