|
| template<typename ValueType> |
| State | terminationDefaults () |
| | Return default termination conditions for a conjugate gradient solver.
|
| template<typename PositiveDefMatrix> |
| State | solve (const PositiveDefMatrix &A, const Vector< typename PositiveDefMatrix::ValueType > &b, Vector< typename PositiveDefMatrix::ValueType > &x, Preconditioner< typename PositiveDefMatrix::ValueType > &preconditioner, const State &termination=terminationDefaults< typename PositiveDefMatrix::ValueType >()) |
| | Solve Ax = b via the preconditioned conjugate gradient method.
|
| template<typename PositiveDefMatrix, typename Interrupter> |
| State | solve (const PositiveDefMatrix &A, const Vector< typename PositiveDefMatrix::ValueType > &b, Vector< typename PositiveDefMatrix::ValueType > &x, Preconditioner< typename PositiveDefMatrix::ValueType > &preconditioner, Interrupter &interrupter, const State &termination=terminationDefaults< typename PositiveDefMatrix::ValueType >()) |
| | Solve Ax = b via the preconditioned conjugate gradient method.
|
| std::ostream & | operator<< (std::ostream &os, const State &state) |
| template<typename T> |
| void | axpy (const T &a, const T *xVec, const T *yVec, T *resultVec, SizeType size) |
| | Compute ax + y.
|
| template<typename T> |
| void | axpy (const T &a, const Vector< T > &xVec, const Vector< T > &yVec, Vector< T > &result) |
| | Compute ax + y.
|
| template<typename MatrixOperator, typename VecValueType> |
| void | computeResidual (const MatrixOperator &A, const VecValueType *x, const VecValueType *b, VecValueType *r) |
| | Compute r = b − Ax.
|
| template<typename MatrixOperator, typename T> |
| void | computeResidual (const MatrixOperator &A, const Vector< T > &x, const Vector< T > &b, Vector< T > &r) |
| | Compute r = b − Ax.
|
Preconditioned conjugate gradient solver (solves Ax = b using the conjugate gradient method with one of a selection of preconditioners).
- Authors
- D.J. Hill, Peter Cucka