Summary of Sparse Linear Solvers Available In PETSc

Preconditioners

Algorithm

Associated Type

Matrix Types

External Packages

Parallel

Complex

Generic

Jacobi

PCJACOBI

MATAIJ, MATBAIJ, MATSBAIJ, MATDENSE

—

X

X

Point Block Jacobi

PCPBJACOBI

MATAIJ, MATBAIJ, MATSBAIJ, MATKAIJ, MATMPISELL, MATIS

—

X

X

Block Jacobi

PCBJACOBI

MATAIJ, MATBAIJ, MATSBAIJ

—

X

X

SOR

PCSOR

MATAIJ, MATSEQDENSE, MATSEQSBAIJ

—

X

Point Block SOR

MATSEQBAIJ (only for bs = 2,3,4,5)

—

X

Additive Schwarz

PCASM

MATAIJ, MATBAIJ, MATSBAIJ

—

X

X

Deflation

PCDEFLATION

All

—

X

X

Incomplete

ILU

PCILU

MATSEQAIJ, MATSEQBAIJ

—

X

ILU with drop tolerance

PCILU

MATSEQAIJ

SuperLU Sequential ILU solver

X

PCILU

MATAIJ

Euclid/hypre (PCHYPRE)

X

ICholesky

PCICC

MATSEQAIJ, MATSEQBAIJ, MATSEQSBAIJ

—

X

Matrix Free

Infrastructure

PCSHELL

All

—

X

X

Multigrid

Infrastructure

PCMG

All

—

X

X

Geometric

All

—

X

X

Smoothed Aggregation

PCGAMG

MATAIJ

—

X

X

Structured Geometric

PCPFMG

MATHYPRESTRUCT

hypre

X

Classical Algebraic

PCHYPRE, PCML

MATAIJ

BoomerAMG/hypre, ML/Trilinos

X

Domain Decomposition

PCHPDDM

MATAIJ, MATBAIJ, MATSBAIJ, MATIS

HPDDM

X

X

Physics-based Splitting

Relaxation & Schur Complement

PCFIELDSPLIT

MATAIJ, MATBAIJ, MATNEST

—

X

X

Least Squares Commutator

PCLSC

MATSCHURCOMPLEMENT

—

X

X

Approximate Inverse

AIV

PCHYPRE, PCSPAI

MATAIJ

Parasails/hypre, SPAI

X

Substructuring

Balancing Neumann-Neumann

PCNN

MATIS

—

X

X

Balancing Domain Decomposition

PCBDDC

MATIS

—

X

X



Krylov Methods

Algorithm

Associated Type

External Packages

Parallel

Complex

Richardson

KSPRICHARDSON

—

X

X

Chebyshev

KSPCHEBYSHEV

—

X

X

GMRES

KSPGMRES

—

X

X

Flexible GMRES

KSPFGMRES

—

X

X

LGMRES

KSPLGMRES

—

X

X

Conjugate Gradient

KSPCG

—

X

X

Conjugate Gradient Squared

KSPCGS

—

X

X

Conjugate Gradient for Least Squares

KSPCGLS

—

X

X

Conjugate Gradient on Normal Equations

KSPCGNE

—

X

X

Bi-Conjugate Gradient

KSPBICG

—

X

X

Stabilized Bi-Conjugate Gradient

KSPBCGS

—

X

X

Transpose-free QMR

KSPTFQMR

—

X

X

Conjugate Residual

KSPCR

—

X

X

Generalized Conjugate Residual

KSPGCR

—

X

X

Generalized Conjugate Residual (with inner normalization and deflated restarts)

KSPHPDDM

HPDDM

X

X

Minimum Residual

KSPMINRES

—

X

X

LSQR

KSPLSQR

—

X

X

SYMMLQ

KSPSYMMLQ

—

X

X