next up previous
Next: Eigenvalues Up: No Title Previous: Over-relaxation

Conjugate Gradient

For this section, we must assume A is symmetric, positive-definite. The solution of Ax=b is also the minimum of tex2html_wrap_inline328 . The idea of CG is to iterate

displaymath330

where tex2html_wrap_inline332 are chosen so that tex2html_wrap_inline334 . A set of non-zero vectors tex2html_wrap_inline336 is called A-conjugate if tex2html_wrap_inline338 . A-conjugate vectors are also linearly independent. Starting with a zero initial guess for the solution, the iteration amounts to tex2html_wrap_inline340 . That is, the successive iterates are linear combinations of the tex2html_wrap_inline342 vectors. Thus the minimization will take at most N iterations.

Specifically, the steps are

eqnarray155

Note that you never have to enter the matrix entry-by-entry. Rather, you need to supply a routine that multiplies a given vector by a matrix.

For ill-conditioned matrices, even CG is slow. To speed-up the convergence, one pre-conditions the system. That is, one multiplies on the left by a pre-conditioning matrix, transforming the system.

eqnarray172

Choosing Q so that B is well conditioned will help enormously. If B is close to the identity, then tex2html_wrap_inline344 , so the Cholesky factorization of A can be useful. There are efficient ways of using preconditioners. In particular, you do not have to explicitly multiply matrices. Rather the CG algorithm includes another step in which an intermediate vector is multiplied by the preconditioner.

CG works only if A is symmetric, positive definite. What to do if we have a matrix that does not satisfy these conditions? Well, the matrix tex2html_wrap_inline346 is symmetric, and positive definite (all bets are off if A has a zero eigenvalue). You can try to use CG on this product matrix, recognizing tex2html_wrap_inline348 . This is the basis of teh conjugate gradient squared method. The drawback is that the condition number of tex2html_wrap_inline346 is the square of the condition number of A. Another variant of this idea is the bi-conjugate gradient method.


next up previous
Next: Eigenvalues Up: No Title Previous: Over-relaxation

E. Bruce Pitman
Wed Oct 28 09:33:45 EST 1998