ViennaCL - The Vienna Computing Library  1.6.1
Free open-source GPU-accelerated linear algebra and solver library.
viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT > Class Template Reference

A class for a scalar that can be written to the sparse matrix or sparse vector datatypes. More...

#include <amg_base.hpp>

Public Member Functions

 amg_nonzero_scalar ()
 
 amg_nonzero_scalar (InternalT *m, IteratorT &iter, unsigned int i, unsigned int j, NumericT s=0)
 The constructor. More...
 
NumericT operator= (const NumericT value)
 Assignment operator. Writes value into matrix at the given position. More...
 
NumericT operator+= (const NumericT value)
 Addition operator. Adds a constant. More...
 
NumericT operator++ (int)
 
NumericT operator++ ()
 
 operator NumericT (void)
 

Detailed Description

template<typename InternalT, typename IteratorT, typename NumericT>
class viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >

A class for a scalar that can be written to the sparse matrix or sparse vector datatypes.

Values are only written to those datatypes if non-zero to optimize memory usage and performance. Needed for the []- and ()-operators.

Definition at line 124 of file amg_base.hpp.

Constructor & Destructor Documentation

template<typename InternalT , typename IteratorT , typename NumericT >
viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::amg_nonzero_scalar ( )
template<typename InternalT , typename IteratorT , typename NumericT >
viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::amg_nonzero_scalar ( InternalT *  m,
IteratorT &  iter,
unsigned int  i,
unsigned int  j,
NumericT  s = 0 
)
inline

The constructor.

Parameters
mPointer to the sparse vector/matrix the scalar will be written to
iterIterator pointing to the respective element in the vector/matrix if available
iRow index scalar will be written to
jCol index scalar will be written to
sValue of the scalar (usually used as dummy here as it will be set by the assignment operator)

Definition at line 142 of file amg_base.hpp.

Member Function Documentation

template<typename InternalT , typename IteratorT , typename NumericT >
viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::operator NumericT ( void  )
inline

Definition at line 197 of file amg_base.hpp.

template<typename InternalT , typename IteratorT , typename NumericT >
NumericT viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::operator++ ( int  )
inline

Definition at line 181 of file amg_base.hpp.

template<typename InternalT , typename IteratorT , typename NumericT >
NumericT viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::operator++ ( )
inline

Definition at line 189 of file amg_base.hpp.

template<typename InternalT , typename IteratorT , typename NumericT >
NumericT viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::operator+= ( const NumericT  value)
inline

Addition operator. Adds a constant.

Parameters
valueValue that will be written

Definition at line 164 of file amg_base.hpp.

template<typename InternalT , typename IteratorT , typename NumericT >
NumericT viennacl::linalg::detail::amg::amg_nonzero_scalar< InternalT, IteratorT, NumericT >::operator= ( const NumericT  value)
inline

Assignment operator. Writes value into matrix at the given position.

Parameters
valueValue that will be written

Definition at line 151 of file amg_base.hpp.


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