Alien  1.3.0
User documentation
Loading...
Searching...
No Matches
Alien::SimpleCSRMatrix< ValueT > Class Template Reference

Public Types

typedef BackEnd::tag::simplecsr TagType
typedef ValueT ValueType
typedef SimpleCSRInternal::CSRStructInfo CSRStructInfo
typedef SimpleCSRInternal::CSRStructInfo ProfileType
typedef SimpleCSRInternal::DistStructInfo DistStructInfo
typedef SimpleCSRInternal::MatrixInternal< ValueType > MatrixInternal
typedef ProfileType::IndexType IndexType
typedef Alien::StdTimer TimerType
typedef TimerType::Sentry SentryType
Public Types inherited from Alien::IMatrixImpl
typedef Arccore::Real ValueType
 Type of the values stored in the matrix.

Public Member Functions

 SimpleCSRMatrix ()
 SimpleCSRMatrix (const MultiMatrixImpl *multi_impl)
virtual ~SimpleCSRMatrix ()
void setTraceMng (ITraceMng *trace_mng)
void free ()
void freeData ()
void clear ()
 Wipe out internal data.
void allocate ()
void scal (ValueType const *values)
CSRStructInfo & getCSRProfile ()
const CSRStructInfo & getCSRProfile () const
const CSRStructInfo & getProfile () const
const DistStructInfo & getDistStructInfo () const
SimpleCSRInternal::CommProperty::ePolicyType getSendPolicy () const
SimpleCSRInternal::CommProperty::ePolicyType getRecvPolicy () const
ValueType * getAddressData ()
ValueType * data ()
ValueType const * getAddressData () const
ValueType const * data () const
MatrixInternal * internal ()
MatrixInternal const * internal () const
bool isParallel () const
Integer getLocalSize () const
Integer getLocalOffset () const
Integer getGlobalSize () const
Integer getGhostSize () const
Integer getAllocSize () const
Integer blockSize () const
void setBlockSize (Integer block_size)
IMessagePassingMng * getParallelMng ()
void sequentialStart ()
void parallelStart (ConstArrayView< Integer > offset, IMessagePassingMng *parallel_mng, bool need_sort_ghost_col=false)
void sortGhostCols (ConstArrayView< Integer > offset)
virtual SimpleCSRMatrixcloneTo (const MultiMatrixImpl *multi) const
void copy (SimpleCSRMatrix const &matrix)
void copyProfile (SimpleCSRMatrix const &matrix)
void notifyChanges ()
void endUpdate ()
TimerType & timer () const
Public Member Functions inherited from Alien::IMatrixImpl
 IMatrixImpl (const MultiMatrixImpl *multi_impl, BackEndId backend="")
 Constructor.
virtual ~IMatrixImpl () override=default
 Free resources.
 IMatrixImpl (const IMatrixImpl &src)=delete
 IMatrixImpl (IMatrixImpl &&src)=delete
IMatrixImploperator= (const IMatrixImpl &src)=delete
IMatrixImploperator= (IMatrixImpl &&src)=delete
virtual const ISpacerowSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const ISpacecolSpace () const
 Get the row space associated to the matrix \ returns The row space.
virtual const MatrixDistributiondistribution () const
 Get the distribution of the matrix.
virtual BackEndId backend () const
virtual const Blockblock () const
 Get block datas of the matrix.
virtual const VBlockvblock () const
 Get block datas of the matrix.
virtual const VBlockrowBlock () const
 Get row block datas of the matrix.
virtual const VBlockcolBlock () const
 Get col block datas of the matrix.
const MultiMatrixImplimpls () const
Public Member Functions inherited from Alien::Timestamp
 Timestamp (const TimestampMng *manager)
virtual ~Timestamp ()
 Destructeur de la classe.
virtual Int64 timestamp () const
 Donne la valeur courante du timestamp.
void updateTimestamp ()
 Met à jour le timestamp.
void copyTimestamp (const Timestamp &v)
 Copy un autre timestamp.
void setTimestamp (const TimestampMng *manager, const Int64 timestamp)
Public Member Functions inherited from Alien::ObjectWithTrace
template<typename T>
void alien_info (T &&t) const
template<typename T>
void alien_debug (T &&t) const
template<typename T>
void alien_warning (T &&t) const
template<typename T>
void alien_fatal (T &&t) const
ITraceMng * traceMng () const

Static Public Attributes

static const bool on_host_only = true

Friends

class SimpleCSRInternal::SimpleCSRMatrixMultT< ValueType >

Additional Inherited Members

Protected Member Functions inherited from Alien::ObjectWithTrace
TraceMessage cout () const
Protected Attributes inherited from Alien::IMatrixImpl
const MultiMatrixImplm_multi_impl
 Pointer on matrices implementation.
BackEndId m_backend
 Backend id.

Detailed Description

template<typename ValueT>
class Alien::SimpleCSRMatrix< ValueT >

Definition at line 42 of file SimpleCSRMatrix.h.

Member Typedef Documentation

◆ CSRStructInfo

