23 #include <cusp/detail/config.h>
103 template <
typename ValueType,
typename MemorySpace>
112 sweep default_direction;
129 template <
typename MatrixType>
130 gauss_seidel(
const MatrixType& A, sweep default_direction=SYMMETRIC,
131 typename thrust::detail::enable_if_convertible<typename MatrixType::format,cusp::csr_format>::type* = 0);
139 template<
typename MemorySpace2>
141 : ordering(A.ordering), color_offsets(A.color_offsets), default_direction(A.default_direction) {}
154 template <
typename MatrixType,
typename VectorType1,
typename VectorType2>
155 void operator()(
const MatrixType& A,
const VectorType1& b, VectorType2& x);
169 template <
typename MatrixType,
typename VectorType1,
typename VectorType2>
170 void operator()(
const MatrixType& A,
const VectorType1& b, VectorType2& x, sweep direction);
178 #include <cusp/relaxation/detail/gauss_seidel.inl>
The array1d class is a 1D vector container that may contain elements stored in "host" or "device" mem...
gauss_seidel(const gauss_seidel< ValueType, MemorySpace2 > &A)
Represents a Gauss-Seidel relaxation scheme.
Abstract representation of a linear operator.
Abstract interface for iterative solvers.
void operator()(const MatrixType &A, const VectorType1 &b, VectorType2 &x)