PARALUTION  1.0.0
PARALUTION
paralution::HostVector< ValueType > Class Template Reference

#include <base_vector.hpp>

Inheritance diagram for paralution::HostVector< ValueType >:
paralution::BaseVector< ValueType >

Public Member Functions

 HostVector ()
 
 HostVector (const Paralution_Backend_Descriptor local_backend)
 
virtual ~HostVector ()
 
virtual void info (void) const
 Shows info about the object. More...
 
virtual bool Check (void) const
 Check if everything is ok. More...
 
virtual void Allocate (const int n)
 Allocate a local vector with name and size. More...
 
virtual void SetDataPtr (ValueType **ptr, const int size)
 Initialize a vector with externally allocated data. More...
 
virtual void LeaveDataPtr (ValueType **ptr)
 Get a pointer from the vector data and free the vector object. More...
 
virtual void Clear (void)
 Clear (free) the vector. More...
 
virtual void Zeros (void)
 Set the values of the vector to zero. More...
 
virtual void Ones (void)
 Set the values of the vector to one. More...
 
virtual void SetValues (const ValueType val)
 Set the values of the vector to given argument. More...
 
virtual void SetRandom (const ValueType a, const ValueType b, const int seed)
 
virtual void Assemble (const int *i, const ValueType *v, int size, const int n)
 Assembling. More...
 
virtual void CopyFrom (const BaseVector< ValueType > &vec)
 Copy values from another vector. More...
 
virtual void CopyFromFloat (const BaseVector< float > &vec)
 Copy values from another (float) vector. More...
 
virtual void CopyFromDouble (const BaseVector< double > &vec)
 Copy values from another (double) vector. More...
 
virtual void CopyTo (BaseVector< ValueType > *vec) const
 Copy values to another vector. More...
 
virtual void CopyFrom (const BaseVector< ValueType > &src, const int src_offset, const int dst_offset, const int size)
 Copy data (not entire vector) from another vector with specified src/dst offsets and size. More...
 
virtual void CopyFromPermute (const BaseVector< ValueType > &src, const BaseVector< int > &permutation)
 Copy a vector under specified permutation (forward permutation) More...
 
virtual void CopyFromPermuteBackward (const BaseVector< ValueType > &src, const BaseVector< int > &permutation)
 Copy a vector under specified permutation (backward permutation) More...
 
virtual void CopyFromData (const ValueType *data)
 
virtual void CopyToData (ValueType *data) const
 
virtual void Permute (const BaseVector< int > &permutation)
 Perform inplace permutation (forward) of the vector. More...
 
virtual void PermuteBackward (const BaseVector< int > &permutation)
 Perform inplace permutation (backward) of the vector. More...
 
virtual bool Restriction (const BaseVector< ValueType > &vec_fine, const BaseVector< int > &map)
 Restriction operator based on restriction mapping vector. More...
 
virtual bool Prolongation (const BaseVector< ValueType > &vec_coarse, const BaseVector< int > &map)
 Prolongation operator based on restriction(!) mapping vector. More...
 
void ReadFileASCII (const std::string filename)
 Read vector from ASCII file. More...
 
void WriteFileASCII (const std::string filename) const
 Write vector to ASCII file. More...
 
void ReadFileBinary (const std::string filename)
 Read vector from binary file. More...
 
void WriteFileBinary (const std::string filename) const
 Write vector to binary file. More...
 
virtual void AddScale (const BaseVector< ValueType > &x, const ValueType alpha)
 Perform vector update of type this = this + alpha*x. More...
 
virtual void ScaleAdd (const ValueType alpha, const BaseVector< ValueType > &x)
 Perform vector update of type this = alpha*this + x. More...
 
virtual void ScaleAddScale (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta)
 Perform vector update of type this = alpha*this + x*beta. More...
 
virtual void ScaleAddScale (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta, const int src_offset, const int dst_offset, const int size)
 
virtual void ScaleAdd2 (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta, const BaseVector< ValueType > &y, const ValueType gamma)
 Perform vector update of type this = alpha*this + x*beta + y*gamma. More...
 
virtual void Scale (const ValueType alpha)
 Perform vector scaling this = alpha*this. More...
 
virtual void PartialSum (const BaseVector< ValueType > &x)
 Compute partial sum. More...
 
