GMRES中的参数选择难度

计算科学 线性代数 格瑞斯
2021-12-08 21:23:25

我们使用一阶隐式有限体积代码来模拟不可压缩流动。该代码的核心是利用(非预处理的)GMRES 方法来求解网页中给出的线性系统

一般来说,对于给定的问题,很难找到 GMRES 算法的“理想”设置,尤其是找到最大 Krylov 空间维度(内部迭代)的合适大小。我想知道是否有任何预先确定这些参数的估计,以规避一些试错过程(这对于大问题来说真的很麻烦和痛苦)。也许有人可以向我指出可能讨论此类问题的文献......?

有没有比 GMRES 更好的稀疏矩阵求解器?

3个回答

如果您不使用预处理器,这一切都是浪费的努力,因为没有选择参数会导致算法健壮或可扩展,而最不坏的选择将受到预处理的影响。 找到好的预条件器后,您可以查看重启的效果并决定如何在 GMRES 中管理重启,以及与其他方法(如 BiCGStab 和相关方法)进行比较。

另请参阅此处引用的 Embree 参考资料

除了@jed-brown 的回答,我强烈推荐这本书Finite elements and fast iterative solvers: with applications in incompressible fluid dynamics by Elman, Silvester and Wathen。这本书涵盖了有限元,但 Krylov 子空间方法的一般策略当然也适用于有限体积。

除了 Jed Brown 提到的预处理器之外,还有用于选择重启参数的自适应策略,这些策略也有可能加速收敛。参见例如AH Baker、ER Jessup、Tz.V. Kolev - 一种用于改变 GMRES(m) 中的重启参数的简单策略