template<typename ValueT>
typedef SimpleCSRInternal::CSRStructInfo Alien::SimpleCSRMatrix< ValueT >::CSRStructInfo

Definition at line 49 of file SimpleCSRMatrix.h.

◆ DistStructInfo

template<typename ValueT>
typedef SimpleCSRInternal::DistStructInfo Alien::SimpleCSRMatrix< ValueT >::DistStructInfo

Definition at line 51 of file SimpleCSRMatrix.h.

◆ IndexType

template<typename ValueT>
typedef ProfileType::IndexType Alien::SimpleCSRMatrix< ValueT >::IndexType

Definition at line 53 of file SimpleCSRMatrix.h.

◆ MatrixInternal

template<typename ValueT>
typedef SimpleCSRInternal::MatrixInternal<ValueType> Alien::SimpleCSRMatrix< ValueT >::MatrixInternal

Definition at line 52 of file SimpleCSRMatrix.h.

◆ ProfileType

template<typename ValueT>
typedef SimpleCSRInternal::CSRStructInfo Alien::SimpleCSRMatrix< ValueT >::ProfileType

Definition at line 50 of file SimpleCSRMatrix.h.

◆ SentryType

template<typename ValueT>
typedef TimerType::Sentry Alien::SimpleCSRMatrix< ValueT >::SentryType

Definition at line 55 of file SimpleCSRMatrix.h.

◆ TagType

template<typename ValueT>
typedef BackEnd::tag::simplecsr Alien::SimpleCSRMatrix< ValueT >::TagType

Definition at line 47 of file SimpleCSRMatrix.h.

◆ TimerType

template<typename ValueT>
typedef Alien::StdTimer Alien::SimpleCSRMatrix< ValueT >::TimerType

Definition at line 54 of file SimpleCSRMatrix.h.

◆ ValueType

template<typename ValueT>
typedef ValueT Alien::SimpleCSRMatrix< ValueT >::ValueType

Definition at line 48 of file SimpleCSRMatrix.h.

Constructor & Destructor Documentation

◆ SimpleCSRMatrix() [1/2]

template<typename ValueT>
Alien::SimpleCSRMatrix< ValueT >::SimpleCSRMatrix ( )
inline

Constructeur de la classe

Definition at line 60 of file SimpleCSRMatrix.h.

◆ SimpleCSRMatrix() [2/2]

template<typename ValueT>
Alien::SimpleCSRMatrix< ValueT >::SimpleCSRMatrix ( const MultiMatrixImpl * multi_impl)
inline

Constructeur de la classe

Definition at line 67 of file SimpleCSRMatrix.h.

◆ ~SimpleCSRMatrix()

template<typename ValueT>
virtual Alien::SimpleCSRMatrix< ValueT >::~SimpleCSRMatrix ( )
inlinevirtual

Destructeur de la classe

Definition at line 75 of file SimpleCSRMatrix.h.

Member Function Documentation

◆ allocate()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::allocate ( )
inline

Definition at line 93 of file SimpleCSRMatrix.h.

◆ blockSize()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::blockSize ( ) const
inline

Definition at line 162 of file SimpleCSRMatrix.h.

◆ clear()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::clear ( )
inlinevirtual

Wipe out internal data.

Reimplemented from Alien::IMatrixImpl.

Definition at line 91 of file SimpleCSRMatrix.h.

◆ cloneTo()

template<typename ValueT>
virtual SimpleCSRMatrix * Alien::SimpleCSRMatrix< ValueT >::cloneTo ( const MultiMatrixImpl * multi) const
inlinevirtual

Definition at line 295 of file SimpleCSRMatrix.h.

◆ copy()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::copy ( SimpleCSRMatrix< ValueT > const & matrix)
inline

Definition at line 315 of file SimpleCSRMatrix.h.

◆ copyProfile()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::copyProfile ( SimpleCSRMatrix< ValueT > const & matrix)
inline

Definition at line 338 of file SimpleCSRMatrix.h.

◆ data() [1/2]

template<typename ValueT>
ValueType * Alien::SimpleCSRMatrix< ValueT >::data ( )
inline

Definition at line 131 of file SimpleCSRMatrix.h.

◆ data() [2/2]

template<typename ValueT>
ValueType const * Alien::SimpleCSRMatrix< ValueT >::data ( ) const
inline

Definition at line 134 of file SimpleCSRMatrix.h.

◆ endUpdate()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::endUpdate ( )
inline

Definition at line 401 of file SimpleCSRMatrix.h.

◆ free()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::free ( )
inline

Definition at line 85 of file SimpleCSRMatrix.h.

◆ freeData()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::freeData ( )
inline

Definition at line 88 of file SimpleCSRMatrix.h.

◆ getAddressData() [1/2]

template<typename ValueT>
ValueType * Alien::SimpleCSRMatrix< ValueT >::getAddressData ( )
inline

Definition at line 130 of file SimpleCSRMatrix.h.

◆ getAddressData() [2/2]

template<typename ValueT>
ValueType const * Alien::SimpleCSRMatrix< ValueT >::getAddressData ( ) const
inline

