GenEO
Résumé
The open source software GenEO, written in Python, includes two new families of preconditioners for symmetric positive definite linear systems.
1) First, the AWG preconditioners (for Algebraic-Woodbury-GenEO) have the feature of being algebraic \cite{zbMATH07846109,10.1007/978-3-030-95025-5_81}. By this, we mean that only the knowledge of the matrix A for which the linear system is being solved is required. Thanks to the GenEO spectral coarse space technique, the condition number of the preconditioned operator is bounded theoretically from above. This upper bound can be made smaller by enriching the coarse space with more spectral modes.
The novelty is that, unlike in previous work on the GenEO coarse spaces, no knowledge of a partially non-assembled form of A is required. Indeed, the spectral coarse space technique is not applied directly to A but to a low-rank modification of A of which a suitable non-assembled form is known by construction. The extra cost is a second coarse solve in the preconditioner.
2) Second, the framework for Krylov subspace methods with adaptive multipreconditioning is implemented. Multipreconditiioning is a technique that allows to apply more than one preconditioner at each step. Domain decomposition is a natural application. Since a multipreconditioned iteration is more expensive than a classical iteration, it is advantageous to multiprecondition only when necessary. To this end, an adapativity scheme was proposed in \cite{zbMATH06601530} and is implemented in GenEO.
GenEO uses Petsc4py and Dolfinx to solve 2D and 3D problems. Then, it is easy to compare this new family of preconditioners with those already defined in Petsc and see their impact on various problems with highly heterogeneous coefficients.
@Article{zbMATH06601530,
Author = {Spillane, Nicole},
Title = {An adaptive multipreconditioned conjugate gradient algorithm},
FJournal = {SIAM Journal on Scientific Computing},
Journal = {SIAM J. Sci. Comput.},
ISSN = {1064-8275},
Volume = {38},
Number = {3},
Pages = {a1896--a1918},
Year = {2016},
Language = {English},
DOI = {10.1137/15M1028534},
Keywords = {65F10,65N30,65N55},
zbMATH = {6601530},
Zbl = {1416.65087}
}
@Article{zbMATH07846109,
Author = {Gouarin, Lo{\"{\i}}c and Spillane, Nicole},
Title = {Fully algebraic domain decomposition preconditioners with adaptive spectral bounds},
FJournal = {ETNA. Electronic Transactions on Numerical Analysis},
Journal = {ETNA, Electron. Trans. Numer. Anal.},
ISSN = {1068-9613},
Volume = {60},
Pages = {169--196},
Year = {2024},
Language = {English},
DOI = {10.1553/etna_vol60s169},
Keywords = {65F10,65N30,65N55},
URL = {etna.mcs.kent.edu/volumes/2021-2030/vol60/abstract.php?vol=60&pages=169-196},
zbMATH = {7846109}
}
@inproceedings{10.1007/978-3-030-95025-5_81,
abstract = {The starting point for the algebraic preconditioner is to relax condition (1) by allowing symmetric, but possibly indefinite, matrices in the splitting of A.},
address = {Cham},
author = {Spillane, Nicole},
booktitle = {Domain Decomposition Methods in Science and Engineering XXVI},
editor = {Brenner, Susanne C. and Chung, Eric and Klawonn, Axel and Kwok, Felix and Xu, Jinchao and Zou, Jun},
isbn = {978-3-030-95025-5},
pages = {745--752},
publisher = {Springer International Publishing},
title = {Toward a New Fully Algebraic Preconditioner for Symmetric Positive Definite Problems},
year = {2022}}