The conjugate gradient method is a numerical algorithm that solves a system of linear equations
where is symmetric [positive definite]. If the matrix is ill-conditioned, i.e. it has a large condition number , it is often useful to use a preconditioning matrix that is chosen such that and solve the system
instead. Possible preconditioners are Jacobi, symmetric Gauss-Seidel or Symmetric Successive Over Relaxation (SSOR).
The simplest preconditioner is a diagonal matrix that has just the diagonal elements of . This is known as Jacobi preconditioning or diagonal scaling. Since diagonal matrices are trivial to invert and store in memory, a diagonal preconditioner is a good starting point. More sophisticated choices must trade-off the reduction in , and hence faster convergence, with the time spent computing .
External links
- Preconditioned Conjugate Gradient – math-linux.com
- An Introduction to the Conjugate Gradient Method Without the Agonizing Pain by Jonathan Richard Shewchuck