virtual ValueType Dot (const BaseVector< ValueType > &x) const
 Compute dot (scalar) product, return this^T y. More...
 
virtual ValueType DotNonConj (const BaseVector< ValueType > &x) const
 Compute non-conjugated dot (scalar) product, return this^T y. More...
 
virtual ValueType Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
virtual ValueType Reduce (void) const
 Reduce vector. More...
 
virtual ValueType Asum (void) const
 Compute sum of absolute values of the vector (L1 norm), return = sum(|this|) More...
 
virtual int Amax (ValueType &value) const
 Compute the absolute max value of the vector, return = max(|this|) More...
 
virtual void PointWiseMult (const BaseVector< ValueType > &x)
 Perform point-wise multiplication (element-wise) of type this = this * x. More...
 
virtual void PointWiseMult (const BaseVector< ValueType > &x, const BaseVector< ValueType > &y)
 Perform point-wise multiplication (element-wise) of type this = x*y. More...
 
virtual void Power (const double power)
 
template<>
void CopyFromFloat (const BaseVector< float > &vec)
 Copy values from another (float) vector. More...
 
template<>
void CopyFromDouble (const BaseVector< double > &vec)
 Copy values from another (double) vector. More...
 
template<>
void SetRandom (const std::complex< float > a, const std::complex< float > b, const int seed)
 
template<>
std::complex< float > Dot (const BaseVector< std::complex< float > > &x) const
 
template<>
std::complex< double > Dot (const BaseVector< std::complex< double > > &x) const
 
template<>
std::complex< float > DotNonConj (const BaseVector< std::complex< float > > &x) const
 
template<>
std::complex< double > DotNonConj (const BaseVector< std::complex< double > > &x) const
 
template<>
std::complex< float > Asum (void) const
 Compute sum of absolute values of the vector (L1 norm), return = sum(|this|) More...
 
template<>
std::complex< double > Asum (void) const
 Compute sum of absolute values of the vector (L1 norm), return = sum(|this|) More...
 
template<>
std::complex< float > Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
template<>
std::complex< double > Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
template<>
int Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
template<>
std::complex< float > Reduce (void) const
 Reduce vector. More...
 
template<>
std::complex< double > Reduce (void) const
 Reduce vector. More...
 
template<>
void Power (const double power)
 
template<>
void Power (const double power)
 
int get_size (void) const
 Returns the size of the vector. More...
 
void set_backend (const Paralution_Backend_Descriptor local_backend)
 Copy the backend descriptor information. More...
 
virtual void CopyFromAsync (const BaseVector< ValueType > &vec)
 Async copy values from another vector. More...
 
virtual void CopyToAsync (BaseVector< ValueType > *vec) const
 Async copy values to another vector. More...
 

Protected Attributes

int size_
 The size of the vector. More...
 
Paralution_Backend_Descriptor local_backend_
 Backend descriptor (local copy) More...
 

Private Attributes

ValueType * vec_
 

Friends

class LocalVector< ValueType >
 
class HostVector< double >
 
class HostVector< float >
 
class HostVector< std::complex< double > >
 
class HostVector< std::complex< float > >
 
class HostVector< int >
 
class HostMatrix< ValueType >
 
class HostMatrixCSR< ValueType >
 
class HostMatrixCOO< ValueType >
 
class HostMatrixDIA< ValueType >
 
class HostMatrixELL< ValueType >
 
class HostMatrixHYB< ValueType >
 
class HostMatrixDENSE< ValueType >
 
class HostMatrixMCSR< ValueType >
 
class HostMatrixBCSR< ValueType >
 
class HostMatrixCOO< float >
 
class HostMatrixCOO< double >
 
class HostMatrixCOO< std::complex< float > >
 
class HostMatrixCOO< std::complex< double > >
 
class HostMatrixCSR< double >
 
class HostMatrixCSR< float >
 
class HostMatrixCSR< std::complex< float > >
 
class HostMatrixCSR< std::complex< double > >
 
class GPUAcceleratorVector< ValueType >
 
class OCLAcceleratorVector< ValueType >
 
class MICAcceleratorVector< ValueType >
 
class HostStencil< ValueType >
 
class HostStencilLaplace2D< ValueType >
 

Constructor & Destructor Documentation

