ergo
|
#include <Matrix.h>
Public Types | |
typedef Vector< Treal, Treal > | 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 > &values, 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 > &values) const |
void | syGetAllValues (std::vector< int > &rowind, std::vector< int > &colind, std::vector< Treal > &values) const |
Matrix< Treal > & | operator= (const Matrix< Treal > &mat) |
void | clear () |
Set matrix to zero and delete all arrays. More... | |
~Matrix () | |
void | writeToFile (std::ofstream &file) const |
void | readFromFile (std::ifstream &file) |
void | random () |
void | syRandom () |
void | randomZeroStructure (Treal probabilityBeingZero) |
void | syRandomZeroStructure (Treal probabilityBeingZero) |
template<typename TRule > | |
void | setElementsByRule (TRule &rule) |
template<typename TRule > | |
void | sySetElementsByRule (TRule &rule) |
void | addIdentity (Treal alpha) |
void | symToNosym () |
void | nosymToSym () |
Matrix< Treal > & | operator= (int const k) |
Matrix< Treal > & | 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 > const &A) |
void | getFrobSqLowestLevel (std::vector< Treal > &frobsq) const |
void | frobThreshLowestLevel (Treal const threshold, Matrix< Treal > *ErrorMatrix) |
void | getFrobSqElementLevel (std::vector< Treal > &frobsq) const |
void | frobThreshElementLevel (Treal const threshold, Matrix< Treal > *ErrorMatrix) |
void | assignFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal > > const &A) |
void | syAssignFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal > > const &A) |
void | assignDiffFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal > > const &A, Matrix< Treal, Matrix< Treal > > const &B) |
void | syAssignDiffFrobNormsLowestLevel (Matrix< Treal, Matrix< Treal > > const &A, Matrix< Treal, Matrix< Treal > > const &B) |
void | truncateAccordingToSparsityPattern (Matrix< Treal, Matrix< Treal > > &A) const |
Treal | frob_thresh (Treal const threshold, Matrix< Treal > *ErrorMatrix=0) |
Treal | frob_squared_thresh (Treal const threshold, Matrix< Treal > *ErrorMatrix=0) |
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. More... | |
size_t | sy_nnz () const |
Returns number of nonzeros in matrix including lower triangle elements. More... | |
size_t | nvalues () const |
Returns number of stored values in matrix. More... | |
size_t | sy_nvalues () const |
Returns number of stored values in matrix. More... | |
template<class Top > | |
Treal | syAccumulateWith (Top &op) |
template<class Top > | |
Treal | geAccumulateWith (Top &op) |
Treal | maxAbsValue () const |
![]() | |
bool | operator== (int k) const |
const int & | nScalarsRows () const |
const int & | nScalarsCols () const |
const int & | nrows () const |
const int & | ncols () const |
Treal & | operator ()(int row |
const Treal & | operator ()(int row |
assert (row >=0) | |
assert (col >=0) | |
assert (row< nrows()) | |
assert (col< ncols()) | |
assert (row >=0) | |
assert (col >=0) | |
assert (row< nrows()) | |
assert (col< ncols()) | |
Treal & | operator[] (int index) |
Treal 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. More... | |
Static Public Member Functions | |
static void | transpose (Matrix< Treal > const &A, Matrix< Treal > &AT) |
static void | gemm (const bool tA, const bool tB, const Treal alpha, const Matrix< Treal > &A, const Matrix< Treal > &B, const Treal beta, Matrix< Treal > &C) |
static void | symm (const char side, const char uplo, const Treal alpha, const Matrix< Treal > &A, const Matrix< Treal > &B, const Treal beta, Matrix< Treal > &C) |
static void | syrk (const char uplo, const bool tA, const Treal alpha, const Matrix< Treal > &A, const Treal beta, Matrix< Treal > &C) |
static void | sysq (const char uplo, const Treal alpha, const Matrix< Treal > &A, const Treal beta, Matrix< Treal > &C) |
static void | ssmm (const Treal alpha, const Matrix< Treal > &A, const Matrix< Treal > &B, const Treal beta, Matrix< Treal > &C) |
static void | ssmm_upper_tr_only (const Treal alpha, const Matrix< Treal > &A, const Matrix< Treal > &B, const Treal beta, Matrix< Treal > &C) |
static void | trmm (const char side, const char uplo, const bool tA, const Treal alpha, const Matrix< Treal > &A, Matrix< Treal > &B) |
static Treal | frobDiff (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | frobSquaredDiff (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | syFrobDiff (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | syFrobSquaredDiff (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | trace_ab (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | trace_aTb (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static Treal | sy_trace_ab (const Matrix< Treal > &A, const Matrix< Treal > &B) |
static void | add (const Treal alpha, const Matrix< Treal > &A, Matrix< Treal > &B) |
static void | gemm_upper_tr_only (const bool tA, const bool tB, const Treal alpha, const Matrix< Treal > &A, const Matrix< Treal > &B, const Treal beta, Matrix< Treal > &C) |
static void | sytr_upper_tr_only (char const side, const Treal alpha, Matrix< Treal > &A, const Matrix< Treal > &Z) |
static void | trmm_upper_tr_only (const char side, const char uplo, const bool tA, const Treal alpha, const Matrix< Treal > &A, Matrix< Treal > &B) |
static void | trsytriplemm (char const side, const Matrix< Treal > &Z, Matrix< Treal > &A) |
static void | inch (const Matrix< Treal > &A, Matrix< Treal > &Z, const Treal threshold=0, const side looking=left, const inchversion version=unstable) |
static void | syInch (const Matrix< Treal > &A, Matrix< Treal > &Z, const Treal threshold=0, const side looking=left, const inchversion version=unstable) |
static unsigned int | level () |
Static Private Attributes | |
static const Treal | ZERO = 0 |
static const Treal | ONE = 1 |
Friends | |
class | Vector< Treal, Treal > |
Additional Inherited Members | |
![]() | |
Treal int | col |
return | elements [row+col *nrows()] |
const Treal int col | const |
![]() | |
MatrixHierarchicBase () | |
MatrixHierarchicBase (SizesAndBlocks const &rowsInp, SizesAndBlocks const &colsInp) | |
MatrixHierarchicBase (const MatrixHierarchicBase< Treal, Treal > &mat) | |
MatrixHierarchicBase< Treal, Treal > & | operator= (const MatrixHierarchicBase< Treal, Treal > &mat) |
virtual | ~MatrixHierarchicBase () |
![]() | |
static void | swap (MatrixHierarchicBase< Treal, Treal > &A, MatrixHierarchicBase< Treal, Treal > &B) |
![]() | |
Treal * | elements |
SizesAndBlocks | rows |
SizesAndBlocks | cols |
typedef Vector<Treal, Treal> mat::Matrix< Treal >::VectorType |
|
inline |
|
inline |
References mat::Matrix< Treal, Telement >::clear().
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), and B.
void mat::Matrix< Treal >::add_abs_col_sums | ( | Treal * | abscolsums | ) | const |
void mat::Matrix< Treal >::addIdentity | ( | Treal | alpha | ) |
void mat::Matrix< Treal >::addValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values | ||
) |
void mat::Matrix< Treal >::addValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values, | ||
std::vector< int > const & | indexes | ||
) |
|
inline |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::elements, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
Referenced by frobThreshElementLevel(), gemm(), symm(), and syrk().
void mat::Matrix< Treal >::assign | ( | Treal const | alpha, |
Matrix< Treal > const & | A | ||
) |
References A, mat::Matrix< Treal, Telement >::add(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Telement >::cols, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::resetCols(), mat::MatrixHierarchicBase< Treal, Treal >::resetRows(), and mat::MatrixHierarchicBase< Treal, Telement >::rows.
|
inline |
References A, mat::Matrix< Treal, Telement >::add(), mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::Matrix< Treal, Telement >::assignFrobNormsLowestLevel(), B, mat::Matrix< Treal, Telement >::clear(), mat::MatrixHierarchicBase< Treal, Treal >::elements, frob(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
|
inline |
References A, mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::Matrix< Treal, Telement >::clear(), mat::MatrixHierarchicBase< Treal, Treal >::elements, mat::Matrix< Treal, Telement >::frob(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
void mat::Matrix< Treal >::assignFromFull | ( | std::vector< Treal > const & | fullMat | ) |
References mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getNTotalScalars(), mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
void mat::Matrix< Treal >::assignFromSparse | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values | ||
) |
void mat::Matrix< Treal >::assignFromSparse | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values, | ||
std::vector< int > const & | indexes | ||
) |
References mat::Matrix< Treal, Telement >::allocate(), mat::Matrix< Treal, Telement >::clear(), mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::MatrixHierarchicBase< Treal, Treal >::elements, mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::nElements(), mat::MatrixHierarchicBase< Treal, Treal >::rows, and mat::SizesAndBlocks::whichBlock().
void mat::Matrix< Treal >::clear |
Set matrix to zero and delete all arrays.
References mat::MatrixHierarchicBase< Treal, Treal >::elements, and mat::freeElements().
Referenced by frobThreshElementLevel().
|
inline |
References mat::Matrix< Treal, Telement >::frobSquared(), and template_blas_sqrt().
Referenced by assignDiffFrobNormsLowestLevel(), and syAssignDiffFrobNormsLowestLevel().
Treal mat::Matrix< Treal >::frob_squared_thresh | ( | Treal const | threshold, |
Matrix< Treal > * | ErrorMatrix = 0 |
||
) |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::Matrix< Treal, Telement >::frobSquared(), mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), mat::MatrixHierarchicBase< Treal, Treal >::rows, and mat::MatrixHierarchicBase< Treal, Treal >::swap().
|
inline |
|
inlinestatic |
References A, B, mat::Matrix< Treal, Telement >::frobSquaredDiff(), and template_blas_sqrt().
Treal mat::Matrix< Treal >::frobSquared |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::elements, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
Referenced by frobThreshLowestLevel().
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), and B.
void mat::Matrix< Treal >::frobThreshElementLevel | ( | Treal const | threshold, |
Matrix< Treal > * | ErrorMatrix | ||
) |
References mat::Matrix< Treal, Telement >::allocate(), allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::Matrix< Treal, Telement >::clear(), clear(), mat::MatrixHierarchicBase< Treal, Treal >::elements, mat::MatrixHierarchicBase< Treal, Telement >::elements, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
void mat::Matrix< Treal >::frobThreshLowestLevel | ( | Treal const | threshold, |
Matrix< Treal > * | ErrorMatrix | ||
) |
void mat::Matrix< Treal >::fullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getNTotalScalars(), mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsCols(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsRows(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
|
inline |
References mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
|
static |
References A, allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), B, mat::MatrixHierarchicBase< Treal, Telement >::elements, mat::gemm(), 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().
|
static |
References A, B, mat::Matrix< Treal, Telement >::gemm(), and nosymToSym().
void mat::Matrix< Treal >::gershgorin | ( | Treal & | lmin, |
Treal & | lmax | ||
) | const |
References mat::Matrix< Treal, Telement >::add_abs_col_sums(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::Matrix< Treal, Telement >::get_diagonal(), mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsCols(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsRows(), and template_blas_fabs().
Referenced by sy_gershgorin().
void mat::Matrix< Treal >::get_diagonal | ( | Treal * | diag | ) | const |
void mat::Matrix< Treal >::getAllValues | ( | std::vector< int > & | rowind, |
std::vector< int > & | colind, | ||
std::vector< Treal > & | values | ||
) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
void mat::Matrix< Treal >::getFrobSqElementLevel | ( | std::vector< Treal > & | frobsq | ) | const |
void mat::Matrix< Treal >::getFrobSqLowestLevel | ( | std::vector< Treal > & | frobsq | ) | const |
void mat::Matrix< Treal >::getValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > & | values | ||
) | const |
void mat::Matrix< Treal >::getValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > & | values, | ||
std::vector< int > const & | indexes | ||
) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::rows, and mat::SizesAndBlocks::whichBlock().
|
inlinestatic |
|
inline |
|
inline |
|
inline |
Returns number of nonzeros in matrix.
References mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
void mat::Matrix< Treal >::nosymToSym |
|
inline |
Returns number of stored values in matrix.
Returns same number as nnz()
References mat::Matrix< Treal, Telement >::nnz().
Matrix< Treal > & mat::Matrix< Treal >::operator*= | ( | const Treal | alpha | ) |
|
inline |
Matrix< Treal > & mat::Matrix< Treal >::operator= | ( | int const | k | ) |
void mat::Matrix< Treal >::random |
void mat::Matrix< Treal >::randomZeroStructure | ( | Treal | probabilityBeingZero | ) |
void mat::Matrix< Treal >::readFromFile | ( | std::ifstream & | file | ) |
void mat::Matrix< Treal >::setElementsByRule | ( | TRule & | rule | ) |
References mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), and mat::MatrixHierarchicBase< Treal, Treal >::nrows().
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), B, mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), mat::Matrix< Treal, Telement >::symm(), and symToNosym().
|
static |
References A, B, nosymToSym(), and mat::Matrix< Treal, Telement >::ssmm().
|
inline |
References gershgorin(), and symToNosym().
|
inline |
Returns number of nonzeros in matrix including lower triangle elements.
References mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), and mat::MatrixHierarchicBase< Treal, Treal >::nElements().
|
inline |
Returns number of stored values in matrix.
Lower triangle is not included. Different from sy_nnz().
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsCols(), and mat::MatrixHierarchicBase< Treal, Treal >::nScalarsRows().
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), and B.
|
inline |
References mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
void mat::Matrix< Treal >::syAddValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values | ||
) |
|
inline |
References A, mat::Matrix< Treal, Telement >::add(), mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), B, mat::Matrix< Treal, Telement >::clear(), mat::MatrixHierarchicBase< Treal, Treal >::col, frob(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nElements(), mat::Matrix< Treal, Telement >::syAssignFrobNormsLowestLevel(), and syFrob().
|
inline |
References A, mat::Matrix< Treal, Telement >::allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::Matrix< Treal, Telement >::clear(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nElements(), and mat::MatrixHierarchicBase< Treal, Treal >::nrows().
void mat::Matrix< Treal >::syAssignFromSparse | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > const & | values | ||
) |
|
inline |
References mat::Matrix< Treal, Telement >::syFrobSquared(), and template_blas_sqrt().
Referenced by syAssignDiffFrobNormsLowestLevel().
|
inlinestatic |
References A, B, mat::Matrix< Treal, Telement >::syFrobSquaredDiff(), and template_blas_sqrt().
Treal mat::Matrix< Treal >::syFrobSquared |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::is_empty(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), and mat::MatrixHierarchicBase< Treal, Treal >::nrows().
|
static |
void mat::Matrix< Treal >::syFullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getNTotalScalars(), mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsCols(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
void mat::Matrix< Treal >::syGetAllValues | ( | std::vector< int > & | rowind, |
std::vector< int > & | colind, | ||
std::vector< Treal > & | values | ||
) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
void mat::Matrix< Treal >::syGetValues | ( | std::vector< int > const & | rowind, |
std::vector< int > const & | colind, | ||
std::vector< Treal > & | values | ||
) | const |
|
inlinestatic |
References A.
|
static |
References A, allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), B, mat::MatrixHierarchicBase< Treal, Telement >::elements, 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(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), and mat::symm().
void mat::Matrix< Treal >::symToNosym |
void mat::Matrix< Treal >::syRandom |
void mat::Matrix< Treal >::syRandomZeroStructure | ( | Treal | probabilityBeingZero | ) |
|
static |
References A, allocate(), mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Telement >::elements, 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(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), and mat::syrk().
void mat::Matrix< Treal >::sySetElementsByRule | ( | TRule & | rule | ) |
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), mat::MatrixHierarchicBase< Treal, Telement >::is_empty(), mat::MatrixHierarchicBase< Treal, Telement >::resetCols(), mat::MatrixHierarchicBase< Treal, Telement >::resetRows(), symToNosym(), and mat::Matrix< Treal, Telement >::syrk().
|
static |
References A, and mat::Matrix< Treal, Telement >::trmm().
void mat::Matrix< Treal >::syUpTriFullMatrix | ( | std::vector< Treal > & | fullMat | ) | const |
References mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Treal >::cols, mat::SizesAndBlocks::getNTotalScalars(), mat::SizesAndBlocks::getOffset(), mat::MatrixHierarchicBase< Treal, Treal >::is_zero(), mat::MatrixHierarchicBase< Treal, Treal >::ncols(), mat::MatrixHierarchicBase< Treal, Treal >::nrows(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsCols(), mat::MatrixHierarchicBase< Treal, Treal >::nScalarsRows(), and mat::MatrixHierarchicBase< Treal, Treal >::rows.
Treal mat::Matrix< Treal >::trace |
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), and B.
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), and B.
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::col, mat::MatrixHierarchicBase< Treal, Telement >::cols, mat::MatrixHierarchicBase< Treal, Telement >::elements, mat::freeElements(), mat::MatrixHierarchicBase< Treal, Telement >::is_zero(), mat::MatrixHierarchicBase< Treal, Telement >::ncols(), mat::MatrixHierarchicBase< Treal, Telement >::nElements(), mat::MatrixHierarchicBase< Treal, Telement >::nrows(), and mat::MatrixHierarchicBase< Treal, Telement >::rows.
|
static |
References A, mat::MatrixHierarchicBase< Treal, Treal >::assert(), B, and mat::trmm().
|
static |
|
inline |
void mat::Matrix< Treal >::writeToFile | ( | std::ofstream & | file | ) | const |
|
friend |
|
staticprivate |
|
staticprivate |