问题: 我已将CT Kelley编写的 Jacobian-Free Newton-Krylov求解器翻译成 Fortran,现在想在一个共享内存系统上使用 OpenMP 将其并行化。另外,我想用 ILU0 或 ILUT 预处理器对系统进行预处理。
考虑的解决方案: 我想使用英特尔 MKL 库中的 FGMRES - 我希望它经过高度优化和线程化。由于它不支持复数,我将按照英特尔的解决方案来拆分问题:
对于 ILU0 前提条件,我决定使用Yousef Saad的《稀疏线性系统的迭代方法第二版》一书中的一段代码并将其并行化。
然后我将使用?getri
MKL 中的“计算 LU 因子一般矩阵的逆”。
问:听起来合理吗?共享内存系统的任何其他求解器?