|
| ProjMatrix () |
|
| ProjMatrix (const Db *db, const AMesh *a_mesh, int rankZ=-1, bool verbose=false) |
|
| ProjMatrix (const ProjMatrix &m) |
|
| ProjMatrix (const MatrixSparse *aproj) |
|
ProjMatrix & | operator= (const ProjMatrix &m) |
|
virtual | ~ProjMatrix () |
|
virtual String | toString (const AStringFormat *strfmt=nullptr) const override |
| Cloneable interface. More...
|
|
int | point2mesh (const VectorDouble &inv, VectorDouble &outv) const override |
| Interface for IProjMatrix. More...
|
|
int | mesh2point (const VectorDouble &inv, VectorDouble &outv) const override |
|
int | getApexNumber () const override |
|
int | getPointNumber () const override |
|
void | resetFromMeshAndDb (const Db *db, const AMesh *a_mesh, int rankZ=-1, bool verbose=false) |
|
| IProjMatrix () |
|
virtual | ~IProjMatrix () |
|
| MatrixSparse (int nrow=0, int ncol=0, int opt_eigen=-1) |
|
| MatrixSparse (const cs *A, int opt_eigen=-1) |
|
| MatrixSparse (const MatrixSparse &m) |
|
MatrixSparse & | operator= (const MatrixSparse &m) |
|
virtual | ~MatrixSparse () |
|
bool | isSparse () const |
| Cloneable interface. More...
|
|
virtual bool | isDense () const |
|
virtual void | setColumn (int icol, const VectorDouble &tab) override |
|
virtual void | setRow (int irow, const VectorDouble &tab) override |
|
virtual void | setDiagonal (const VectorDouble &tab) override |
|
virtual void | setDiagonalToConstant (double value=1.) override |
|
virtual MatrixSparse * | transpose () const override |
|
virtual void | addScalar (double v) override |
|
virtual void | addScalarDiag (double v) override |
|
virtual void | prodScalar (double v) override |
|
virtual void | fill (double value) override |
|
virtual void | multiplyRow (const VectorDouble &vec) override |
|
virtual void | multiplyColumn (const VectorDouble &vec) override |
|
virtual void | divideRow (const VectorDouble &vec) override |
|
virtual void | divideColumn (const VectorDouble &vec) override |
|
virtual VectorDouble | prodVecMat (const VectorDouble &x, bool transpose=false) const override |
|
virtual VectorDouble | prodMatVec (const VectorDouble &x, bool transpose=false) const override |
|
virtual void | prodMatMatInPlace (const AMatrix *x, const AMatrix *y, bool transposeX=false, bool transposeY=false) override |
|
virtual NF_Triplet | getMatrixToTriplet (int shiftRow=0, int shiftCol=0) const override |
|
void | init (int nrows, int ncols) |
|
virtual void | addMatInPlace (const MatrixSparse &y, double cx=1., double cy=1.) |
| The next functions use specific definition of matrix (to avoid dynamic_cast) rather than manipulating AMatrix. They are no more generic of AMatrix. More...
|
|
virtual void | prodNormMatMatInPlace (const MatrixSparse &a, const MatrixSparse &m, bool transpose=false) |
|
virtual void | prodNormMatInPlace (const MatrixSparse &a, const VectorDouble &vec=VectorDouble(), bool transpose=false) |
|
const cs * | getCS () const |
|
void | setCS (cs *cs) |
|
void | freeCS () |
|
cs * | getCSUnprotected () const |
|
void | reset (int nrows, int ncols) |
|
void | reset (int nrows, int ncols, double value) |
|
void | reset (int nrows, int ncols, const double *tab, bool byCol=true) |
|
void | reset (int nrows, int ncols, const VectorDouble &tab, bool byCol=true) |
|
void | reset (const VectorVectorDouble &tab, bool byCol=true) |
|
void | resetFromTriplet (const NF_Triplet &NF_T) |
|
void | dumpElements (const String &title, int ifrom, int ito) const |
|
void | fillRandom (int seed=432432, double zeroPercent=0.1) |
|
int | computeCholesky () |
|
int | solveCholesky (const VectorDouble &b, VectorDouble &x) |
|
int | simulateCholesky (const VectorDouble &b, VectorDouble &x) |
|
double | computeCholeskyLogDeterminant () |
|
void | addValue (int row, int col, double value) |
|
double | getValue (int row, int col) const |
|
double | L1Norm () const |
|
void | getStats (int *nrows, int *ncols, int *count, double *percent) const |
|
int | scaleByDiag () |
|
int | addVecInPlace (const VectorDouble &x, VectorDouble &y) |
|
void | setConstant (double value) |
|
VectorDouble | extractDiag (int oper_choice=1) const |
|
void | prodNormDiagVecInPlace (const VectorDouble &vec, int oper=1) |
|
const Eigen::SparseMatrix< double > & | getEigenMatrix () const |
|
void | setEigenMatrix (const Eigen::SparseMatrix< double > &eigenMatrix) |
|
MatrixSparse * | extractSubmatrixByRanks (const VectorInt &rank_rows, const VectorInt &rank_cols) |
|
MatrixSparse * | extractSubmatrixByColor (const VectorInt &colors, int ref_color, bool row_ok, bool col_ok) |
|
VectorInt | colorCoding () |
|
int | getNonZeros () const |
|
| AMatrix (int nrow=0, int ncol=0, int opt_eigen=-1) |
|
| AMatrix (const AMatrix &m) |
|
AMatrix & | operator= (const AMatrix &m) |
|
virtual | ~AMatrix () |
|
void | init (int nrows, int ncols, int opt_eigen=-1) |
|
void | reset (int nrows, int ncols, double value=0., int opt_eigen=-1) |
|
void | resetFromArray (int nrows, int ncols, const double *tab, bool byCol=true, int opt_eigen=-1) |
|
void | resetFromVD (int nrows, int ncols, const VectorDouble &tab, bool byCol=true, int opt_eigen=-1) |
|
void | resetFromVVD (const VectorVectorDouble &tab, bool byCol=true, int opt_eigen=-1) |
|
virtual bool | isSquare (bool printWhyNot=false) const |
|
virtual bool | isValid (int irow, int icol, bool printWhyNot=false) const |
|
virtual bool | isIdentity (bool printWhyNot=false) const |
|
virtual bool | isSymmetric (bool printWhyNot=false, double eps=EPSILON10) const |
|
virtual bool | isDiagonal (bool printWhyNot=false) const |
|
virtual bool | isDiagCst (bool printWhyNot=false) const |
|
virtual bool | mustBeSymmetric () const |
|
virtual bool | mustBeDiagonal () const |
|
virtual bool | mustBeDiagCst () const |
|
virtual void | transposeInPlace () |
|
virtual VectorDouble | getRow (int irow) const |
|
virtual VectorDouble | getColumn (int icol) const |
|
void | addMatInPlace (const AMatrix &y, double cx=1., double cy=1.) |
|
void | prodMatInPlace (const AMatrix *matY, bool transposeY=false) |
|
void | prodNormMatMatInPlace (const AMatrix &a, const AMatrix &m, bool transpose=false) |
|
void | prodNormMatInPlace (const AMatrix &a, const VectorDouble &vec=VectorDouble(), bool transpose=false) |
|
void | resize (int nrows, int ncols) |
|
double | getValue (int irow, int icol) const |
|
void | setValue (int irow, int icol, double value) |
|
void | updValue (int irow, int icol, const EOperator &oper, double value) |
|
void | setValue_ (int irow, int icol, double value) |
|
void | updValue_ (int irow, int icol, const EOperator &oper, double value) |
|
double | getValue_ (int irow, int icol) const |
|
void | addValue (int irow, int icol, double value) |
|
bool | isSame (const AMatrix &m, double eps=EPSILON4, bool printWhyNot=false) |
|
bool | isSameSize (const AMatrix &m) const |
|
bool | empty () const |
|
double | compare (const AMatrix &mat) const |
|
int | getNRows () const |
|
int | getNCols () const |
|
int | size () const |
|
VectorDouble | getValues (bool byCol=true) const |
|
VectorDouble | getDiagonal (int shift=0) const |
|
bool | isColumnDefined (int icol) const |
|
bool | isRowDefined (int irow) const |
|
int | getNumberColumnDefined () const |
|
int | getNumberRowDefined () const |
|
bool | isFlagEigen () const |
|
bool | isNonNegative (bool verbose=false) |
|
void | prodMatVecInPlace (const VectorDouble &x, VectorDouble &y, bool transpose=false) const |
|
void | prodMatVecInPlacePtr (const double *x, double *y, bool transpose=false) const |
|
void | prodVecMatInPlace (const VectorDouble &x, VectorDouble &y, bool transpose=false) const |
|
void | prodVecMatInPlacePtr (const double *x, double *y, bool transpose=false) const |
|
double | quadraticMatrix (const VectorDouble &x, const VectorDouble &y) |
|
int | invert () |
|
int | solve (const VectorDouble &b, VectorDouble &x) const |
|
void | dumpElements (const String &title, int ifrom, int ito) const |
|
void | setIdentity (double value=1.) |
|
void | fillRandom (int seed=432432, double zeroPercent=0.1) |
|
void | setValues (const VectorDouble &values, bool byCol=true) |
|
double | getMeanByColumn (int icol) const |
|
double | getMinimum () const |
|
double | getMaximum () const |
|
double | getNormInf () const |
|
void | copyReduce (const AMatrix *x, const VectorInt &activeRows, const VectorInt &activeCols) |
|
void | copyElements (const AMatrix &m, double factor=1.) |
|
void | setFlagCheckAddress (bool flagCheckAddress) |
|
void | makePositiveColumn () |
|
void | linearCombination (double val1, const AMatrix *mat1, double val2=1., const AMatrix *mat2=nullptr) |
|
double | operator() (int row, int col) const |
|
double & | operator() (int row, int col) |
|
| AStringable () |
|
| AStringable (const AStringable &r) |
|
AStringable & | operator= (const AStringable &r) |
|
virtual | ~AStringable () |
|
virtual void | display (const AStringFormat *strfmt=nullptr) const final |
|
virtual void | display (int level) const final |
|
| ICloneable () |
|
virtual | ~ICloneable () |
|
virtual ICloneable * | clone () const =0 |
|