ergo
|
Matrix class and heart of the matrix library. More...
#include <Matrix.h>
Public Types | |
typedef Telement | ElementType |
typedef Vector< Treal, typename ElementType::VectorType > | VectorType |
Public Member Functions | |
Matrix () | |
void | allocate () |
void | assignFromFull (std::vector< Treal > const &fullMat) |
void | fullMatrix (std::vector< Treal > &fullMat) const |
void | syFullMatrix (std::vector< Treal > &fullMat) const |
void | syUpTriFullMatrix (std::vector< Treal > &fullMat) const |
void | assignFromSparse (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values) |
void | assignFromSparse (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values, std::vector< int > const &indexes) |
void | addValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values) |
void | addValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values, std::vector< int > const &indexes) |
void | syAssignFromSparse (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values) |
void | syAddValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > const &values) |
void | getValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > &values) const |
void | getValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > &, std::vector< int > const &indexes) const |
void | syGetValues (std::vector< int > const &rowind, std::vector< int > const &colind, std::vector< Treal > &values) const |
void | getAllValues (std::vector< int > &rowind, std::vector< int > &colind, std::vector< Treal > &) const |
void | syGetAllValues (std::vector< int > &rowind, std::vector< int > &colind, std::vector< Treal > &) const |
Matrix< Treal, Telement > & | operator= (const Matrix< Treal, Telement > &mat) |
void | clear () |
~Matrix () | |
void | writeToFile (std::ofstream &file) const |
void | readFromFile (std::ifstream &file) |
void | random () |
void | syRandom () |
void | randomZeroStructure (Treal probabilityBeingZero) |
Get a random zero structure with a specified probability that each submatrix is zero. | |
void | syRandomZeroStructure (Treal probabilityBeingZero) |
template<typename TRule > | |
void | setElementsByRule (TRule &rule) |
template<typename TRule > | |
void | sySetElementsByRule (TRule &rule) |
template<typename TRule > | |
void | trSetElementsByRule (TRule &rule) |
void | addIdentity (Treal alpha) |
void | symToNosym () |
void | nosymToSym () |
Matrix< Treal, Telement > & | operator= (int const k) |
Matrix< Treal, Telement > & | operator*= (const Treal alpha) |
Treal | frob () const |
Treal | frobSquared () const |
Treal | syFrob () const |
Treal | syFrobSquared () const |
Treal | trace () const |
void | assign (Treal const alpha, Matrix< Treal, Telement > const &A) |
void | getFrobSqLowestLevel (std::vector< Treal > &frobsq) const |
void | frobThreshLowestLevel (Treal const threshold, Matrix< Treal, Telement > *ErrorMatrix) |
void | getFrobSqElementLevel (std::vector< Treal > &frobsq) const |
void | frobThreshElementLevel (Treal const threshold, Matrix< Treal, Telement > *ErrorMatrix) |
void | assignFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal, Telement > > const &A) |
Build a matrix with single matrix elements at the lowest level containing the Frobenius norms of the submatrices of A. | |
void | syAssignFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal, Telement > > const &A) |
Version of assignFrobNormsLowestLevelToMatrix for symmetric matrices. | |
void | assignDiffFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal, Telement > > const &A, Matrix< Treal, Matrix< Treal, Telement > > const &B) |
Same as assignFrobNormsLowestLevel except that the Frobenius norms of the differences between submatrices of A and B are assigned. | |
void | syAssignDiffFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal, Telement > > const &A, Matrix< Treal, Matrix< Treal, Telement > > const &B) |
Same as syAssignFrobNormsLowestLevel except that the Frobenius norms of the differences between submatrices of A and B are assigned. | |
void | truncateAccordingToSparsityPattern (Matrix< Treal, Matrix< Treal, Telement > > &A) const |
Truncate matrix A according to the sparsity pattern of the this matrix (frobNormMat). | |
Treal | frob_thresh (Treal const threshold, Matrix< Treal, Telement > *ErrorMatrix=0) |
Removes small elements so that the introduced error is smaller than the threshold in the Frobenius norm Returns the Frobenius norm of the introduced error. | |
Treal | frob_squared_thresh (Treal const threshold, Matrix< Treal, Telement > *ErrorMatrix=0) |
Removes small elements so that the introduced error is smaller than threshold in the squared Frobenius norm, returns squared frobenius norm of the introduced error added to ErrorMatrix. | |
void | gershgorin (Treal &lmin, Treal &lmax) const |
void | sy_gershgorin (Treal &lmin, Treal &lmax) const |
void | add_abs_col_sums (Treal *abscolsums) const |
void | get_diagonal (Treal *diag) const |
size_t | memory_usage () const |
size_t | nnz () const |
Returns number of nonzeros in matrix. | |
size_t | sy_nnz () const |
Returns number of nonzeros in matrix including lower triangle elements. | |
size_t | nvalues () const |
Returns number of stored values in matrix. | |
size_t | sy_nvalues () const |
Returns number of stored values in matrix. | |
template<typename Top > | |
Treal | syAccumulateWith (Top &op) |
template<typename Top > | |
Treal | geAccumulateWith (Top &op) |
Accumulation algorithm for general matrices. | |
Treal | maxAbsValue () const |
![]() | |
bool | operator== (int k) const |
const int & | nScalarsRows () const |
const int & | nScalarsCols () const |
const int & | nrows () const |
const int & | ncols () const |
Telement & | operator ()(int row |
assert (row >=0) | |
assert (col >=0) | |
assert (row< nrows()) | |
assert (col< ncols()) | |
const Telement & | operator ()(int row |
assert (row >=0) | |
assert (col >=0) | |
assert (row< nrows()) | |
assert (col< ncols()) | |
Telement & | operator[] (int index) |
Telement const & | operator[] (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. | |
Friends | |
class | Vector< Treal, Telement > |
Additional Inherited Members | |
![]() | |
Telement int | col |
return | elements [row+col *nrows()] |
const Telement int col | const |
![]() | |
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 void | swap (MatrixHierarchicBase< Treal, Telement > &A, MatrixHierarchicBase< Treal, Telement > &B) |
![]() | |
SizesAndBlocks | rows |
SizesAndBlocks | cols |
Telement * | elements |
Matrix class and heart of the matrix library.
This class is used to obtain the hierarchic data structure.
typedef Telement mat::Matrix< Treal, Telement >::ElementType |
typedef Vector<Treal, typename ElementType::VectorType> mat::Matrix< Treal, Telement >::VectorType |
References mat::Matrix< Treal, Telement >::clear().
void mat::Matrix< Treal, Telement >::add_abs_col_sums | ( | Treal * | abscolsums | ) | const |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::addIdentity | ( | Treal | alpha | ) |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::addValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values ) |
References mat::getMachineEpsilon().
|
inline |
References mat::SingletonForTimings::addTime(), mat::MatrixHierarchicBase< Treal, Telement >::assert(), mat::MatrixHierarchicBase< Treal, Telement >::col, mat::MatrixHierarchicBase< Treal, Telement >::cols, mat::MatrixHierarchicBase< Treal, Telement >::elements, mat::getMachineEpsilon(), mat::SizesAndBlocks::getNBlocks(), mat::SizesAndBlocks::getSizesAndBlocksForLowerLevel(), mat::SingletonForTimings::instance(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::nElements(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), mat::MatrixHierarchicBase< Treal, Telement >::rows, mat::Time::tic(), and mat::Time::toc().
Referenced by mat::Matrix< Treal >::assignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::assignFrobNormsLowestLevel(), mat::Matrix< Treal >::frobThreshElementLevel(), mat::Matrix< Treal, Telement >::frobThreshElementLevel(), mat::Matrix< Treal, Telement >::frobThreshLowestLevel(), mat::Matrix< Treal >::gemm(), mat::Matrix< Treal, Telement >::gemm(), mat::Matrix< Treal, Telement >::gemm_upper_tr_only(), mat::Matrix< Treal, Telement >::ssmm(), mat::Matrix< Treal, Telement >::ssmm_upper_tr_only(), mat::Matrix< Treal >::syAssignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::syAssignFrobNormsLowestLevel(), mat::Matrix< Treal, Telement >::syInch(), mat::Matrix< Treal >::symm(), mat::Matrix< Treal, Telement >::symm(), mat::Matrix< Treal >::syrk(), mat::Matrix< Treal, Telement >::syrk(), and mat::Matrix< Treal, Telement >::sysq().
void mat::Matrix< Treal, Telement >::assign | ( | Treal const | alpha, |
Matrix< Treal, Telement > const & | A ) |
References A, and mat::Matrix< Treal, Telement >::add().
void mat::Matrix< Treal, Telement >::assignDiffFrobNormsLowestLevel | ( | Matrix< Treal, Matrix< Treal, Telement > > const & | A, |
Matrix< Treal, Matrix< Treal, Telement > > const & | B ) |
Same as assignFrobNormsLowestLevel except that the Frobenius norms of the differences between submatrices of A and B are assigned.
References A, B, and mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::assignFrobNormsLowestLevel | ( | Matrix< Treal, Matrix< Treal, Telement > > const & | A | ) |
Build a matrix with single matrix elements at the lowest level containing the Frobenius norms of the submatrices of A.
References A, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::assignDiffFrobNormsLowestLevel().
References cols, mat::getMachineEpsilon(), mat::SizesAndBlocks::getNTotalScalars(), and rows.
void mat::Matrix< Treal, Telement >::assignFromSparse | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values ) |
References mat::getMachineEpsilon().
References mat::freeElements().
Referenced by mat::Matrix< Treal >::assignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::assignFrobNormsLowestLevel(), mat::Matrix< Treal >::frobThreshElementLevel(), mat::Matrix< Treal, Telement >::frobThreshElementLevel(), mat::Matrix< Treal, Telement >::frobThreshLowestLevel(), mat::Matrix< Treal >::syAssignDiffFrobNormsLowestLevel(), mat::Matrix< Treal >::syAssignFrobNormsLowestLevel(), mat::Matrix< Treal, Telement >::~Matrix(), and mat::Matrix< Treal >::~Matrix().
|
inline |
Treal mat::Matrix< Treal, Telement >::frob_squared_thresh | ( | Treal const | threshold, |
Matrix< Treal, Telement > * | ErrorMatrix = 0 ) |
Removes small elements so that the introduced error is smaller than threshold in the squared Frobenius norm, returns squared frobenius norm of the introduced error added to ErrorMatrix.
References cols, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), rows, and mat::MatrixHierarchicBase< Treal, Telement >::swap().
Referenced by mat::Matrix< Treal >::frob_thresh(), and mat::Matrix< Treal, Telement >::frob_thresh().
|
inline |
Removes small elements so that the introduced error is smaller than the threshold in the Frobenius norm Returns the Frobenius norm of the introduced error.
References mat::Matrix< Treal, Telement >::frob_squared_thresh(), and template_blas_sqrt().
Referenced by mat::Matrix< Treal, Telement >::syInch().
|
inlinestatic |
References A, B, mat::Matrix< Treal, Telement >::frobSquaredDiff(), and template_blas_sqrt().
References mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal, Telement >::frob(), mat::Matrix< Treal >::frob(), and mat::Matrix< Treal >::frobThreshLowestLevel().
|
static |
References A, B, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::frobDiff(), and mat::Matrix< Treal, Telement >::frobDiff().
void mat::Matrix< Treal, Telement >::fullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
|
inline |
Accumulation algorithm for general matrices.
References mat::MatrixHierarchicBase< Treal, Telement >::col, mat::Matrix< Treal, Telement >::geAccumulateWith(), mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::ncols(), and mat::MatrixHierarchicBase< Treal, Telement >::nrows().
Referenced by mat::Matrix< Treal, Telement >::geAccumulateWith(), and mat::Matrix< Treal, Telement >::syAccumulateWith().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), B, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
Referenced by mat::Matrix< Treal >::gemm_upper_tr_only().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), B, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
References mat::getMachineEpsilon(), and template_blas_fabs().
void mat::Matrix< Treal, Telement >::get_diagonal | ( | Treal * | diag | ) | const |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::getAllValues | ( | std::vector< int > & | rowind, |
std::vector< int > & | colind, | ||
std::vector< Treal > & | values ) const |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::getFrobSqElementLevel | ( | std::vector< Treal > & | frobsq | ) | const |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::getFrobSqLowestLevel | ( | std::vector< Treal > & | frobsq | ) | const |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::getValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > & | values ) const |
References mat::getMachineEpsilon().
|
inline |
size_t mat::Matrix< Treal, Telement >::memory_usage | ( | ) | const |
References mat::getMachineEpsilon().
Returns number of nonzeros in matrix.
References mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal, Telement >::nvalues(), and mat::Matrix< Treal >::nvalues().
References mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::gemm_upper_tr_only(), and mat::Matrix< Treal >::ssmm_upper_tr_only().
|
inline |
Returns number of stored values in matrix.
Returns same number as nnz()
References mat::Matrix< Treal, Telement >::nnz().
Matrix< Treal, Telement > & mat::Matrix< Treal, Telement >::operator*= | ( | const Treal | alpha | ) |
References mat::getMachineEpsilon().
Matrix< Treal, Telement > & mat::Matrix< Treal, Telement >::operator= | ( | int const | k | ) |
References mat::getMachineEpsilon().
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::randomZeroStructure | ( | Treal | probabilityBeingZero | ) |
Get a random zero structure with a specified probability that each submatrix is zero.
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::readFromFile | ( | std::ifstream & | file | ) |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::setElementsByRule | ( | TRule & | rule | ) |
References mat::getMachineEpsilon().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), B, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), B, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
References mat::getMachineEpsilon(), and mat::Matrix< Treal, Telement >::symToNosym().
Returns number of nonzeros in matrix including lower triangle elements.
References mat::getMachineEpsilon().
Returns number of stored values in matrix.
Lower triangle is not included. Lower triangle in diagonal submatrices is not included as well. Different from sy_nnz().
References mat::getMachineEpsilon().
|
static |
References A, B, and mat::getMachineEpsilon().
|
inline |
References mat::MatrixHierarchicBase< Treal, Telement >::col, mat::Matrix< Treal, Telement >::geAccumulateWith(), mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::ncols(), and mat::Matrix< Treal, Telement >::syAccumulateWith().
Referenced by mat::Matrix< Treal, Telement >::syAccumulateWith().
void mat::Matrix< Treal, Telement >::syAddValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values ) |
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::syAssignDiffFrobNormsLowestLevel | ( | Matrix< Treal, Matrix< Treal, Telement > > const & | A, |
Matrix< Treal, Matrix< Treal, Telement > > const & | B ) |
Same as syAssignFrobNormsLowestLevel except that the Frobenius norms of the differences between submatrices of A and B are assigned.
References A, B, and mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::syAssignFrobNormsLowestLevel | ( | Matrix< Treal, Matrix< Treal, Telement > > const & | A | ) |
Version of assignFrobNormsLowestLevelToMatrix for symmetric matrices.
References A, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::syAssignDiffFrobNormsLowestLevel().
void mat::Matrix< Treal, Telement >::syAssignFromSparse | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values ) |
References mat::getMachineEpsilon().
|
inline |
References mat::Matrix< Treal, Telement >::syFrobSquared(), and template_blas_sqrt().
|
inlinestatic |
References A, B, mat::Matrix< Treal, Telement >::syFrobSquaredDiff(), and template_blas_sqrt().
Treal mat::Matrix< Treal, Telement >::syFrobSquared | ( | ) | const |
References mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal, Telement >::syFrob(), and mat::Matrix< Treal >::syFrob().
|
static |
References A, B, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::syFrobDiff(), and mat::Matrix< Treal, Telement >::syFrobDiff().
void mat::Matrix< Treal, Telement >::syFullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
void mat::Matrix< Treal, Telement >::syGetAllValues | ( | std::vector< int > & | rowind, |
std::vector< int > & | colind, | ||
std::vector< Treal > & | values ) const |
void mat::Matrix< Treal, Telement >::syGetValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > & | values ) const |
References mat::getMachineEpsilon().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), mat::Matrix< Treal, Telement >::frob_thresh(), mat::getMachineEpsilon(), mat::left, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), mat::right, and mat::stable.
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), B, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
Referenced by mat::Matrix< Treal >::ssmm().
References mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::syRandomZeroStructure | ( | Treal | probabilityBeingZero | ) |
References mat::getMachineEpsilon().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
Referenced by mat::Matrix< Treal >::sysq().
void mat::Matrix< Treal, Telement >::sySetElementsByRule | ( | TRule & | rule | ) |
References mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal, Telement >::trSetElementsByRule().
|
static |
References A, mat::Matrix< Treal, Telement >::allocate(), mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), MAT_OMP_END, MAT_OMP_FINALIZE, MAT_OMP_INIT, MAT_OMP_START, mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), and mat::MatrixHierarchicBase< Treal, Telement >::resetRows().
|
static |
References A, mat::getMachineEpsilon(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::ncols(), and mat::MatrixHierarchicBase< Treal, Telement >::nrows().
Referenced by mat::Matrix< Treal >::trsytriplemm(), and mat::Matrix< Treal, Telement >::trsytriplemm().
void mat::Matrix< Treal, Telement >::syUpTriFullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
References mat::getMachineEpsilon(), and mat::trace().
|
static |
References A, B, and mat::getMachineEpsilon().
|
static |
References A, B, and mat::getMachineEpsilon().
|
static |
References A, mat::freeElements(), and mat::getMachineEpsilon().
|
static |
References A, B, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::sytr_upper_tr_only(), and mat::Matrix< Treal >::trmm_upper_tr_only().
|
static |
References A, B, and mat::getMachineEpsilon().
Referenced by mat::Matrix< Treal >::trsytriplemm(), and mat::Matrix< Treal, Telement >::trsytriplemm().
|
inline |
void mat::Matrix< Treal, Telement >::truncateAccordingToSparsityPattern | ( | Matrix< Treal, Matrix< Treal, Telement > > & | A | ) | const |
Truncate matrix A according to the sparsity pattern of the this matrix (frobNormMat).
References A, and mat::getMachineEpsilon().
void mat::Matrix< Treal, Telement >::writeToFile | ( | std::ofstream & | file | ) | const |
References mat::getMachineEpsilon().