Solving a Two-Dimensional Elliptic Model Problem with the Conjugate Gradient Method Using Matrix-Free SSOR Preconditioning in Matlab

Author/Creator ORCID

Date

2009

Department

Program

Citation of Original Publication

Rights

This item is likely protected under Title 17 of the U.S. Copyright Law. Unless on a Creative Commons license, for uses protected by Copyright Law, contact the copyright holder or the author.

Abstract

The existing Preconditioned Conjugate Gradient method in Matlab can be optimized in terms of wall clock time and, more importantly, required storage space. The developed optimized algorithm was tested repeatedly on a two dimensional Poisson problem to ensure that it produced the same numerical solution as the original Matlab function. The algorithm was optimized in several stages: rst a function was created that reused some vectors in the algorithm, next we developed a matrix-free method of computing matrix-vector multiplications with the system matrix, then a matrix-free method that implements preconditioning on the system matrix was derived, and nally all memory-saving techniques were combined in order to create a matrix-free Preconditioned Conjugate Gradient method. This superior algorithm computes the same numerical solution to our problem as Matlab's original method, but requires less memory and less time. Ultimately, the goal of optimizing the algorithm was achieved and convergence results are presented to con rm the accuracy of the new method and demonstrate its superiority.