#include <core/alien/kernels/dok/ILocalMatrixIndexer.h>
Public Types | |
| typedef Integer | Offset |
| typedef std::pair< Offset, Offset > | Renumbering |
| typedef std::pair< Int32, Int32 > | Key |
Public Member Functions | |
| virtual void | associate (Integer i, Integer j, Offset offset)=0 |
| virtual std::optional< Offset > | find (Integer i, Integer j)=0 |
| virtual Offset | create (Integer i, Integer j, Offset &tentative_offset)=0 |
| virtual IReverseIndexer * | sort (Arccore::Array< Renumbering > &perm)=0 |
| virtual ILocalMatrixIndexer * | clone () const =0 |
Interface for a local sparse matrix indexer. The goal of this indexer is to provide a database indexed by (row,column) ids. Non-zeros are not stored here, only their position in the nnz storage array. This interface allows to use a CSRMatrix as a DoKMatrix.
Definition at line 37 of file ILocalMatrixIndexer.h.
| typedef std::pair<Int32, Int32> Alien::ILocalMatrixIndexer::Key |
Definition at line 42 of file ILocalMatrixIndexer.h.
| typedef Integer Alien::ILocalMatrixIndexer::Offset |
Definition at line 40 of file ILocalMatrixIndexer.h.
| typedef std::pair<Offset, Offset> Alien::ILocalMatrixIndexer::Renumbering |
Definition at line 41 of file ILocalMatrixIndexer.h.
|
inlinevirtual |
Definition at line 45 of file ILocalMatrixIndexer.h.
|
pure virtual |
Registers an offset with a matrix position (i,j)
| i | id of the row |
| j | id of the column |
| offset |
Implemented in Alien::DoKLocalMatrixIndexer.
|
pure virtual |
Creates a new offset for matrix position (i,j)
| i | |
| j | |
| tentative_offset | hint on what the offset should be |
Implemented in Alien::DoKLocalMatrixIndexer.
|
pure virtual |
Finds the offset associated with a matrix position (i,j)
| i | |
| j |
Implemented in Alien::DoKLocalMatrixIndexer.
|
pure virtual |
Creates a new indexer, based on offset permutations.
| perm | permutation array, to be filled by this function. |
Implemented in Alien::DoKLocalMatrixIndexer.