Version 1.2.1
30th January 2023 User documentation
 Recent Changes

Code Download
 Single
 Double
HSL_MI31: Symmetric positivedefinite system: conjugate gradient method, stopping according to the Anorm of the error
The package uses the preconditioned conjugate gradient method to solve the \(n \times n\) symmetric positivedefinite linear system \[\mathbf{Au} = \mathbf{b} ,\] and implements several stopping criteria based on lower and upper bounds of the Anorm of the error. If \(\mathbf{M} = \mathbf{U} ^T \mathbf{U}\) is the preconditioning matrix, the routine actually solves the preconditioned system \[\bar{\mathbf{A}} \mathbf{Y} = \bar{\mathbf{b}} ,\] with \(\bar{\mathbf{A}} = \mathbf{U} ^{T} \mathbf{A} \mathbf{U} ^{1}\) and \(\bar{\mathbf{b}} = \mathbf{U} ^{T} \mathbf{b}\) and recovers the solution \(\mathbf{u} = \mathbf{U} ^{1} \mathbf{y}\).
Reverse communication is used. Control is returned to the user for preconditioning operations and the products of \(\mathbf{A}\) with a vector \(\mathbf{z}\).