template<typename ValueType >
paralution::HostVector< ValueType >::HostVector ( )
template<typename ValueType >
paralution::HostVector< ValueType >::HostVector ( const Paralution_Backend_Descriptor  local_backend)
template<typename ValueType >
paralution::HostVector< ValueType >::~HostVector ( )
virtual

Member Function Documentation

template<typename ValueType>
void paralution::HostVector< ValueType >::AddScale ( const BaseVector< ValueType > &  x,
const ValueType  alpha 
)
virtual

Perform vector update of type this = this + alpha*x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
int paralution::HostVector< ValueType >::Amax ( ValueType &  value) const
virtual

Compute the absolute max value of the vector, return = max(|this|)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::Assemble ( const int i,
const ValueType *  v,
int  size,
const int  n 
)
virtual

Assembling.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType >
ValueType paralution::HostVector< ValueType >::Asum ( void  ) const
virtual

Compute sum of absolute values of the vector (L1 norm), return = sum(|this|)

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< float > paralution::HostVector< std::complex< float > >::Asum ( void  ) const
virtual

Compute sum of absolute values of the vector (L1 norm), return = sum(|this|)

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< double > paralution::HostVector< std::complex< double > >::Asum ( void  ) const
virtual

Compute sum of absolute values of the vector (L1 norm), return = sum(|this|)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
bool paralution::HostVector< ValueType >::Check ( void  ) const
virtual

Check if everything is ok.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyFrom ( const BaseVector< ValueType > &  src,
const int  src_offset,
const int  dst_offset,
const int  size 
)
virtual

Copy data (not entire vector) from another vector with specified src/dst offsets and size.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyFromAsync ( const BaseVector< ValueType > &  vec)
virtualinherited

Async copy values from another vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

Referenced by paralution::LocalVector< ValueType >::MoveToHostAsync().

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyFromData ( const ValueType *  data)
virtual
template<typename ValueType >
void paralution::HostVector< ValueType >::CopyFromDouble ( const BaseVector< double > &  vec)
virtual

Copy values from another (double) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<>
void paralution::HostVector< float >::CopyFromDouble ( const BaseVector< double > &  vec)
virtual

Copy values from another (double) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::CopyFromFloat ( const BaseVector< float > &  vec)
virtual

Copy values from another (float) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<>
void paralution::HostVector< double >::CopyFromFloat ( const BaseVector< float > &  vec)
virtual

Copy values from another (float) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyFromPermute ( const BaseVector< ValueType > &  src,
const BaseVector< int > &  permutation 
)
virtual

Copy a vector under specified permutation (forward permutation)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyFromPermuteBackward ( const BaseVector< ValueType > &  src,
const BaseVector< int > &  permutation 
)
virtual

Copy a vector under specified permutation (backward permutation)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyTo ( BaseVector< ValueType > *  vec) const
virtual

Copy values to another vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyToAsync ( BaseVector< ValueType > *  vec) const
virtualinherited

Async copy values to another vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::CopyToData ( ValueType *  data) const
virtual
template<typename ValueType>
ValueType paralution::HostVector< ValueType >::Dot ( const BaseVector< ValueType > &  x) const
virtual

Compute dot (scalar) product, return this^T y.

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< float > paralution::HostVector< std::complex< float > >::Dot ( const BaseVector< std::complex< float > > &  x) const
template<>
std::complex< double > paralution::HostVector< std::complex< double > >::Dot ( const BaseVector< std::complex< double > > &  x) const
template<typename ValueType>
ValueType paralution::HostVector< ValueType >::DotNonConj ( const BaseVector< ValueType > &  x) const
virtual

Compute non-conjugated dot (scalar) product, return this^T y.

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< float > paralution::HostVector< std::complex< float > >::DotNonConj ( const BaseVector< std::complex< float > > &  x) const
template<>
std::complex< double > paralution::HostVector< std::complex< double > >::DotNonConj ( const BaseVector< std::complex< double > > &  x) const
template<typename ValueType >
int paralution::BaseVector< ValueType >::get_size ( void  ) const
inlineinherited

Returns the size of the vector.

