gko::factorization#

Matrix factorisations used to build preconditioners and direct solvers. Each factorisation is a LinOpFactory that consumes a system matrix and produces a Factorization object storing the resulting factors in CSR format.

Exact factorisations (experimental)#

Incomplete factorisations (sequential / level-based)#

  • Ic — IC(0): incomplete Cholesky with the same sparsity pattern as the input matrix.

  • Ilu — ILU(0): incomplete LU with the same sparsity pattern as the input matrix.

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 — the LinOp that owns the factors and dispatches on apply (forward-/backward-solve or direct multiplication, depending on the stored representation).