gko::factorization#
Matrix factorisations used to build preconditioners and direct solvers.
Each factorisation is a LinOpFactory that consumes a system matrix and
produces its factors in CSR format. The exact factorisations Cholesky
and Lu return a Factorization object; the incomplete factorisations
return a Composition of the factor matrices.
Exact factorisations (experimental)#
experimental::Cholesky: sparse Cholesky for symmetric positive-definite systems.experimental::Lu: sparse LU for general systems.
Incomplete factorisations (exact IC(0) and ILU(0))#
Ic: IC(0), incomplete Cholesky with the same sparsity pattern as the input matrix; thealgorithmparameter selects thesparseliborsyncfreeimplementation.Ilu: ILU(0), incomplete LU with the same sparsity pattern as the input matrix; thealgorithmparameter selects thesparseliborsyncfreeimplementation.
Incomplete factorisations (fine-grained parallel)#
ParIc: ParIC, asynchronous fixed-point iteration for IC(0) (Chow & Patel).ParIlu: ParILU, asynchronous fixed-point iteration for ILU(0) (Chow & Patel).ParIct: ParICT, threshold-based incomplete Cholesky with sparsity-pattern refinement (Anzt et al.).ParIlut: ParILUT, threshold-based incomplete LU with sparsity-pattern refinement (Anzt et al.).
The factor container#
experimental::Factorization: theLinOpthatCholeskyandLureturn; it owns the factors, whichgko::experimental::solver::Directuses for its triangular solves;applymultiplies by the factors when they are kept as a composition.