ergo
mat::MatrixHierarchicBase< Treal, Telement > Class Template Reference

Base class for Matrix and Matrix specialization. More...

#include <MatrixHierarchicBase.h>

Inheritance diagram for mat::MatrixHierarchicBase< Treal, Telement >:
mat::Matrix< Treal, Telement > mat::Matrix< Treal >

Public Member Functions

bool operator== (int k) const
 
const intnScalarsRows () const
 
const intnScalarsCols () const
 
const intnrows () const
 
const intncols () const
 
Telementoperator ()(int row
 
 assert (row >=0)
 
 assert (col >=0)
 
 assert (row< nrows())
 
 assert (col< ncols())
 
const Telementoperator ()(int row
 
 assert (row >=0)
 
 assert (col >=0)
 
 assert (row< nrows())
 
 assert (col< ncols())
 
Telementoperator[] (int index)
 
Telement constoperator[] (int index) const
 
bool is_zero () const
 
int nElements () const
 
void resetRows (SizesAndBlocks const &newRows)
 
void resetCols (SizesAndBlocks const &newCols)
 
void getRows (SizesAndBlocks &rowsCopy) const
 
void getCols (SizesAndBlocks &colsCopy) const
 
bool highestLevel () const
 
bool is_empty () const
 Check if matrix is empty Empty is different from zero, a zero matrix contains information about blocksizes etc.
 

Public Attributes

Telement int col
 
return elements [row+col *nrows()]
 
const Telement int col const
 

Protected Member Functions

 MatrixHierarchicBase ()
 
 MatrixHierarchicBase (SizesAndBlocks const &rowsInp, SizesAndBlocks const &colsInp)
 
 MatrixHierarchicBase (const MatrixHierarchicBase< Treal, Telement > &mat)
 
MatrixHierarchicBase< Treal, Telement > & operator= (const MatrixHierarchicBase< Treal, Telement > &mat)
 
virtual ~MatrixHierarchicBase ()
 

Static Protected Member Functions

static void swap (MatrixHierarchicBase< Treal, Telement > &A, MatrixHierarchicBase< Treal, Telement > &B)
 

Protected Attributes

SizesAndBlocks rows
 
SizesAndBlocks cols
 
Telementelements
 

Detailed Description

template<class Treal, class Telement = Treal>
class mat::MatrixHierarchicBase< Treal, Telement >

Base class for Matrix and Matrix specialization.

See also
Matrix
Permutation

Constructor & Destructor Documentation

◆ MatrixHierarchicBase() [1/3]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::MatrixHierarchicBase ( )
inlineprotected

◆ MatrixHierarchicBase() [2/3]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::MatrixHierarchicBase ( SizesAndBlocks const rowsInp,
SizesAndBlocks const colsInp 
)
inlineprotected

◆ MatrixHierarchicBase() [3/3]

◆ ~MatrixHierarchicBase()

Member Function Documentation

◆ assert() [1/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( col >=  0)

◆ assert() [2/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( col >=  0)

◆ assert() [3/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( )

◆ assert() [4/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( )

◆ assert() [5/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( row >=  0)

◆ assert() [6/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( row >=  0)

◆ assert() [7/8]

◆ assert() [8/8]

template<class Treal , class Telement = Treal>
mat::MatrixHierarchicBase< Treal, Telement >::assert ( )

◆ getCols()

◆ getRows()

◆ highestLevel()

◆ is_empty()

◆ is_zero()

template<class Treal , class Telement = Treal>
bool mat::MatrixHierarchicBase< Treal, Telement >::is_zero ( ) const
inline

References mat::MatrixHierarchicBase< Treal, Telement >::elements.

Referenced by mat::Matrix< Treal, Telement >::allocate(), mat::Matrix< Treal >::allocate(), mat::Matrix< Treal >::assignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::assignFrobNormsLowestLevel(), mat::Matrix< Treal >::frobThreshElementLevel(), mat::Matrix< Treal, Telement >::frobThreshElementLevel(), mat::Matrix< Treal >::frobThreshLowestLevel(), mat::Matrix< Treal, Telement >::frobThreshLowestLevel(), mat::Matrix< Treal, Telement >::geAccumulateWith(), mat::Matrix< Treal >::geAccumulateWith(), mat::Matrix< Treal >::gemm(), mat::Matrix< Treal, Telement >::gemm(), mat::Matrix< Treal, Telement >::gemm_upper_tr_only(), mat::Matrix< Treal, Telement >::maxAbsValue(), mat::Matrix< Treal >::maxAbsValue(), mat::Matrix< Treal >::memory_usage(), mat::Matrix< Treal >::nnz(), mat::MatrixHierarchicBase< Treal, Telement >::operator==(), mat::Matrix< Treal, Telement >::ssmm(), mat::Matrix< Treal, Telement >::ssmm_upper_tr_only(), mat::Matrix< Treal >::sy_nnz(), mat::Matrix< Treal >::sy_nvalues(), mat::Matrix< Treal, Telement >::syAccumulateWith(), mat::Matrix< Treal >::syAccumulateWith(), mat::Matrix< Treal >::syAssignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::syAssignFrobNormsLowestLevel(), mat::Matrix< Treal >::symm(), mat::Matrix< Treal, Telement >::symm(), mat::Matrix< Treal >::syrk(), mat::Matrix< Treal, Telement >::syrk(), mat::Matrix< Treal, Telement >::sysq(), mat::Matrix< Treal, Telement >::sytr_upper_tr_only(), and mat::Matrix< Treal >::truncateAccordingToSparsityPattern().

◆ ncols()

◆ nElements()

◆ nrows()

◆ nScalarsCols()

◆ nScalarsRows()

◆ operator() [1/2]

template<class Treal , class Telement = Treal>
Telement & mat::MatrixHierarchicBase< Treal, Telement >::operator ( )
inline

◆ operator() [2/2]

template<class Treal , class Telement = Treal>
const Telement & mat::MatrixHierarchicBase< Treal, Telement >::operator ( )
inline

◆ operator=()

◆ operator==()

◆ operator[]() [1/2]

◆ operator[]() [2/2]

◆ resetCols()

◆ resetRows()

◆ swap()

Member Data Documentation

◆ col

◆ cols

◆ const

Initial value:

◆ elements [1/2]

◆ elements [2/2]

template<class Treal , class Telement = Treal>
Telement* mat::MatrixHierarchicBase< Treal, Telement >::elements
protected

◆ rows


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