Summary of Sparse Linear Solvers Available In PETSc#
Preconditioners#
Algorithm |
Associated Type |
Matrix Types |
External Packages |
Parallel |
Complex |
|
---|---|---|---|---|---|---|
Generic |
Jacobi |
— |
X |
X |
||
Point Block Jacobi |
— |
X |
X |
|||
Variable Point Block Jacobi |
— |
X |
X |
|||
Block Jacobi |
— |
X |
X |
|||
SOR |
— |
X |
X |
|||
Point Block SOR |
|
— |
X |
X |
||
Kaczmarz |
— |
X |
X |
|||
Additive Schwarz |
— |
X |
X |
|||
Vanka/overlapping patches |
— |
X |
X |
|||
Deflation |
All |
— |
X |
X |
||
Incomplete |
ILU |
— |
X |
|||
ILU with drop tolerance |
X |
|||||
Euclid/hypre ( |
X |
|||||
ICholesky |
— |
X |
||||
Algebraic recursive multilevel |
X |
|||||
Matrix Free |
Infrastructure |
All |
— |
X |
X |
|
Multigrid |
Infrastructure |
All |
— |
X |
X |
|
Geometric |
All |
— |
X |
X |
||
Smoothed Aggregation |
— |
X |
X |
|||
Smoothed Aggregation (ML) |
X |
X |
||||
Structured Geometric |
X |
|||||
Classical Algebraic |
X |
|||||
Multi-group MG |
— |
X |
X |
|||
Domain Decomposition |
X |
X |
||||
Hierarchical matrices |
\(\mathcal H^2\) |
X |
||||
Physics-based Splitting |
Relaxation & Schur Complement |
— |
X |
X |
||
Galerkin composition |
Any |
— |
X |
X |
||
Additive/multiplicative |
Any |
— |
X |
X |
||
Least Squares Commutator |
— |
X |
X |
|||
Parallel transformation |
Redistribution |
— |
X |
X |
||
Telescoping communicator |
— |
X |
X |
|||
Distribute for MPI |
— |
X |
X |
|||
Approximate Inverse |
AIV |
X |
||||
Substructuring |
Balancing Neumann-Neumann |
— |
X |
X |
||
Balancing Domain Decomposition |
— |
X |
X |
|||
2-level Schwarz wire basket |
— |
X |
X |
Direct Solvers#
Algorithm |
Associated Type |
Matrix Types |
External Packages |
Parallel |
Complex |
|
---|---|---|---|---|---|---|
Direct LU |
LU |
— |
X |
|||
X |
||||||
X |
X |
|||||
X |
X |
|||||
X |
X |
|||||
X |
||||||
X |
||||||
X |
||||||
X |
X |
|||||
X |
X |
|||||
Direct Cholesky |
Cholesky |
— |
X |
|||
X |
X |
|||||
X |
X |
|||||
X |
||||||
X |
X |
|||||
X |
||||||
Direct SVD |
Singular value decomposition |
Any |
— |
X |
X |
|
Direct QR |
QR |
|||||
XXt and XYt |
— |
X |
Krylov Methods#
Algorithm |
Associated Type |
External Packages |
Parallel |
Complex |
---|---|---|---|---|
Richardson |
— |
X |
X |
|
Chebyshev |
— |
X |
X |
|
GMRES |
— |
X |
X |
|
Flexible GMRES |
— |
X |
X |
|
LGMRES |
— |
X |
X |
|
Deflated GMRES |
— |
X |
||
Two-stage with least squares residual minimization |
— |
X |
X |
|
Conjugate Gradient |
— |
X |
X |
|
Conjugate Gradient Squared |
— |
X |
X |
|
Conjugate Gradient for Least Squares |
— |
X |
X |
|
Conjugate Gradient on Normal Equations |
— |
X |
X |
|
Nash Conjugate Gradient with trust region constraint |
— |
X |
X |
|
Conjugate Gradient with trust region constraint |
— |
X |
X |
|
Gould et al Conjugate Gradient with trust region constraint |
— |
X |
X |
|
Steinhaug Conjugate Gradient with trust region constraint |
— |
X |
X |
|
Left Conjugate Direction |
— |
X |
X |
|
Bi-Conjugate Gradient |
— |
X |
X |
|
Stabilized Bi-Conjugate Gradient |
— |
X |
X |
|
Improved Stabilized Bi-Conjugate Gradient |
— |
X |
X |
|
Transpose-free QMR |
— |
X |
X |
|
Tony Chan QMR |
— |
X |
X |
|
QMR BiCGStab |
— |
X |
X |
|
Flexible Conjugate Gradients |
— |
X |
X |
|
Flexible stabilized Bi-Conjugate Gradients |
— |
X |
X |
|
Flexible stabilized Bi-Conjugate Gradients with fewer reductions |
— |
X |
X |
|
Stabilized Bi-Conjugate Gradients with length \(\ell\) recurrence |
— |
X |
X |
|
Conjugate Residual |
— |
X |
X |
|
Generalized Conjugate Residual |
— |
X |
X |
|
Generalized Conjugate Residual (with inner normalization and deflated restarts) |
X |
X |
||
Minimum Residual |
— |
X |
X |
|
LSQR |
— |
X |
X |
|
SYMMLQ |
— |
X |
X |
|
FETI-DP (reduction to dual-primal sub-problem) |
— |
X |
X |
|
Gropp’s overlapped reduction Conjugate Gradient |
— |
X |
X |
|
Pipelined Conjugate Gradient |
— |
X |
X |
|
Pipelined Conjugate Gradient with residual replacement |
— |
X |
X |
|
Pipelined depth \(\ell\) Conjugate Gradient |
— |
X |
X |
|
Pipelined predict-and-recompute Conjugate Gradient |
— |
X |
X |
|
Pipelined Conjugate Gradient over iteration pairs |
— |
X |
X |
|
Pipelined flexible Conjugate Gradient |
— |
X |
X |
|
Pipelined stabilized Bi-Conjugate Gradients |
— |
X |
X |
|
Pipelined Conjugate Residual |
— |
X |
X |
|
Pipelined flexible GMRES |
— |
X |
X |
|
Pipelined Generalized Conjugate Residual |
— |
X |
X |
|
Pipelined GMRES |
— |
X |
X |