Referenced by paralution::MICAcceleratorVector< ValueType >::AddScale(), paralution::OCLAcceleratorVector< ValueType >::AddScale(), paralution::HostMatrixCSR< ValueType >::AMGAggregation(), paralution::HostMatrixCSR< ValueType >::AMGSmoothedAggregation(), paralution::HostStencilLaplace2D< ValueType >::Apply(), paralution::HostMatrixBCSR< ValueType >::Apply(), paralution::HostMatrixDENSE< ValueType >::Apply(), paralution::MICAcceleratorMatrixMCSR< ValueType >::Apply(), paralution::HostMatrixDIA< ValueType >::Apply(), paralution::HostMatrixHYB< ValueType >::Apply(), paralution::MICAcceleratorMatrixCSR< ValueType >::Apply(), paralution::MICAcceleratorMatrixDIA< ValueType >::Apply(), paralution::MICAcceleratorMatrixELL< ValueType >::Apply(), paralution::HostMatrixELL< ValueType >::Apply(), paralution::HostMatrixMCSR< ValueType >::Apply(), paralution::MICAcceleratorMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixMCSR< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::Apply(), paralution::MICAcceleratorMatrixHYB< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDIA< ValueType >::Apply(), paralution::OCLAcceleratorMatrixELL< ValueType >::Apply(), paralution::OCLAcceleratorMatrixHYB< ValueType >::Apply(), paralution::HostMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCSR< ValueType >::Apply(), paralution::HostMatrixCSR< ValueType >::Apply(), paralution::HostStencilLaplace2D< ValueType >::ApplyAdd(), paralution::HostMatrixBCSR< ValueType >::ApplyAdd(), paralution::HostMatrixDENSE< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixMCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixDIA< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixELL< ValueType >::ApplyAdd(), paralution::HostMatrixDIA< ValueType >::ApplyAdd(), paralution::HostMatrixHYB< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixCSR< ValueType >::ApplyAdd(), paralution::HostMatrixELL< ValueType >::ApplyAdd(), paralution::HostMatrixMCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixMCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixHYB< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixDIA< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixELL< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixHYB< ValueType >::ApplyAdd(), paralution::HostMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ApplyAdd(), paralution::HostMatrixCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorVector< ValueType >::CopyFrom(), paralution::OCLAcceleratorVector< ValueType >::CopyFrom(), paralution::OCLAcceleratorVector< ValueType >::CopyFromDouble(), paralution::OCLAcceleratorVector< ValueType >::CopyFromFloat(), paralution::MICAcceleratorVector< ValueType >::CopyFromHost(), paralution::OCLAcceleratorVector< ValueType >::CopyFromHost(), paralution::MICAcceleratorVector< ValueType >::CopyFromPermute(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermute(), paralution::MICAcceleratorVector< ValueType >::CopyFromPermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermuteBackward(), paralution::MICAcceleratorVector< ValueType >::CopyTo(), paralution::OCLAcceleratorVector< ValueType >::CopyTo(), paralution::MICAcceleratorVector< ValueType >::CopyToHost(), paralution::OCLAcceleratorVector< ValueType >::CopyToHost(), paralution::HostMatrixCSR< ValueType >::CreateFromMap(), paralution::OCLAcceleratorMatrixCSR< ValueType >::DiagonalMatrixMultL(), paralution::HostMatrixCSR< ValueType >::DiagonalMatrixMultL(), paralution::OCLAcceleratorMatrixCSR< ValueType >::DiagonalMatrixMultR(), paralution::HostMatrixCSR< ValueType >::DiagonalMatrixMultR(), paralution::MICAcceleratorVector< ValueType >::Dot(), paralution::OCLAcceleratorVector< ValueType >::Dot(), paralution::OCLAcceleratorVector< ValueType >::DotNonConj(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::HostMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractColumnVector(), paralution::HostMatrixCSR< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractDiagonal(), paralution::HostMatrixCSR< ValueType >::ExtractDiagonal(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractInverseDiagonal(), paralution::HostMatrixCSR< ValueType >::ExtractInverseDiagonal(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractRowVector(), paralution::HostMatrixDENSE< ValueType >::ExtractRowVector(), paralution::HostMatrixCSR< ValueType >::ExtractRowVector(), paralution::HostMatrixDENSE< ValueType >::Householder(), paralution::HostMatrixCSR< ValueType >::LLSolve(), paralution::HostMatrixCSR< ValueType >::LSolve(), paralution::HostMatrixMCSR< ValueType >::LUSolve(), paralution::HostMatrixDENSE< ValueType >::LUSolve(), paralution::HostMatrixCSR< ValueType >::LUSolve(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MaximalIndependentSet(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MultiColoring(), paralution::HostMatrixCSR< ValueType >::MultiColoring(), paralution::HostMatrixCOO< ValueType >::Permute(), paralution::OCLAcceleratorMatrixCSR< ValueType >::Permute(), paralution::MICAcceleratorVector< ValueType >::Permute(), paralution::OCLAcceleratorVector< ValueType >::Permute(), paralution::HostMatrixCSR< ValueType >::Permute(), paralution::HostMatrixCOO< ValueType >::PermuteBackward(), paralution::MICAcceleratorVector< ValueType >::PermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::PermuteBackward(), paralution::MICAcceleratorVector< ValueType >::PointWiseMult(), paralution::OCLAcceleratorVector< ValueType >::PointWiseMult(), paralution::HostMatrixDENSE< ValueType >::QRSolve(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::HostMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::HostMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::HostMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::HostMatrixCSR< ValueType >::ReplaceRowVector(), paralution::MICAcceleratorVector< ValueType >::ScaleAdd(), paralution::OCLAcceleratorVector< ValueType >::ScaleAdd(), paralution::MICAcceleratorVector< ValueType >::ScaleAdd2(), paralution::OCLAcceleratorVector< ValueType >::ScaleAdd2(), paralution::MICAcceleratorVector< ValueType >::ScaleAddScale(), paralution::OCLAcceleratorVector< ValueType >::ScaleAddScale(), paralution::HostMatrixCSR< ValueType >::SPAI(), paralution::HostMatrixCSR< ValueType >::USolve(), and paralution::HostMatrixCSR< ValueType >::ZeroBlockPermutation().

template<typename ValueType>
void paralution::HostVector< ValueType >::LeaveDataPtr ( ValueType **  ptr)
virtual

Get a pointer from the vector data and free the vector object.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
ValueType paralution::HostVector< ValueType >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< float > paralution::HostVector< std::complex< float > >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< double > paralution::HostVector< std::complex< double > >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<>
int paralution::HostVector< int >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::Ones ( void  )
virtual

Set the values of the vector to one.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::PartialSum ( const BaseVector< ValueType > &  x)
virtual

Compute partial sum.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::Permute ( const BaseVector< int > &  permutation)
virtual

Perform inplace permutation (forward) of the vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::PermuteBackward ( const BaseVector< int > &  permutation)
virtual

Perform inplace permutation (backward) of the vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::PointWiseMult ( const BaseVector< ValueType > &  x)
virtual

Perform point-wise multiplication (element-wise) of type this = this * x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::PointWiseMult ( const BaseVector< ValueType > &  x,
const BaseVector< ValueType > &  y 
)
virtual

Perform point-wise multiplication (element-wise) of type this = x*y.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::Power ( const double  power)
virtual
template<>
void paralution::HostVector< std::complex< float > >::Power ( const double  power)
virtual
template<>
void paralution::HostVector< int >::Power ( const double  power)
virtual
template<typename ValueType>
bool paralution::HostVector< ValueType >::Prolongation ( const BaseVector< ValueType > &  vec_coarse,
const BaseVector< int > &  map 
)
virtual

Prolongation operator based on restriction(!) mapping vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::ReadFileASCII ( const std::string  filename)

Read vector from ASCII file.

template<typename ValueType >
void paralution::HostVector< ValueType >::ReadFileBinary ( const std::string  filename)

Read vector from binary file.

template<typename ValueType >
ValueType paralution::HostVector< ValueType >::Reduce ( void  ) const
virtual

Reduce vector.

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< float > paralution::HostVector< std::complex< float > >::Reduce ( void  ) const
virtual

Reduce vector.

Implements paralution::BaseVector< ValueType >.

template<>
std::complex< double > paralution::HostVector< std::complex< double > >::Reduce ( void  ) const
virtual

Reduce vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
bool paralution::HostVector< ValueType >::Restriction ( const BaseVector< ValueType > &  vec_fine,
const BaseVector< int > &  map 
)
virtual

Restriction operator based on restriction mapping vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::Scale ( const ValueType  alpha)
virtual

Perform vector scaling this = alpha*this.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::ScaleAdd ( const ValueType  alpha,
const BaseVector< ValueType > &  x 
)
virtual

Perform vector update of type this = alpha*this + x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::ScaleAdd2 ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta,
const BaseVector< ValueType > &  y,
const ValueType  gamma 
)
virtual

Perform vector update of type this = alpha*this + x*beta + y*gamma.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::ScaleAddScale ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta 
)
virtual

Perform vector update of type this = alpha*this + x*beta.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::ScaleAddScale ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta,
const int  src_offset,
const int  dst_offset,
const int  size 
)
virtual
template<typename ValueType >
void paralution::BaseVector< ValueType >::set_backend ( const Paralution_Backend_Descriptor  local_backend)
inherited

Copy the backend descriptor information.

template<typename ValueType>
void paralution::HostVector< ValueType >::SetDataPtr ( ValueType **  ptr,
const int  size 
)
virtual

Initialize a vector with externally allocated data.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::HostVector< ValueType >::SetRandom ( const ValueType  a,
const ValueType  b,
const int  seed 
)
virtual
template<>
void paralution::HostVector< std::complex< float > >::SetRandom ( const std::complex< float >  a,
const std::complex< float >  b,
const int  seed 
)
template<typename ValueType>
void paralution::HostVector< ValueType >::SetValues ( const ValueType  val)
virtual

Set the values of the vector to given argument.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::HostVector< ValueType >::WriteFileASCII ( const std::string  filename) const

Write vector to ASCII file.

template<typename ValueType >
void paralution::HostVector< ValueType >::WriteFileBinary ( const std::string  filename) const

Write vector to binary file.

template<typename ValueType >
void paralution::HostVector< ValueType >::Zeros ( void  )
virtual

Set the values of the vector to zero.

Implements paralution::BaseVector< ValueType >.

Referenced by paralution::HostMatrixCSR< ValueType >::ExtractRowVector().

Friends And Related Function Documentation

template<typename ValueType>
friend class GPUAcceleratorVector< ValueType >
friend
template<typename ValueType>
friend class HostMatrix< ValueType >
friend
template<typename ValueType>
friend class HostMatrixBCSR< ValueType >
friend
template<typename ValueType>
friend class HostMatrixCOO< double >
friend
template<typename ValueType>
friend class HostMatrixCOO< float >
friend
template<typename ValueType>
friend class HostMatrixCOO< std::complex< double > >
friend
template<typename ValueType>
friend class HostMatrixCOO< std::complex< float > >
friend
template<typename ValueType>
friend class HostMatrixCOO< ValueType >
friend
template<typename ValueType>
friend class HostMatrixCSR< double >
friend
template<typename ValueType>
friend class HostMatrixCSR< float >
friend
template<typename ValueType>
friend class HostMatrixCSR< std::complex< double > >
friend
template<typename ValueType>
friend class HostMatrixCSR< std::complex< float > >
friend
template<typename ValueType>
friend class HostMatrixCSR< ValueType >
friend
template<typename ValueType>
friend class HostMatrixDENSE< ValueType >
friend
template<typename ValueType>
friend class HostMatrixDIA< ValueType >
friend
template<typename ValueType>
friend class HostMatrixELL< ValueType >
friend
template<typename ValueType>
friend class HostMatrixHYB< ValueType >
friend
template<typename ValueType>
friend class HostMatrixMCSR< ValueType >
friend
template<typename ValueType>
friend class HostStencil< ValueType >
friend
template<typename ValueType>
friend class HostStencilLaplace2D< ValueType >
friend
template<typename ValueType>
friend class HostVector< double >
friend
template<typename ValueType>
friend class HostVector< float >
friend
template<typename ValueType>
friend class HostVector< int >
friend
template<typename ValueType>
friend class HostVector< std::complex< double > >
friend
template<typename ValueType>
friend class HostVector< std::complex< float > >
friend
template<typename ValueType>
friend class LocalVector< ValueType >
friend
template<typename ValueType>
friend class MICAcceleratorVector< ValueType >
friend
template<typename ValueType>
friend class OCLAcceleratorVector< ValueType >
friend

Field Documentation

template<typename ValueType>
Paralution_Backend_Descriptor paralution::BaseVector< ValueType >::local_backend_
protectedinherited

Backend descriptor (local copy)

template<typename ValueType>
ValueType* paralution::HostVector< ValueType >::vec_
private

Referenced by paralution::HostVector< ValueType >::AddScale(), paralution::HostMatrixCSR< ValueType >::AMGAggregate(), paralution::HostMatrixCSR< ValueType >::AMGAggregation(), paralution::HostMatrixCSR< ValueType >::AMGConnect(), paralution::HostMatrixCSR< ValueType >::AMGSmoothedAggregation(), paralution::HostStencilLaplace2D< ValueType >::Apply(), paralution::HostMatrixDENSE< ValueType >::Apply(), paralution::HostMatrixDIA< ValueType >::Apply(), paralution::HostMatrixHYB< ValueType >::Apply(), paralution::HostMatrixELL< ValueType >::Apply(), paralution::HostMatrixMCSR< ValueType >::Apply(), paralution::HostMatrixCOO< ValueType >::Apply(), paralution::HostMatrixCSR< ValueType >::Apply(), paralution::HostStencilLaplace2D< ValueType >::ApplyAdd(), paralution::HostMatrixDENSE< ValueType >::ApplyAdd(), paralution::HostMatrixDIA< ValueType >::ApplyAdd(), paralution::HostMatrixHYB< ValueType >::ApplyAdd(), paralution::HostMatrixELL< ValueType >::ApplyAdd(), paralution::HostMatrixMCSR< ValueType >::ApplyAdd(), paralution::HostMatrixCOO< ValueType >::ApplyAdd(), paralution::HostMatrixCSR< ValueType >::ApplyAdd(), paralution::HostMatrixCSR< ValueType >::CMK(), paralution::HostVector< ValueType >::CopyFrom(), paralution::MICAcceleratorVector< ValueType >::CopyFromHost(), paralution::OCLAcceleratorVector< ValueType >::CopyFromHost(), paralution::HostVector< ValueType >::CopyFromPermute(), paralution::HostVector< ValueType >::CopyFromPermuteBackward(), paralution::MICAcceleratorVector< ValueType >::CopyToHost(), paralution::OCLAcceleratorVector< ValueType >::CopyToHost(), paralution::HostVector< ValueType >::Dot(), paralution::HostVector< ValueType >::DotNonConj(), paralution::HostMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::HostMatrixCSR< ValueType >::ExtractColumnVector(), paralution::HostMatrixDENSE< ValueType >::ExtractRowVector(), paralution::HostMatrixCSR< ValueType >::ExtractRowVector(), paralution::HostMatrixDENSE< ValueType >::Householder(), paralution::HostMatrixCSR< ValueType >::ICFactorize(), paralution::HostMatrixDENSE< ValueType >::Invert(), paralution::HostMatrixCSR< ValueType >::LLSolve(), paralution::HostMatrixCSR< ValueType >::LSolve(), paralution::HostMatrixMCSR< ValueType >::LUSolve(), paralution::HostMatrixDENSE< ValueType >::LUSolve(), paralution::HostMatrixCSR< ValueType >::LUSolve(), paralution::HostMatrixCSR< ValueType >::MaximalIndependentSet(), paralution::HostMatrixCSR< ValueType >::MultiColoring(), paralution::HostVector< ValueType >::PartialSum(), paralution::HostMatrixCOO< ValueType >::Permute(), paralution::HostVector< ValueType >::Permute(), paralution::HostMatrixCSR< ValueType >::Permute(), paralution::HostMatrixCOO< ValueType >::PermuteBackward(), paralution::HostVector< ValueType >::PermuteBackward(), paralution::HostVector< ValueType >::PointWiseMult(), paralution::HostVector< ValueType >::Prolongation(), paralution::HostMatrixDENSE< ValueType >::QRDecompose(), paralution::HostMatrixDENSE< ValueType >::QRSolve(), paralution::HostMatrixCSR< ValueType >::RCMK(), paralution::HostMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::HostMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::HostMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::HostMatrixCSR< ValueType >::ReplaceRowVector(), paralution::HostVector< ValueType >::Restriction(), paralution::HostVector< ValueType >::ScaleAdd(), paralution::HostVector< ValueType >::ScaleAdd2(), paralution::HostVector< ValueType >::ScaleAddScale(), paralution::HostMatrixCSR< ValueType >::SPAI(), and paralution::HostMatrixCSR< ValueType >::USolve().


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