CgCode = Conjugate Gradient Codes

Overview

CgCode is a package of CG (conjugate gradient) and CG-like methods for solving linear systems. The methods in the package are all exact three-term recursion methods, so that no parameter estimation is required. The various methods are designed to handle symmetric positive definite systems, symmetric indefinite systems, as well as general nonsymmetric indefinite systems. The package is designed in a matrix-storage-independant manner, so that the package can be used for any linear system as long as a matrix-vector product routine is provided by the user. The package handles the use of preconditioners in a very similar matrix-storage-independant way; the user simply provides a routine that will apply the preconditioner to a vector.

Obtaining CgCode

CgCode was developed originally by Steve Ashby at LLNL and Tom Manteuffel at LANL. Under the supervision of Paul Saylor and Steve Ashby, Michael Holst added some additional CG-like methods to the original package, modified the user interface to conform to a recently proposed standard for iterative methods, and wrote the initial version of the User's Guide as part of an MS project in 1990. The current User's Guide can be found here.

The CgCode source can be downloaded from the FETK Download Page.