Algorithm 809: PREQN: Fortran 77 subroutines for preconditioning the conjugate gradient method
PREQN is a package of Fortran 77 subroutines for automatically generating preconditioners for the conjugate gradient method. It is designed for solving a sequence of linear systems A(i)x = bi, i = 1, ..., t, where the coefficient matrices Ai are symmetric and positive definite and vary slowly. Problems of this type arise, for example, in nonlinear optimization. The preconditioners are based on limited-memory quasi-Newton updating and are recommended for problems in which (i) the coefficient matrices are not explicitly known and only matrix-vector products of the form Aiv can be computed; or (ii) the coefficient matrices are not sparse. PREQN is written so that a single call from a conjugate gradient routine performs the preconditioning operation and stores information needed for the generation of a new preconditioner.
algorithms preconditioning conjugate gradient method quasi-newtonmethod hessian-free newton method limited-memory method