Stokhos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Protected Member Functions | Private Types | List of all members
cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType > Class Template Reference

#include <block_smoothed_aggregation.h>

Inheritance diagram for cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >:
Inheritance graph
[legend]

Public Member Functions

template<typename MatrixType >
 block_smoothed_aggregation (const MatrixType &A, const IndexType numRHS, const ValueType theta=0)
 
template<typename MatrixType , typename ArrayType >
 block_smoothed_aggregation (const MatrixType &A, const ArrayType &B, const IndexType numRHS, const ValueType theta=0)
 
template<typename MemorySpace2 , typename SmootherType2 , typename SolverType2 >
 block_smoothed_aggregation (const block_smoothed_aggregation< IndexType, ValueType, MemorySpace2, SmootherType2, SolverType2 > &M)
 
- Public Member Functions inherited from cusp::block_multilevel< MatrixType, SmootherType, SolverType >
 block_multilevel ()
 
template<typename MatrixType2 , typename SmootherType2 , typename SolverType2 >
 block_multilevel (const block_multilevel< MatrixType2, SmootherType2, SolverType2 > &M)
 
template<typename Array1 , typename Array2 >
void operator() (const Array1 &x, Array2 &y)
 
template<typename Array1 , typename Array2 >
void solve (const Array1 &b, Array2 &x)
 
template<typename Array1 , typename Array2 , typename Monitor >
void solve (const Array1 &b, Array2 &x, Monitor &monitor)
 
void print (void)
 
double operator_complexity (void)
 
double grid_complexity (void)
 

Public Attributes

ValueType theta
 
IndexType numRHS
 
std::vector< sa_level< SetupMatrixType > > sa_levels
 
- Public Attributes inherited from cusp::block_multilevel< MatrixType, SmootherType, SolverType >
SolverType solver
 
std::vector< levellevels
 

Protected Member Functions

template<typename MatrixType , typename ArrayType >
void init (const MatrixType &A, const ArrayType &B)
 
void extend_hierarchy (void)
 
- Protected Member Functions inherited from cusp::block_multilevel< MatrixType, SmootherType, SolverType >
template<typename Array1 , typename Array2 >
void _solve (const Array1 &b, Array2 &x, const size_t i)
 

Private Types

typedef amg_container< IndexType, ValueType, MemorySpace >::setup_type SetupMatrixType
 
typedef amg_container< IndexType, ValueType, MemorySpace >::solve_type SolveMatrixType
 
typedef cusp::block_multilevel< SolveMatrixType, SmootherType, SolverType > Parent
 

Additional Inherited Members

- Public Types inherited from cusp::block_multilevel< MatrixType, SmootherType, SolverType >
typedef MatrixType::index_type IndexType
 
typedef MatrixType::value_type ValueType
 
typedef MatrixType::memory_space MemorySpace
 
typedef SmootherType::orientation Orientation
 

Detailed Description

template<typename IndexType, typename ValueType, typename MemorySpace, typename SmootherType, typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
class cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >

smoothed_aggregation : algebraic multigrid preconditoner based on smoothed aggregation

Definition at line 101 of file block_smoothed_aggregation.h.

Member Typedef Documentation

◆ SetupMatrixType

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
typedef amg_container<IndexType,ValueType,MemorySpace>::setup_type cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::SetupMatrixType
private

Definition at line 104 of file block_smoothed_aggregation.h.

◆ SolveMatrixType

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
typedef amg_container<IndexType,ValueType,MemorySpace>::solve_type cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::SolveMatrixType
private

Definition at line 105 of file block_smoothed_aggregation.h.

◆ Parent

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
typedef cusp::block_multilevel<SolveMatrixType,SmootherType,SolverType> cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::Parent
private

Definition at line 106 of file block_smoothed_aggregation.h.

Constructor & Destructor Documentation

◆ block_smoothed_aggregation() [1/3]

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
template<typename MatrixType >
cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::block_smoothed_aggregation ( const MatrixType &  A,
const IndexType  numRHS,
const ValueType  theta = 0 
)

◆ block_smoothed_aggregation() [2/3]

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
template<typename MatrixType , typename ArrayType >
cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::block_smoothed_aggregation ( const MatrixType &  A,
const ArrayType &  B,
const IndexType  numRHS,
const ValueType  theta = 0 
)

◆ block_smoothed_aggregation() [3/3]

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
template<typename MemorySpace2 , typename SmootherType2 , typename SolverType2 >
cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::block_smoothed_aggregation ( const block_smoothed_aggregation< IndexType, ValueType, MemorySpace2, SmootherType2, SolverType2 > &  M)

Member Function Documentation

◆ init()

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
template<typename MatrixType , typename ArrayType >
void cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::init ( const MatrixType &  A,
const ArrayType &  B 
)
protected

◆ extend_hierarchy()

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
void cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::extend_hierarchy ( void  )
protected

Member Data Documentation

◆ theta

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
ValueType cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::theta

Definition at line 110 of file block_smoothed_aggregation.h.

◆ numRHS

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
IndexType cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::numRHS

Definition at line 111 of file block_smoothed_aggregation.h.

◆ sa_levels

template<typename IndexType , typename ValueType , typename MemorySpace , typename SmootherType , typename SolverType = cusp::detail::block_lu_solver<ValueType,cusp::host_memory>>
std::vector< sa_level<SetupMatrixType> > cusp::precond::aggregation::block_smoothed_aggregation< IndexType, ValueType, MemorySpace, SmootherType, SolverType >::sa_levels

Definition at line 112 of file block_smoothed_aggregation.h.


The documentation for this class was generated from the following file: