ViennaCL - The Vienna Computing Library  1.6.2
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 > Class Template Reference

A class for the matrix slicing for parallel coarsening schemes (RS0/RS3). More...

#include <amg_base.hpp>

Public Member Functions

void init (unsigned int levels, unsigned int threads=0)
 
void slice (unsigned int level, InternalT1 const &A, InternalT2 const &pointvector)
 
void join (unsigned int level, InternalT2 &pointvector) const
 

Public Attributes

boost::numeric::ublas::vector
< InternalT1 > 
A_slice_
 
boost::numeric::ublas::vector
< InternalT2 > 
pointvector_slice_
 
boost::numeric::ublas::vector
< boost::numeric::ublas::vector
< unsigned int > > 
offset_
 
unsigned int threads_
 
unsigned int levels_
 

Detailed Description

template<typename InternalT1, typename InternalT2>
class viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >

A class for the matrix slicing for parallel coarsening schemes (RS0/RS3).

Holds information on a per-processor basis and offers functionality to slice and join the data structures.

Definition at line 1176 of file amg_base.hpp.

Member Function Documentation

template<typename InternalT1, typename InternalT2>
void viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::init ( unsigned int  levels,
unsigned int  threads = 0 
)
inline

Definition at line 1191 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
void viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::join ( unsigned int  level,
InternalT2 &  pointvector 
) const
inline

Definition at line 1234 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
void viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::slice ( unsigned int  level,
InternalT1 const &  A,
InternalT2 const &  pointvector 
)
inline

Definition at line 1221 of file amg_base.hpp.

Member Data Documentation

template<typename InternalT1, typename InternalT2>
boost::numeric::ublas::vector<InternalT1> viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::A_slice_

Definition at line 1183 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
unsigned int viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::levels_

Definition at line 1189 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
boost::numeric::ublas::vector<boost::numeric::ublas::vector<unsigned int> > viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::offset_

Definition at line 1186 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
boost::numeric::ublas::vector<InternalT2> viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::pointvector_slice_

Definition at line 1184 of file amg_base.hpp.

template<typename InternalT1, typename InternalT2>
unsigned int viennacl::linalg::detail::amg::amg_slicing< InternalT1, InternalT2 >::threads_

Definition at line 1188 of file amg_base.hpp.


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