Stores an array of values as a Table, i.e. a MatrixDense where rows and columns can be optionally decorated
|
| | Table (Id nrow=0, Id ncol=0, bool skip_title=false, bool skip_description=false) |
| |
| | Table (const Table &m) |
| |
| Table & | operator= (const Table &m) |
| |
| virtual | ~Table () |
| |
| DECLARE_TOLATEX String | getNFName () const override |
| | Cloneable interface.
|
| |
| void | reset (Id nrows, Id ncols) override |
| |
| String | toString (const AStringFormat *strfmt=nullptr) const override |
| |
| | getRange (Id icol) const |
| |
| | getAllRange () const |
| |
| void | plot (Id isimu) const |
| |
| void | setColumnNames (const VectorString &colNames) |
| |
| void | setColumnName (Id icol, const String &name) |
| |
| void | setRowNames (const VectorString &rowNames) |
| |
| void | setRowName (Id irow, const String &name) |
| |
| VectorString | getColumnNames () const |
| |
| VectorString | getRowNames () const |
| |
| String | getColumnName (Id icol) const |
| |
| String | getRowName (Id irow) const |
| |
| const String & | getTitle () const |
| |
| void | setTitle (const String &title) |
| |
| void | setSkipDescription (bool skipDescription) |
| |
| void | setSkipTitle (bool skipTitle) |
| |
| | MatrixDense (Id nrow=0, Id ncol=0) |
| |
| | MatrixDense (const MatrixDense &r) |
| |
| | MatrixDense (const AMatrix &r) |
| |
| MatrixDense & | operator= (const MatrixDense &r) |
| |
| virtual | ~MatrixDense () |
| |
| DECLARE_TOLATEX EIGEN_MAKE_ALIGNED_OPERATOR_NEW bool | isDense () const override |
| | Cloneable interface.
|
| |
| bool | isSparse () const override |
| |
| double | getValue (Id irow, Id icol) const override |
| |
| void | setValue (Id irow, Id icol, double value) override |
| |
| void | updValue (Id irow, Id icol, const EOperator &oper, double value) override |
| |
| | getColumn (Id icol) const override |
| |
| void | setColumn (Id icol, const 1 &tab) override |
| |
| void | setColumnToConstant (Id icol, double value) override |
| |
| | getRow (Id irow) const override |
| |
| void | setRow (Id irow, const 1 &tab) override |
| |
| void | setRowToConstant (Id irow, double value) override |
| |
| void | setDiagonal (const 1 &tab) override |
| |
| void | setDiagonalToConstant (double value=1.) override |
| |
| void | multiplyRow (const 1 &vec) override |
| |
| void | multiplyColumn (const 1 &vec) override |
| |
| void | divideRow (const 1 &vec) override |
| |
| void | divideColumn (const 1 &vec) override |
| |
| void | fill (double value) override |
| |
| bool | mustBeSymmetric () const override |
| |
| void | prodMatMatInPlace (const AMatrix *x, const AMatrix *y, bool transposeX=false, bool transposeY=false) override |
| |
| MatrixDense & | addCst (double a) |
| |
| MatrixDense & | prodCst (double a) |
| |
| template<bool transposeX, bool transposeY> |
| void | prodMatMatNoCheck (const MatrixDense &x, const MatrixDense &y) |
| |
| void | prodNormMatMatInPlace (const AMatrix *a, const AMatrix *m, bool transpose=false) override |
| |
| void | prodNormMatVecInPlace (const AMatrix *a, const 1 &vec, bool transpose=false) override |
| |
| void | prodNormMatInPlace (const AMatrix *a, bool transpose=false) override |
| |
| void | addMatNoCheck (const MatrixDense &y, const double cx=1., const double cy=1.) |
| |
| Id | invert2 (MatrixDense &res) const |
| |
| void | unsample (const AMatrix *A, const 1 &rowFetch, const 1 &colFetch, bool flagInvertRow=false, bool flagInvertCol=false) |
| | Set the values contained in 'A' into the current matrix.
|
| |
| MatrixDense | compressMatLC (const MatrixDense &matLC, bool transpose=false) |
| | Perform the compressing product, according to 'transpose'.
|
| |
| void | addRow (Id nrow_added=1) |
| |
| void | addColumn (Id ncolumn_added=1) |
| |
| double | sum () const |
| |
| constvect | getViewOnColumn (Id icol) const |
| |
| vect | getViewOnColumnModify (Id icol) |
| |
| MatrixDense & | operator+= (double a) |
| |
| MatrixDense & | operator-= (double a) |
| |
| MatrixDense | operator+ (double a) const |
| |
| MatrixDense | operator- (double a) const |
| |
| MatrixDense & | operator*= (double a) |
| |
| MatrixDense | operator* (double a) const |
| |
| MatrixDense & | operator/= (double a) |
| |
| MatrixDense | operator/ (double a) const |
| |
| Eigen::Map< const Eigen::MatrixXd, Eigen::Unaligned > | eigenMat () const |
| |
| Eigen::Map< Eigen::MatrixXd, Eigen::Unaligned > | eigenMat () |
| |
| | AMatrix (Id nrow=0, Id ncol=0) |
| |
| | AMatrix (const AMatrix &m) |
| |
| AMatrix & | operator= (const AMatrix &m) |
| |
| | AMatrix (AMatrix &&m)=default |
| |
| AMatrix & | operator= (AMatrix &&m)=default |
| |
| virtual | ~AMatrix () |
| |
| virtual bool | isSquare (bool printWhyNot=false) const |
| |
| virtual bool | isSymmetric (double eps=EPSILON10, bool printWhyNot=false) const |
| |
| virtual void | resetFromValue (Id nrows, Id ncols, double value) |
| | Reset the matrix to new dimensions and fill with a new value.
|
| |
| virtual void | resetFromArray (Id nrows, Id ncols, const double *tab, bool byCol=true) |
| | Reset the matrix from an array of double values.
|
| |
| virtual void | resetFromVD (Id nrows, Id ncols, const 1 &tab, bool byCol=true) |
| | Reset the matrix from a vector of double values.
|
| |
| virtual void | resetFromVVD (const 1 &tab, bool byCol=true) |
| | Reset the matrix from an array of double values.
|
| |
| virtual void | transposeInPlace () |
| |
| virtual AMatrix * | transpose () const |
| |
| double | prodVecMatVec (const 1 &x, const 1 &y) const |
| |
| virtual NF_Triplet | getMatrixToTriplet (Id shiftRow=0, Id shiftCol=0) const |
| |
| void | clear () |
| |
| void | resize (Id nrows, Id ncols) |
| | Resize the matrix to new dimensions (this method doesn't change the storage type)
|
| |
| bool | isValid (Id irow, Id icol, bool printWhyNot=false) const |
| |
| bool | isIdentity (bool printWhyNot=false) const |
| |
| void | addValue (Id irow, Id 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 |
| |
| Id | getNRows () const |
| |
| Id | getNCols () const |
| |
| Id | size () const |
| |
| | getValues (bool byCol=true) const |
| |
| const & | getDiagonal (Id shift=0) const |
| |
| bool | isColumnDefined (Id icol) const |
| |
| bool | isRowDefined (Id irow) const |
| |
| Id | getNColDefined () const |
| |
| Id | getNRowDefined () const |
| |
| | getColumnByRowRange (Id icol, Id rowFrom, Id rowTo) const |
| |
| bool | isNonNegative (bool verbose=false) const |
| |
| Id | invert () |
| |
| Id | solve (const 1 &b, 1 &x) const |
| |
| void | dumpElements (const String &title, Id ifrom, Id ito) const |
| |
| void | dumpStatistics (const String &title) const |
| |
| void | setIdentity (double value=1.) |
| |
| virtual void | fillRandom (double zeroPercent=0, Id seed=432432) |
| |
| void | setValues (const 1 &values, bool byCol=true) |
| |
| double | getMeanByColumn (Id icol) const |
| |
| double | getMinimum () const |
| |
| double | getMaximum () const |
| |
| double | getNormInf () const |
| |
| void | copyReduce (const AMatrix *x, const 1 &validRows, const 1 &validCols) |
| |
| void | copyElements (const AMatrix &m, double factor=1.) |
| |
| void | makePositiveColumn () |
| |
| void | dumpRange (const char *title) |
| |
| double | operator() (Id row, Id col) const |
| |
| double & | operator() (Id row, Id 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 (Id level) const final |
| |
| void | printConcreteClassName () const |
| |
| | ICloneable () |
| |
| virtual | ~ICloneable () |
| |
| virtual ICloneable * | clone () const =0 |
| |
| std::shared_ptr< ICloneable > | cloneShared () const |
| |
| std::unique_ptr< ICloneable > | cloneUnique () const |
| |
| | ASerializable () |
| |
| | ASerializable (const ASerializable &r)=default |
| |
| ASerializable & | operator= (const ASerializable &r)=default |
| |
| | ASerializable (ASerializable &&r) noexcept=default |
| |
| ASerializable & | operator= (ASerializable &&r) noexcept=default |
| |
| virtual | ~ASerializable ()=default |
| |
| bool | dumpToNF (const String &NFFilename, const EFormatNF &format=EFormatNF::fromKey("DEFAULT")) const |
| | Dump the contents of an object into an Output File using a given Output NF Format.
|
| |
| void | setDefaultFormatNF (const EFormatNF &format) |
| |
|
| static Table * | create (Id nrow=0, Id ncol=0) |
| |
| static Table * | createFromNames (const VectorString &rownames, const VectorString &colnames) |
| |
| static Table * | createFromNF (const String &NFFilename, bool verbose=true) |
| |
| static Table * | createFromTable (const Table &table) |
| |
| static Table * | createFillRandom (Id nrow, Id ncol, const VectorString &rownames=VectorString(), const VectorString &colnames=VectorString()) |
| |
| static void | _addGeneral (MatrixDense &res, const MatrixDense &other, double cst) |
| |
| static void | _addGeneral (MatrixDense &res, const MatrixDense &other1, const MatrixDense &other2) |
| | Add matrices 'other1' and 'other2' and store the result in 'res' This code is alais-safe, as it does not modify 'other1' and 'other2' and only writes to 'res'.
|
| |
| static void | _prodGeneral (MatrixDense &res, const MatrixDense &other, double cst) |
| |
| static void | _prodGeneral (MatrixDense &res, const MatrixDense &other1, const MatrixDense &other2) |
| | Make the elementwise product of matrices 'other1' and 'other2' and store the result in 'res' This code is alais-safe, as it does not modify 'other1' and 'other2' and only writes to 'res'.
|
| |
| static void | _productGeneral (MatrixDense &res, const MatrixDense &other1, const MatrixDense &other2, bool transpose1=false, bool transpose2=false) |
| |
| static void | _prodVecAddGeneral (1 &res, const MatrixDense &other, const 1 &vec, bool transpose=false, bool flagInvert=false) |
| | Add the Product of a matrix by a vector.
|
| |
| static void | _prodVecAddGeneral (vect &res, const MatrixDense &other, const constvect &vec, bool transpose=false, bool flagInvert=false) |
| | Add the Product of a matrix by a vector.
|
| |
| static void | _prodnormGeneral (MatrixDense &res, const MatrixDense &a, const MatrixDense &m=MatrixDense(), bool transpose=false) |
| |
| static void | _prodnormGeneral (MatrixDense &res, const MatrixDense &a, const 1 &vec, bool transpose=false) |
| |
| static bool | _areIdenticalGeneral (const MatrixDense &a, const MatrixDense &b, bool verbose=false) |
| |
| static MatrixDense * | create (const MatrixDense *mat) |
| |
| static MatrixDense * | create (Id nrow, Id ncol) |
| |
| static double | traceProd (const MatrixDense &a, MatrixDense &b) |
| |
| static MatrixDense * | createFromVVD (const 1 &X) |
| |
| static MatrixDense * | createFromVD (const 1 &X, Id nrow, Id ncol, bool byCol=false, bool invertColumnOrder=false) |
| |
| static MatrixDense * | createFillRandom (Id nrow, Id ncol, Id seed=13242) |
| |
| static MatrixDense * | glue (const AMatrix *A1, const AMatrix *A2, bool flagShiftRow, bool flagShiftCol) |
| |
| static bool | sample (MatrixDense &res, const AMatrix &A, const 1 &rowKeep=1(), const 1 &colKeep=1(), bool flagInvertRow=false, bool flagInvertCol=false) |
| | Create an output Rectangular Matrix by selecting some rows and columns of the Input matrix 'A'.
|
| |
| static void | sum (const MatrixDense *mat1, const MatrixDense *mat2, MatrixDense *mat3) |
| |
| template<class MA , class MB , class MC > |
| static void | prodMatMatInPlace (MA &A, const MB &B, const MC &C, bool transposeB=false, bool transposeC=false) |
| |
| template<typename T > |
| static T | add (const T &other, double cst) |
| | Return 'other' + 'cst'.
|
| |
| template<typename T > |
| static void | addInPlace (T &res, const T &other, double cst) |
| | Operate 'res' = 'other' + 'cst'.
|
| |
| template<typename T > |
| static T | add (const T &other1, const T &other2) |
| | Return 'other1' + 'other2'.
|
| |
| template<typename T > |
| static void | addInPlace (T &res, const T &other1, const T &other2) |
| | Operate: 'res' = 'other1' + 'other2'.
|
| |
| template<typename T > |
| static T | product (const T &other, double cst) |
| | Return 'other' * 'cst'.
|
| |
| template<typename T > |
| static void | productInPlace (T &res, const T &other, double cst) |
| | Operate: 'res' = 'other' * 'cst'.
|
| |
| template<typename T > |
| static T | prodHadamard (const T &other1, const T &other2) |
| | Return: 'other1' * 'other2' (where '*' designates the element-wise product)
|
| |
| template<typename T > |
| static void | prodHadamardInPlace (T &res, const T &other1, const T &other2) |
| | Operate: 'res' = 'other1' * 'other2' (where '*' designates the element-wise prodtc)
|
| |
| template<typename T > |
| static T | linearCombination (double addition, double val1, const T &other1, double val2=0., const T &other2=T(), double val3=0., const T &other3=T()) |
| | Return: 'val1' * 'other1' + 'val2' * 'other2' + 'val3' * 'other3' + 'addition'.
|
| |
| template<typename T > |
| static void | linearCombinationInPlace (T &res, double addition, double val1, const T &other1, double val2=0., const T &other2=T(), double val3=0., const T &other3=T()) |
| | Operate: 'res' = 'val1' * 'other1' + 'val2' * 'other2' + 'val3' * 'other3' + 'addition'.
|
| |
| template<typename T > |
| static T | product (const T &other1, const T &other2, bool transpose1=false, bool transpose2=false) |
| | Return: 'other1' * 'other2'.
|
| |
| template<typename T > |
| static void | productInPlace (T &res, const T &other1, const T &other2, bool transpose1=false, bool transpose2=false) |
| | Operate: 'res' = 'other1' * 'other2'.
|
| |
| template<typename T > |
| static void | productInPlace (T &res, const T &other2, bool transpose2=false) |
| | Operate: 'res' = 'res' * 'other1'.
|
| |
| template<typename T > |
| static | product (const T &other, const 1 &vec, bool transpose=false, bool flagInit=true) |
| | Return: 'other' * 'vec'.
|
| |
| template<typename T > |
| static void | productInPlace (1 &res, const T &other, const 1 &vec, bool transpose=false, bool flagInit=true) |
| | Operate: 'res' = 'other' * 'vec'.
|
| |
| template<typename T > |
| static void | productInPlace (vect res, const T &other, const constvect vec, bool transpose=false, bool flagInit=true) |
| | Operate: 'res' = 'other' * 'vec'.
|
| |
| template<typename T > |
| static | product (const 1 &vec, const T &other, bool transpose=false, bool flagInit=true) |
| | Return: 'vec' * 'other'.
|
| |
| template<typename T > |
| static void | productInPlace (1 &res, const 1 &vec, const T &other, bool transpose=false, bool flagInit=true) |
| | Operate: 'res' = 'vec' * 'other'.
|
| |
| template<typename T > |
| static void | productInPlace (vect res, const constvect vec, const T &other, bool transpose=false, bool flagInit=true) |
| | Operate: 'res' = 'vec' * 'other'.
|
| |
| template<typename T > |
| static T | prodnorm (const T &a, const T &m=T(), bool transpose=false) |
| | Return: 'a_t' * 'm' * 'a' or 'a' * 'm' * 'a_t' (where 'a_t' is the transpose of 'a')
|
| |
| template<typename T > |
| static void | prodnormInPlace (T &res, const T &a, const T &m=T(), bool transpose=false) |
| | Operate: 'res' = 'a_t' * 'm' * 'a' or 'a' * 'm' * 'a_t' (where 'a_t' is the transpose of 'a')
|
| |
| template<typename T > |
| static T | prodnorm (const T &a, const 1 &vec, bool transpose=false) |
| | Return: 'a_t' * 'vec' * 'a' or 'a' * 'vec' * 'a_t' (where 'a_t' is the transpose of 'a')
|
| |
| template<typename T > |
| static void | prodnormInPlace (T &res, const T &a, const 1 &vec, bool transpose=false) |
| | Operate: 'res' = 'a_t' * 'vec' * 'a' or 'a' * 'vec' * 'a_t' (where 'a_t' is the transpose of 'a')
|
| |
| template<typename T > |
| static bool | areIdentical (const T &a, const T &b, bool verbose=false) |
| | Check if two matrices are exactly identical.
|
| |
| static String | buildFileName (Id status, const String &filename, bool ensureDirExist=false) |
| |
| static String | getFileIdentity (const String &filename, bool verbose=false) |
| |
| static void | setPrefixName (const String &prefixName) |
| |
| static void | unsetPrefixName () |
| |
| static const String & | getPrefixName () |
| |