Definition at line 133 of file SimpleCSRMatrix.h.

◆ getAllocSize()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::getAllocSize ( ) const
inline

Definition at line 150 of file SimpleCSRMatrix.h.

◆ getCSRProfile() [1/2]

template<typename ValueT>
CSRStructInfo & Alien::SimpleCSRMatrix< ValueT >::getCSRProfile ( )
inline

Definition at line 112 of file SimpleCSRMatrix.h.

◆ getCSRProfile() [2/2]

template<typename ValueT>
const CSRStructInfo & Alien::SimpleCSRMatrix< ValueT >::getCSRProfile ( ) const
inline

Definition at line 114 of file SimpleCSRMatrix.h.

◆ getDistStructInfo()

template<typename ValueT>
const DistStructInfo & Alien::SimpleCSRMatrix< ValueT >::getDistStructInfo ( ) const
inline

Definition at line 118 of file SimpleCSRMatrix.h.

◆ getGhostSize()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::getGhostSize ( ) const
inline

Definition at line 148 of file SimpleCSRMatrix.h.

◆ getGlobalSize()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::getGlobalSize ( ) const
inline

Definition at line 146 of file SimpleCSRMatrix.h.

◆ getLocalOffset()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::getLocalOffset ( ) const
inline

Definition at line 144 of file SimpleCSRMatrix.h.

◆ getLocalSize()

template<typename ValueT>
Integer Alien::SimpleCSRMatrix< ValueT >::getLocalSize ( ) const
inline

Definition at line 142 of file SimpleCSRMatrix.h.

◆ getParallelMng()

template<typename ValueT>
IMessagePassingMng * Alien::SimpleCSRMatrix< ValueT >::getParallelMng ( )
inline

Definition at line 184 of file SimpleCSRMatrix.h.

◆ getProfile()

template<typename ValueT>
const CSRStructInfo & Alien::SimpleCSRMatrix< ValueT >::getProfile ( ) const
inline

Definition at line 116 of file SimpleCSRMatrix.h.

◆ getRecvPolicy()

template<typename ValueT>
SimpleCSRInternal::CommProperty::ePolicyType Alien::SimpleCSRMatrix< ValueT >::getRecvPolicy ( ) const
inline

Definition at line 125 of file SimpleCSRMatrix.h.

◆ getSendPolicy()

template<typename ValueT>
SimpleCSRInternal::CommProperty::ePolicyType Alien::SimpleCSRMatrix< ValueT >::getSendPolicy ( ) const
inline

Definition at line 120 of file SimpleCSRMatrix.h.

◆ internal() [1/2]

template<typename ValueT>
MatrixInternal * Alien::SimpleCSRMatrix< ValueT >::internal ( )
inline

Definition at line 136 of file SimpleCSRMatrix.h.

◆ internal() [2/2]

template<typename ValueT>
MatrixInternal const * Alien::SimpleCSRMatrix< ValueT >::internal ( ) const
inline

Definition at line 138 of file SimpleCSRMatrix.h.

◆ isParallel()

template<typename ValueT>
bool Alien::SimpleCSRMatrix< ValueT >::isParallel ( ) const
inline

Definition at line 140 of file SimpleCSRMatrix.h.

◆ notifyChanges()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::notifyChanges ( )
inline

Definition at line 396 of file SimpleCSRMatrix.h.

◆ parallelStart()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::parallelStart ( ConstArrayView< Integer > offset,
IMessagePassingMng * parallel_mng,
bool need_sort_ghost_col = false )
inline

Definition at line 204 of file SimpleCSRMatrix.h.

◆ scal()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::scal ( ValueType const * values)
inline

Definition at line 107 of file SimpleCSRMatrix.h.

◆ sequentialStart()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::sequentialStart ( )
inline

Definition at line 189 of file SimpleCSRMatrix.h.

◆ setBlockSize()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::setBlockSize ( Integer block_size)
inline

Definition at line 176 of file SimpleCSRMatrix.h.

◆ setTraceMng()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::setTraceMng ( ITraceMng * trace_mng)
inline

Definition at line 82 of file SimpleCSRMatrix.h.

◆ sortGhostCols()

template<typename ValueT>
void Alien::SimpleCSRMatrix< ValueT >::sortGhostCols ( ConstArrayView< Integer > offset)
inline

Definition at line 243 of file SimpleCSRMatrix.h.

◆ timer()

template<typename ValueT>
TimerType & Alien::SimpleCSRMatrix< ValueT >::timer ( ) const
inline

Definition at line 448 of file SimpleCSRMatrix.h.

◆ SimpleCSRInternal::SimpleCSRMatrixMultT< ValueType >

template<typename ValueT>
friend class SimpleCSRInternal::SimpleCSRMatrixMultT< ValueType >
friend

Definition at line 440 of file SimpleCSRMatrix.h.

Member Data Documentation

◆ on_host_only

template<typename ValueT>
const bool Alien::SimpleCSRMatrix< ValueT >::on_host_only = true
static

Definition at line 46 of file SimpleCSRMatrix.h.


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