33 #include <cusp/detail/config.h>
36 #include <cusp/linear_operator.h>
38 #include <cusp/coo_matrix.h>
39 #include <cusp/csr_matrix.h>
40 #include <cusp/hyb_matrix.h>
45 #include <cusp/detail/spectral_radius.h>
60 template <
typename IndexType,
typename ValueType,
typename MemorySpace>
63 template <
typename IndexType,
typename ValueType>
67 typedef typename cusp::csr_matrix<IndexType,ValueType,cusp::host_memory>
setup_type;
68 typedef typename cusp::csr_matrix<IndexType,ValueType,cusp::host_memory>
solve_type;
71 template <
typename IndexType,
typename ValueType>
77 typedef typename cusp::csr_matrix<IndexType,ValueType,cusp::device_memory>
setup_type;
78 typedef typename cusp::csr_matrix<IndexType,ValueType,cusp::device_memory>
solve_type;
82 template<
typename MatrixType>
91 cusp::array1d<ValueType,MemorySpace>
B;
97 template<
typename SA_Level_Type>
107 template <
typename IndexType,
typename ValueType,
typename MemorySpace,
108 typename SmootherType,
123 template <
typename MatrixType>
126 template <
typename MatrixType,
typename ArrayType>
129 template <
typename MemorySpace2,
typename SmootherType2,
typename SolverType2>
134 template <
typename MatrixType,
typename ArrayType>
135 void init(
const MatrixType&
A,
const ArrayType&
B);
146 #include <cusp/precond/block_smoothed_aggregation.inl>
cusp::csr_matrix< IndexType, ValueType, cusp::device_memory > solve_type
amg_container< IndexType, ValueType, MemorySpace >::solve_type SolveMatrixType
MatrixType::value_type ValueType
cusp::block_multilevel< SolveMatrixType, SmootherType, SolverType > Parent
block_smoothed_aggregation(const MatrixType &A, const IndexType numRHS, const ValueType theta=0)
cusp::array1d< ValueType, MemorySpace > B
MatrixType::index_type IndexType
amg_container< IndexType, ValueType, MemorySpace >::solve_type::index_type IndexType
cusp::csr_matrix< IndexType, ValueType, cusp::device_memory > setup_type
cusp::csr_matrix< IndexType, ValueType, cusp::host_memory > setup_type
void init(const MatrixType &A, const ArrayType &B)
void extend_hierarchy(void)
amg_container< IndexType, ValueType, MemorySpace >::solve_type::value_type ValueType
amg_container< IndexType, ValueType, MemorySpace >::setup_type SetupMatrixType
std::vector< sa_level< SetupMatrixType > > sa_levels
cusp::csr_matrix< IndexType, ValueType, cusp::host_memory > solve_type
sa_level(const SA_Level_Type &sa_level)
MatrixType::memory_space MemorySpace
cusp::array1d< IndexType, MemorySpace > aggregates