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

#include <local_stencil.hpp>

Inheritance diagram for paralution::LocalStencil< ValueType >:
paralution::Operator< ValueType > paralution::BaseParalution< ValueType > paralution::ParalutionObj

Public Member Functions

 LocalStencil ()
 
 LocalStencil (unsigned int type)
 
virtual ~LocalStencil ()
 
virtual void info () const
 Print the object information (properties, backends) More...
 
virtual int get_ndim (void) const
 
virtual int get_nrow (void) const
 Return the number of rows in the matrix/stencil. More...
 
virtual int get_ncol (void) const
 Return the number of columns in the matrix/stencil. More...
 
virtual int get_nnz (void) const
 Return the number of non-zeros in the matrix/stencil. More...
 
virtual void SetGrid (const int size)
 
virtual void Clear ()
 Clear (free all data) the object. More...
 
virtual void Apply (const LocalVector< ValueType > &in, LocalVector< ValueType > *out) const
 Apply the operator, out = Operator(in), where in, out are local vectors. More...
 
virtual void ApplyAdd (const LocalVector< ValueType > &in, const ValueType scalar, LocalVector< ValueType > *out) const
 Apply and add the operator, out = out + scalar*Operator(in), where in, out are local vectors. More...
 
virtual void MoveToAccelerator (void)
 Move the object to the Accelerator backend. More...
 
virtual void MoveToHost (void)
 Move the object to the Host backend. More...
 
virtual int get_local_nrow (void) const
 Return the number of rows in the local matrix/stencil. More...
 
virtual int get_local_ncol (void) const
 Return the number of columns in the local matrix/stencil. More...
 
virtual int get_local_nnz (void) const
 Return the number of non-zeros in the local matrix/stencil. More...
 
virtual int get_ghost_nrow (void) const
 Return the number of rows in the ghost matrix/stencil. More...
 
virtual int get_ghost_ncol (void) const
 Return the number of columns in the ghost matrix/stencil. More...
 
virtual int get_ghost_nnz (void) const
 Return the number of non-zeros in the ghost matrix/stencil. More...
 
virtual void MoveToAcceleratorAsync (void)
 Move the object to the Accelerator backend with async move. More...
 
virtual void MoveToHostAsync (void)
 Move the object to the Host backend with async move. More...
 
virtual void Sync (void)
 
void CloneBackend (const BaseParalution< ValueType > &src)
 Clone the Backend descriptor from another object. More...
 
template<typename ValueType2 >
void CloneBackend (const BaseParalution< ValueType2 > &src)
 Clone the Backend descriptor from another object with different template ValueType. More...
 

Protected Member Functions

virtual bool is_host (void) const
 Return true if the object is on the host. More...
 
virtual bool is_accel (void) const
 Return true if the object is on the accelerator. More...
 

Protected Attributes

Paralution_Backend_Descriptor local_backend_
 Backend descriptor. More...
 
bool asyncf
 
size_t global_obj_id
 

Private Attributes

std::string object_name_
 
BaseStencil< ValueType > * stencil_
 
HostStencil< ValueType > * stencil_host_
 
AcceleratorStencil< ValueType > * stencil_accel_
 

Friends

class LocalVector< ValueType >
 
class GlobalVector< ValueType >
 

Constructor & Destructor Documentation

template<typename ValueType >
paralution::LocalStencil< ValueType >::LocalStencil ( )
template<typename ValueType >
paralution::LocalStencil< ValueType >::LocalStencil ( unsigned int  type)
template<typename ValueType >
paralution::LocalStencil< ValueType >::~LocalStencil ( )
virtual

Member Function Documentation

template<typename ValueType >
void paralution::LocalStencil< ValueType >::Apply ( const LocalVector< ValueType > &  in,
LocalVector< ValueType > *  out 
) const
virtual

Apply the operator, out = Operator(in), where in, out are local vectors.

Reimplemented from paralution::Operator< ValueType >.

template<typename ValueType >
void paralution::LocalStencil< ValueType >::ApplyAdd ( const LocalVector< ValueType > &  in,
const ValueType  scalar,
LocalVector< ValueType > *  out 
) const
virtual

Apply and add the operator, out = out + scalar*Operator(in), where in, out are local vectors.

Reimplemented from paralution::Operator< ValueType >.

template<typename ValueType >
void paralution::LocalStencil< ValueType >::Clear ( )
virtual

Clear (free all data) the object.

