Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::DoKMatrix Class Reference

#include <core/alien/kernels/dok/DoKMatrixT.h>

Inheritance diagram for Alien::DoKMatrix:
Collaboration diagram for Alien::DoKMatrix:

Public Types

typedef Real ValueType
Public Types inherited from Alien::IMatrixImpl
typedef Arccore::Real ValueType
 Type of the values stored in the matrix.

Public Member Functions

 DoKMatrix (const MultiMatrixImpl *multi_impl=nullptr)
 DoKMatrix (const DoKMatrix &)=delete
void clear () override
 Wipe out internal data.
bool setNNZ (Int32 row, Int32 col, const ValueType &value)
ValueType addNNZ (Int32 row, Int32 col, const ValueType &value)
void assemble ()
 Dispatch matrix elements.
void compact ()
DoKLocalMatrixT< ValueType > & data ()
DoKLocalMatrixT< ValueType > & data () const
void dump ()
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

Private Member Functions

void _distribute ()

Private Attributes

DoKLocalMatrixT< ValueType > m_data
bool m_need_update = true

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

Matrix stored as Dictionary Of Keys

Definition at line 38 of file DoKMatrixT.h.

Member Typedef Documentation

◆ ValueType

typedef Real Alien::DoKMatrix::ValueType

Definition at line 41 of file DoKMatrixT.h.

Constructor & Destructor Documentation

◆ DoKMatrix()

Alien::DoKMatrix::DoKMatrix ( const MultiMatrixImpl * multi_impl = nullptr)
inlineexplicit

Definition at line 44 of file DoKMatrixT.h.

Member Function Documentation

◆ _distribute()

void Alien::DoKMatrix::_distribute ( )
inlineprivate

Definition at line 90 of file DoKMatrixT.h.

◆ addNNZ()

ValueType Alien::DoKMatrix::addNNZ ( Int32 row,
Int32 col,
const ValueType & value )
inline

Set value of a matrix element, creating it if it does not exist yet.

Parameters
rowid of the row in the matrix
colid of the column in the matrix
valuevalue of this non-zero
Returns

Definition at line 72 of file DoKMatrixT.h.

◆ assemble()

void Alien::DoKMatrix::assemble ( )
inline

Dispatch matrix elements.

Definition at line 79 of file DoKMatrixT.h.

◆ clear()

void Alien::DoKMatrix::clear ( )
inlineoverridevirtual

Wipe out internal data.

Reimplemented from Alien::IMatrixImpl.

Definition at line 53 of file DoKMatrixT.h.

◆ compact()

void Alien::DoKMatrix::compact ( )
inline

Definition at line 81 of file DoKMatrixT.h.

◆ data() [1/2]

DoKLocalMatrixT< ValueType > & Alien::DoKMatrix::data ( )
inline

Definition at line 83 of file DoKMatrixT.h.

◆ data() [2/2]

DoKLocalMatrixT< ValueType > & Alien::DoKMatrix::data ( ) const
inline

Definition at line 85 of file DoKMatrixT.h.

◆ dump()

void Alien::DoKMatrix::dump ( )
inline

Definition at line 87 of file DoKMatrixT.h.

◆ setNNZ()

bool Alien::DoKMatrix::setNNZ ( Int32 row,
Int32 col,
const ValueType & value )
inline

Set value of a matrix element, creating it if it does not exist yet.

Parameters
rowid of the row in the matrix
colid of the column in the matrix
valuevalue of this non-zero
Returns

Definition at line 60 of file DoKMatrixT.h.

Member Data Documentation

◆ m_data

DoKLocalMatrixT<ValueType> Alien::DoKMatrix::m_data
mutableprivate

Definition at line 109 of file DoKMatrixT.h.

◆ m_need_update

bool Alien::DoKMatrix::m_need_update = true
private

Definition at line 110 of file DoKMatrixT.h.


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