ABSTRACT

The conjugate gradient method is an enhanced version of the method of steepest descent. First, the multiple residuals are used so as to increase the dimensions of the underlying search set of vectors. Second, conjugate directions are used so that the resulting algebraic systems for the coefficients will be diagonal. The utility of the Krylov approach to both the conjugate gradient and the generalized residual methods is a nice analysis of convergence properties. The chapter presents the Message Passing Interface Fortran code of the preconditioned conjugate gradient algorithm for the solution of a Poisson problem. The preconditioner is an implementation of the additive Schwarz preconditioner with no coarse mesh acceleration. It uses SSOR on large blocks of unknowns by partitioning the second index with zero boundary conditions on the grid boundaries.