This package uses the projected preconditioned conjugate gradient method to solve saddle-point systems of the form
where is an real and symmetric matrix, is an real, symmetric and positive semi-deﬁnite (possibly zero) matrix, and A preconditioner of the form
must be available where is a real and symmetric matrix. The following assumptions are assumed to hold:
If these assumptions do not hold, then negative curvature may occur and, consequently, the method terminates with an error.
The projected preconditioned conjugate gradient method iteratively ﬁnds the vector and then, once has been computed to a high enough level of accuracy, the vector is computed by performing one additional solve with the preconditioner Reverse communication is used for preconditioning and matrix-vector products of the form and HSL_MI13 may be used to eﬃciently form suitable preconditioners and carry out the required preconditioning solves; HSL_MC65 may be used to form the required matrix-vector products. HSL_MI13 and HSL_MC65 are both available as part of the current version of HSL.