23#include <cusp/detail/config.h>
25#include <cusp/detail/execution_policy.h>
42template <
typename DerivedPolicy,
43 typename LinearOperator,
47 typename Preconditioner>
48void gmres(
const thrust::detail::execution_policy_base<DerivedPolicy> &exec,
49 const LinearOperator& A,
56template <
typename LinearOperator,
60void gmres(
const LinearOperator& A,
66template <
typename LinearOperator,
69void gmres(
const LinearOperator& A,
72 const size_t restart);
139template <
typename LinearOperator,
140 typename VectorType1,
141 typename VectorType2,
143 typename Preconditioner>
146 const VectorType2& b,
147 const size_t restart,
156#include <cusp/krylov/detail/gmres.inl>
Implements standard convergence criteria and reporting for iterative solvers.
void gmres(const LinearOperator &A, VectorType1 &x, const VectorType2 &b, const size_t restart, Monitor &monitor, Preconditioner &M)
GMRES method.