Implements paralution::BaseParalution< ValueType >.

template<typename ValueType >
template<typename ValueType2 >
void paralution::BaseParalution< ValueType >::CloneBackend ( const BaseParalution< ValueType2 > &  src)
inherited

Clone the Backend descriptor from another object with different template ValueType.

template<typename ValueType >
int paralution::Operator< ValueType >::get_ghost_ncol ( void  ) const
virtualinherited

Return the number of columns in the ghost matrix/stencil.

template<typename ValueType >
int paralution::Operator< ValueType >::get_ghost_nnz ( void  ) const
virtualinherited

Return the number of non-zeros in the ghost matrix/stencil.

template<typename ValueType >
int paralution::Operator< ValueType >::get_ghost_nrow ( void  ) const
virtualinherited

Return the number of rows in the ghost matrix/stencil.

template<typename ValueType >
int paralution::Operator< ValueType >::get_local_ncol ( void  ) const
virtualinherited

Return the number of columns in the local matrix/stencil.

template<typename ValueType >
int paralution::Operator< ValueType >::get_local_nnz ( void  ) const
virtualinherited

Return the number of non-zeros in the local matrix/stencil.

template<typename ValueType >
int paralution::Operator< ValueType >::get_local_nrow ( void  ) const
virtualinherited

Return the number of rows in the local matrix/stencil.

template<typename ValueType >
int paralution::LocalStencil< ValueType >::get_ncol ( void  ) const
virtual

Return the number of columns in the matrix/stencil.

Implements paralution::Operator< ValueType >.

template<typename ValueType >
int paralution::LocalStencil< ValueType >::get_ndim ( void  ) const
virtual
template<typename ValueType >
int paralution::LocalStencil< ValueType >::get_nnz ( void  ) const
virtual

Return the number of non-zeros in the matrix/stencil.

Implements paralution::Operator< ValueType >.

template<typename ValueType >
int paralution::LocalStencil< ValueType >::get_nrow ( void  ) const
virtual

Return the number of rows in the matrix/stencil.

Implements paralution::Operator< ValueType >.

Referenced by main().

template<typename ValueType >
void paralution::LocalStencil< ValueType >::info ( ) const
virtual

Print the object information (properties, backends)

Implements paralution::BaseParalution< ValueType >.

Referenced by main().

template<typename ValueType>
virtual bool paralution::LocalStencil< ValueType >::is_accel ( void  ) const
inlineprotectedvirtual

Return true if the object is on the accelerator.

Implements paralution::BaseParalution< ValueType >.

template<typename ValueType>
virtual bool paralution::LocalStencil< ValueType >::is_host ( void  ) const
inlineprotectedvirtual

Return true if the object is on the host.

Implements paralution::BaseParalution< ValueType >.

template<typename ValueType >
void paralution::LocalStencil< ValueType >::MoveToAccelerator ( void  )
virtual

Move the object to the Accelerator backend.

Implements paralution::BaseParalution< ValueType >.

template<typename ValueType >
void paralution::BaseParalution< ValueType >::MoveToAcceleratorAsync ( void  )
virtualinherited
template<typename ValueType >
void paralution::LocalStencil< ValueType >::MoveToHost ( void  )
virtual

Move the object to the Host backend.

Implements paralution::BaseParalution< ValueType >.

template<typename ValueType >
void paralution::LocalStencil< ValueType >::SetGrid ( const int  size)
virtual

Referenced by main().

Friends And Related Function Documentation

template<typename ValueType>
friend class GlobalVector< ValueType >
friend
template<typename ValueType>
friend class LocalVector< ValueType >
friend

Field Documentation

template<typename ValueType>
bool paralution::BaseParalution< ValueType >::asyncf
protectedinherited
size_t paralution::ParalutionObj::global_obj_id
protectedinherited
template<typename ValueType>
Paralution_Backend_Descriptor paralution::BaseParalution< ValueType >::local_backend_
protectedinherited
template<typename ValueType>
std::string paralution::LocalStencil< ValueType >::object_name_
private
template<typename ValueType>
BaseStencil<ValueType>* paralution::LocalStencil< ValueType >::stencil_
private
template<typename ValueType>
AcceleratorStencil<ValueType>* paralution::LocalStencil< ValueType >::stencil_accel_
private
template<typename ValueType>
HostStencil<ValueType>* paralution::LocalStencil< ValueType >::stencil_host_
private

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