NDEVR
API Documentation
SparseBlockMatrixHashMap< MatrixType >

Sparse matrix which uses blocks based on hash structures. More...

Collaboration diagram for SparseBlockMatrixHashMap< MatrixType >:
[legend]

Public Types

typedef MatrixType SparseMatrixBlock
 this is the type of the elementary block, it is an Eigen::Matrix.

Public Member Functions

MatrixType * addBlock (int r, uint04 c, bool zeroBlock=false)
 add a block to the pattern, return a pointer to the added block
int colBaseOfBlock (int c) const
 where does the col at block-col r start?
const Buffer< int > & colBlockIndices () const
 indices of the column blocks
int cols () const
 columns of the matrix
int colsOfBlock (int c) const
 how many cols does the block at block-col c has?
const Buffer< SparseColumn > & columns () const
 the block matrices per block-column
int rowBaseOfBlock (int r) const
 where does the row at block-row r start?
const Buffer< int > & rowBlockIndices () const
 indices of the row blocks
int rows () const
 rows of the matrix
int rowsOfBlock (int r) const
 how many rows does the block at block-row r has?

Protected Attributes

const Buffer< int > * _colBlockIndices
 vector of the indices of the blocks along the cols
const Buffer< int > * _rowBlockIndices
 vector of the indices of the blocks along the rows.
Buffer< SparseColumn > m_block_cols
 the matrices stored in CCS order

Detailed Description

template<class MatrixType>
class SparseBlockMatrixHashMap< MatrixType >

Sparse matrix which uses blocks based on hash structures.

This class is used to construct the pattern of a sparse block matrix

Definition at line 231 of file sparse_block_matrix_ccs.h.


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