DMRITool
v0.1.1-139-g860d86b4
Diffusion MRI Tool
|
#include <linalg.h>
Public Member Functions | |
void | add (const Matrix< T > &mat, const T alpha=1.0) |
void | add (const T alpha) |
virtual void | add_rawCol (const int i, T *DtXi, const T a) const |
void | addDiag (const Vector< T > &diag) |
void | addDiag (const T diag) |
void | addRow (const int i, const Vector< T > &row, const T a=1.0) |
void | addToCols (const Vector< T > &diag) |
void | addVecToCols (const Vector< T > &diag, const T a=1.0) |
T | asum () const |
void | blockThrshold (const T nu, const int sizeGroup) |
void | center () |
void | center (Vector< T > ¢ers) |
void | center_rows () |
void | clean () |
void | clear () |
void | conjugateGradient (const Vector< T > &b, Vector< T > &x, const T tol=1e-4, const int=4) const |
void | copy (const Matrix< T > &mat) |
void | copyCol (const int i, Vector< T > &x) const |
void | copyMask (Matrix< T > &out, Vector< bool > &mask) const |
void | copyRef (const Matrix< T > &mat) |
void | copyRow (const int i, Vector< T > &x) const |
void | copyTo (Matrix< T > &mat) const |
void | diag (Vector< T > &d) const |
void | div_elementWise (const Matrix< T > &B, Matrix< T > &C) const |
T | dot (const Matrix< T > &mat) const |
void | drop (char *fileName) const |
T | eigLargestMagnSym (const Vector< T > &u0, Vector< T > &u) const |
T | eigLargestMagnSym () const |
void | eigLargestSymApprox (const Vector< T > &u0, Vector< T > &u) const |
void | exp () |
void | extract_rawCol (const int i, T *x) const |
void | extractRow (const int i, Vector< T > &row) const |
void | eye () |
void | fakeSize (const int m, const int n) |
void | fillRow (const Vector< T > &row) |
void | fillSymmetric () |
void | fillSymmetric2 () |
int | fmax () const |
T | fmaxval () const |
int | fmin () const |
void | getData (Vector< T > &data, const int i) const |
virtual void | getGroup (Matrix< T > &data, const vector_groups &groups, const int i) const |
void | hardThrshold (const T nu) |
void | incrDiag () |
void | inv () |
void | inv_elem () |
void | Invsqrt () |
void | invSym () |
bool | isNormalized () const |
int | m () const |
Matrix (T *X, int m, int n) | |
Matrix (int m, int n) | |
Matrix () | |
T | mean () const |
void | meanCol (Vector< T > &mean) const |
void | meanRow (Vector< T > &mean) const |
void | merge (const Matrix< T > &B, Matrix< T > &C) const |
void | mult (const Vector< T > &x, Vector< T > &b, const T alpha=1.0, const T beta=0.0) const |
void | mult (const SpVector< T > &x, Vector< T > &b, const T alpha=1.0, const T beta=0.0) const |
void | mult (const Matrix< T > &B, Matrix< T > &C, const bool transA=false, const bool transB=false, const T a=1.0, const T b=0.0) const |
void | mult (const SpMatrix< T > &B, Matrix< T > &C, const bool transA=false, const bool transB=false, const T a=1.0, const T b=0.0) const |
void | mult_elementWise (const Matrix< T > &B, Matrix< T > &C) const |
void | multDiagLeft (const Vector< T > &diag) |
void | multDiagRight (const Vector< T > &diag) |
void | multSwitch (const Matrix< T > &B, Matrix< T > &C, const bool transA=false, const bool transB=false, const T a=1.0, const T b=0.0) const |
void | multTrans (const Vector< T > &x, Vector< T > &b, const T alpha=1.0, const T beta=0.0) const |
void | multTrans (const Vector< T > &x, Vector< T > &b, const Vector< bool > &active) const |
void | multTrans (const SpVector< T > &x, Vector< T > &b, const T alpha=1.0, const T beta=0.0) const |
int | n () const |
void | NadarayaWatson (const Vector< int > &ind, const T sigma) |
void | neg () |
T | norm_1_2_col () const |
void | norm_2_cols (Vector< T > &norms) const |
void | norm_2_rows (Vector< T > &norms) const |
void | norm_2sq_cols (Vector< T > &norms) const |
void | norm_2sq_rows (Vector< T > &norms) const |
T | norm_inf_2_col () const |
void | norm_inf_cols (Vector< T > &norms) const |
void | norm_inf_rows (Vector< T > &norms) const |
void | norm_l1_rows (Vector< T > &norms) const |
void | normalize () |
void | normalize2 () |
T | normF () const |
T | normFsq () const |
T | nrm2sq () const |
T & | operator() (const int i, const int j) |
T | operator() (const int i, const int j) const |
T & | operator[] (const int index) |
T | operator[] (const int index) const |
void | print (const string &name) const |
T | quad (const Vector< T > &vec1, const SpVector< T > &vec2) const |
T | quad (const SpVector< T > &vec) const |
void | quad_mult (const Vector< T > &vec1, const SpVector< T > &vec2, Vector< T > &y, const T a=1.0, const T b=0.0) const |
void | rank1Update (const Vector< T > &vec1, const Vector< T > &vec2, const T alpha=1.0) |
void | rank1Update (const SpVector< T > &vec1, const Vector< T > &vec2, const T alpha=1.0) |
void | rank1Update (const Vector< T > &vec1, const SpVector< T > &vec2, const T alpha=1.0) |
void | rank1Update (const SpVector< T > &vec, const T alpha=1.0) |
void | rank1Update (const SpVector< T > &vec, const SpVector< T > &vec2, const T alpha=1.0) |
void | rank1Update_mult (const Vector< T > &vec1, const Vector< T > &vec1b, const SpVector< T > &vec2, const T alpha=1.0) |
T * | rawX () const |
void | refCol (int i, Vector< T > &x) const |
void | refSubMat (int i, int n, Matrix< T > &mat) const |
void | resize (int m, int n) |
void | scal (const T a) |
void | set (const T a) |
void | setAleat () |
void | setData (T *X, int m, int n) |
void | setDiag (const Vector< T > &d) |
void | setDiag (const T val) |
void | setm (const int m) |
void | setn (const int n) |
void | setRow (const int i, const Vector< T > &row) |
void | setZeros () |
void | singularValues (Vector< T > &u) const |
void | softThrshold (const T nu) |
void | sparseProject (Matrix< T > &out, const T thrs, const int mode=1, const T lambda1=0, const T lambda2=0, const T lambda3=0, const bool pos=false, const int numThreads=-1) |
void | Sqrt () |
void | sub (const Matrix< T > &mat) |
void | subMatrixSym (const Vector< int > &indices, Matrix< T > &subMatrix) const |
void | sum_cols (Vector< T > &sum) const |
void | svd (Matrix< T > &U, Vector< T > &S, Matrix< T > &V) const |
void | svdRankOne (const Vector< T > &u0, Vector< T > &u, Vector< T > &v) const |
void | thrsabsmin (const T nu) |
void | thrsmax (const T nu) |
void | thrsmin (const T nu) |
void | thrsPos () |
void | toSparse (SpMatrix< T > &matrix) const |
void | toSparseTrans (SpMatrix< T > &matrixTrans) |
void | toVect (Vector< T > &vec) const |
T | trace () const |
void | transformFilter () |
void | transpose (Matrix< T > &trans) |
void | unwhiten (Vector< T > &mean, const bool pattern=false) |
void | upperTriXXt (Matrix< T > &XXt, const int L) const |
int | V () const |
void | whiten (const int V) |
void | whiten (Vector< T > &mean, const bool pattern=false) |
void | whiten (Vector< T > &mean, const Vector< T > &mask) |
const T * | X () const |
void | XtX (Matrix< T > &XtX) const |
void | XXt (Matrix< T > &XXt) const |
virtual | ~Matrix () |
Public Member Functions inherited from spams::Data< T > | |
virtual | ~Data () |
Public Member Functions inherited from spams::AbstractMatrix< T > | |
virtual | ~AbstractMatrix () |
Public Member Functions inherited from spams::AbstractMatrixB< T > | |
virtual | ~AbstractMatrixB () |
Protected Member Functions | |
Matrix (const Matrix< T > &matrix) | |
Matrix< T > & | operator= (const Matrix< T > &matrix) |
Protected Attributes | |
bool | _externAlloc |
int | _m |
int | _n |
T * | _X |
Friends | |
class | SpMatrix< T > |
spams::Matrix< T >::Matrix | ( | T * | X, |
int | m, | ||
int | n | ||
) |
spams::Matrix< T >::Matrix | ( | int | m, |
int | n | ||
) |
Constructor for a new m x n matrix.
Definition at line 1057 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
spams::Matrix< T >::Matrix | ( | ) |
|
virtual |
Destructor.
Definition at line 1070 of file linalg.h.
References spams::Matrix< T >::clear().
|
explicitprotected |
Forbid lazy copies.
|
inline |
add alpha*mat to the current matrix
Definition at line 2062 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::FISTA::ADMM(), spams::Trainer< T >::train(), and spams::Trainer< T >::trainOffline().
|
inline |
add alpha to the current matrix
Definition at line 2075 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inlinevirtual |
Copy the column i into x.
Implements spams::AbstractMatrix< T >.
Definition at line 1121 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
Definition at line 1506 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, MIN, and spams::Vector< T >::rawX().
Referenced by spams::ist(), spams::lasso(), spams::lasso2(), and spams::Trainer< T >::train().
|
inline |
Definition at line 1512 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and MIN.
|
inline |
fill the matrix with the row given
Definition at line 2268 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::Matrix< T >::mult(), and spams::SpMatrix< T >::mult().
|
inline |
Definition at line 1517 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::add(), and spams::Matrix< T >::refCol().
|
inline |
Definition at line 1526 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::add(), and spams::Matrix< T >::refCol().
Referenced by spams::FISTA::ADMM(), and spams::FISTA::LagrangianADMM().
|
inline |
compute the sum of the magnitude of the matrix values
Definition at line 2085 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::ist_groupLasso().
|
inline |
performs soft-thresholding of the vector
perform soft-thresholding of the matrix, with the threshold nu
Definition at line 2320 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Matrix< T >::scal().
|
inline |
center the columns of the matrix
center the matrix
Definition at line 1299 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::add(), spams::Matrix< T >::refCol(), and spams::Vector< T >::sum().
Referenced by spams::FISTA::SqLossMat< T >::var_fenchel().
|
inline |
center the columns of the matrix and keep the center values
center the matrix and keep the center values
Definition at line 1322 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::add(), spams::Matrix< T >::refCol(), spams::Vector< T >::resize(), and spams::Vector< T >::sum().
|
inline |
center the columns of the matrix
center the matrix
Definition at line 1309 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::scal(), and spams::Vector< T >::setZeros().
|
inline |
clean a dictionary matrix
Modifiers clean a dictionary matrix
remove the diagonal
Definition at line 1168 of file linalg.h.
References spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::normalize(), spams::Vector< T >::normalize(), spams::Matrix< T >::refCol(), spams::Vector< T >::setAleat(), and spams::Matrix< T >::XtX().
|
inline |
Clear the matrix.
Definition at line 1250 of file linalg.h.
References spams::Matrix< T >::_externAlloc, spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::coreSOMP(), spams::Matrix< T >::resize(), spams::Matrix< T >::setData(), and spams::Matrix< T >::~Matrix().
|
inline |
compute x, such that b = Ax,
compute x, such that b = Ax, WARNING this function needs to be u updated
Definition at line 2482 of file linalg.h.
References spams::Vector< T >::add(), spams::Vector< T >::copy(), spams::Vector< T >::dot(), spams::Matrix< T >::mult(), spams::Vector< T >::nrm2sq(), and spams::Vector< T >::scal().
Referenced by spams::Trainer< T >::train().
|
inline |
make a copy of the matrix mat in the current matrix
Definition at line 1339 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Matrix< T >::resize().
Referenced by spams::FISTA::ADMM(), spams::Matrix< T >::copyTo(), spams::FISTA::SqLossMat< T >::eval(), spams::FISTA::MixedL1L2< T >::fenchel(), spams::FISTA::MixedL1LINF< T >::fenchel(), spams::Trainer< T >::getA(), spams::Trainer< T >::getB(), spams::Trainer< T >::getD(), spams::FISTA::SqLossMat< T >::grad(), spams::FISTA::LagrangianADMM(), spams::FISTA::MixedL1L2< T >::prox(), spams::FISTA::MixedL1LINF< T >::prox(), spams::FISTA::Rank< T >::prox(), spams::FISTA::RegMat< T, Reg >::prox(), spams::Matrix< T >::singularValues(), spams::FISTA::MixedL1L2< T >::sub_grad(), spams::Matrix< T >::svd(), spams::FISTA::SqLossMat< T >::test_backtracking(), spams::Trainer< T >::train(), and spams::FISTA::SqLossMat< T >::var_fenchel().
|
inlinevirtual |
Copy the column i into x.
Implements spams::AbstractMatrix< T >.
Definition at line 1100 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, and spams::Vector< T >::resize().
Referenced by spams::coreSOMP(), spams::Matrix< T >::getData(), and spams::lassoWeightPreComputed().
|
inline |
extract the rows of a matrix corresponding to a binary mask
Definition at line 4052 of file linalg.h.
References spams::Vector< T >::_n, spams::Vector< T >::_X, spams::Vector< T >::n(), spams::Matrix< T >::resize(), and spams::Matrix< T >::setm().
Referenced by spams::lasso_mask(), and spams::omp_mask().
|
inline |
make a copy of the matrix mat in the current matrix
Definition at line 1345 of file linalg.h.
References spams::Matrix< T >::m(), spams::Matrix< T >::n(), spams::Matrix< T >::rawX(), and spams::Matrix< T >::setData().
|
inlinevirtual |
Copy the column i into x.
Implements spams::AbstractMatrixB< T >.
Definition at line 1107 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, and spams::Vector< T >::resize().
Referenced by spams::FISTA::RegMat< T, Reg >::eval(), spams::FISTA::RegMat< T, Reg >::fenchel(), spams::SpMatrix< T >::mult(), spams::FISTA::RegMat< T, Reg >::prox(), spams::FISTA::MixedL1LINF< T >::sub_grad(), and spams::FISTA::RegMat< T, Reg >::sub_grad().
|
inlinevirtual |
make a copy of the matrix mat in the current matrix
Implements spams::AbstractMatrixB< T >.
Definition at line 260 of file linalg.h.
References spams::Matrix< T >::copy(), and spams::Data< T >::m().
Referenced by spams::FISTA::LossCur< T >::eval(), and spams::FISTA::LossCur< T >::grad().
|
inlinevirtual |
extract the diagonal
Implements spams::AbstractMatrix< T >.
Definition at line 1985 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, MIN, spams::Vector< T >::rawX(), and spams::Vector< T >::resize().
Referenced by spams::coreSOMP().
|
inline |
C = A .* B, elementwise multiplication.
Definition at line 1950 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Matrix< T >::resize().
|
inlinevirtual |
add alpha*mat to the current matrix
Implements spams::AbstractMatrixB< T >.
Definition at line 2068 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::FISTA::SqLossMat< T >::fenchel(), and spams::FISTA::LagrangianADMM().
|
inline |
compute x, such that b = Ax, WARNING this function needs to be u updated, the temporary vectors are given.
Definition at line 2504 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
find the eigenvector corresponding to the eivenvalue with the largest magnitude when the current matrix is symmetric, using the power method. It returns the eigenvalue. u0 is an initial guess for the eigenvector.
Definition at line 1672 of file linalg.h.
References spams::Vector< T >::copy(), spams::Matrix< T >::mult(), spams::Vector< T >::nrm2(), and spams::Vector< T >::scal().
Referenced by spams::FISTA::Rank< T >::eval().
|
inline |
returns the value of the eigenvalue with the largest magnitude using the power iteration.
Definition at line 1695 of file linalg.h.
References spams::Matrix< T >::_m, spams::Vector< T >::copy(), spams::Matrix< T >::mult(), spams::Vector< T >::nrm2(), spams::Vector< T >::scal(), and spams::Vector< T >::setAleat().
|
inline |
find the eigenvector corresponding to the largest eigenvalue when the current matrix is symmetric. u0 is the initial guess. using two iterations of the power method
Definition at line 1629 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_X, spams::Vector< T >::copy(), spams::Vector< T >::dot(), spams::Matrix< T >::mult(), spams::Vector< T >::nrm2(), and spams::Vector< T >::scal().
|
inline |
each element of the matrix is replaced by its exponential
Definition at line 2010 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::Matrix< T >::NadarayaWatson().
|
inlinevirtual |
Copy the column i into x.
Implements spams::AbstractMatrix< T >.
Definition at line 1115 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
fill the matrix with the row given
Definition at line 2251 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Vector< T >::resize().
Referenced by spams::FISTA::MultiLogLoss< T >::var_fenchel().
|
inline |
set the matrix to the identity;
set the matrix to the identity
Definition at line 1264 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, MIN, and spams::Matrix< T >::setZeros().
|
inline |
change artificially the size of the matrix, DANGEROUS
Definition at line 307 of file linalg.h.
References spams::Data< T >::m(), spams::Data< T >::n(), utl::Sqrt(), and spams::Data< T >::V().
|
inline |
fill the matrix with the row given
Definition at line 2241 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::ist_groupLasso().
|
inline |
make the matrix symmetric by copying the upper-right part into the lower-left part
Definition at line 1351 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::SpMatrix< T >::AAt(), spams::Matrix< T >::invSym(), spams::Matrix< T >::subMatrixSym(), spams::Matrix< T >::upperTriXXt(), spams::SpMatrix< T >::wAAt(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().
|
inline |
Definition at line 1358 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
return the 1D-index of the value of greatest magnitude
Definition at line 1188 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::Matrix< T >::merge().
|
inline |
return the 1D-index of the value of greatest magnitude
return the value of greatest magnitude
Definition at line 1193 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
return the 1D-index of the value of lowest magnitude
Definition at line 1199 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inlinevirtual |
Copy the column i into x.
Implements spams::Data< T >.
Definition at line 1127 of file linalg.h.
References spams::Matrix< T >::copyCol().
|
inlinevirtual |
extract the group i
Implements spams::Data< T >.
Definition at line 1131 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_X, and spams::Matrix< T >::resize().
|
inline |
perform soft-thresholding of the matrix, with the threshold nu
Definition at line 2290 of file linalg.h.
References spams::Vector< T >::hardThrshold(), and spams::Matrix< T >::toVect().
|
inline |
add one to the diagonal
Definition at line 1502 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and MIN.
|
inline |
|
inline |
inverse the elements of the matrix
perform soft-thresholding of the matrix, with the threshold nu
Definition at line 2313 of file linalg.h.
References spams::Vector< T >::inv(), and spams::Matrix< T >::toVect().
|
inline |
Definition at line 2017 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
inverse the matrix when it is symmetric
ipiv= new INTT[lwork];
Definition at line 1716 of file linalg.h.
References spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::fillSymmetric(), and upper.
|
inline |
Check wether the columns of the matrix are normalized or not.
Analysis functions Check wether the columns of the matrix are normalized or not
Definition at line 1158 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::ist(), spams::ist_groupLasso(), and spams::somp().
|
inlinevirtual |
Accessors Number of rows
Implements spams::Data< T >.
Definition at line 222 of file linalg.h.
Referenced by spams::SpMatrix< T >::convert(), spams::SpMatrix< T >::convert2(), spams::Matrix< T >::copyRef(), spams::coreGroupIST(), spams::coreGroupISTConstrained(), spams::coreLARS(), spams::coreSOMP(), spams::downDateLasso(), spams::FISTA::Rank< T >::eval(), spams::FISTA::MultiLogLoss< T >::fenchel(), spams::FISTA::MultiLogLoss< T >::grad(), spams::FISTA::LossCur< T >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::init(), spams::ist_groupLasso(), spams::lasso_mask(), spams::MatrixToUtlMatrix(), spams::MatrixToVnlMatrix(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::omp(), spams::omp_mask(), spams::FISTA::MixedL1L2< T >::prox(), spams::FISTA::MixedL1LINF< T >::prox(), spams::FISTA::Rank< T >::prox(), spams::FISTA::SpecGraphMat< T >::prox(), spams::FISTA::PROX(), spams::Matrix< T >::resize(), spams::Matrix< T >::setData(), spams::FISTA::solver(), spams::somp(), spams::FISTA::MixedL1LINF< T >::sub_grad(), spams::FISTA::RegMat< T, Reg >::sub_grad(), spams::Matrix< T >::trace(), spams::Trainer< T >::Trainer(), spams::FISTA::MultiLogLoss< T >::var_fenchel(), spams::FISTA::LossCur< T >::var_fenchel(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::var_fenchel(), and spams::writeLog().
|
inline |
whiten
Definition at line 2103 of file linalg.h.
References spams::Vector< T >::mean(), and spams::Matrix< T >::toVect().
Referenced by spams::Matrix< T >::whiten().
|
inline |
Compute the mean of the columns.
Definition at line 2226 of file linalg.h.
References spams::Matrix< T >::_n, spams::Matrix< T >::mult(), and spams::Vector< T >::set().
Referenced by spams::ist_groupLasso().
|
inline |
Compute the mean of the rows.
Definition at line 2233 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::multTrans(), and spams::Vector< T >::set().
Referenced by spams::ist_groupLasso().
|
inline |
merge two dictionaries
Definition at line 2656 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::copy(), spams::Matrix< T >::fmax(), spams::Vector< T >::fmaxval(), spams::Matrix< T >::mult(), spams::Matrix< T >::n(), spams::Matrix< T >::refCol(), and spams::Matrix< T >::resize().
|
inlinevirtual |
perform b = alpha*A*x+beta*b
Implements spams::AbstractMatrixB< T >.
Definition at line 1783 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, CblasColMajor, CblasNoTrans, and spams::Vector< T >::resize().
Referenced by spams::Matrix< T >::conjugateGradient(), spams::coreSOMP(), spams::Matrix< T >::eigLargestMagnSym(), spams::Matrix< T >::eigLargestSymApprox(), spams::FISTA::LossCur< T >::eval(), spams::FISTA::LossCur< T >::grad(), spams::ist(), spams::ist_groupLasso(), spams::Matrix< T >::meanCol(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::multSwitch(), spams::SpMatrix< T >::multSwitch(), spams::Matrix< T >::NadarayaWatson(), spams::FISTA::TraceNorm< T >::prox(), spams::ProdMatrix< T >::setMatrices(), spams::Matrix< T >::svd(), spams::Matrix< T >::svdRankOne(), spams::FISTA::SqLossMat< T >::test_backtracking(), spams::Trainer< T >::trainOffline(), and spams::FISTA::LossCur< T >::var_fenchel().
|
inlinevirtual |
perform b = alpha*A*x + beta*b, when x is sparse
Implements spams::AbstractMatrixB< T >.
Definition at line 1791 of file linalg.h.
References spams::SpVector< T >::_L, spams::Matrix< T >::_m, spams::SpVector< T >::_r, spams::SpVector< T >::_v, spams::Matrix< T >::_X, spams::Vector< T >::_X, spams::Vector< T >::scal(), and spams::Vector< T >::setZeros().
|
inlinevirtual |
perform C = a*A*B + b*C, possibly transposing A or B.
Implements spams::AbstractMatrixB< T >.
Definition at line 1810 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, CblasColMajor, CblasNoTrans, CblasTrans, spams::Matrix< T >::m(), spams::Matrix< T >::n(), and spams::Matrix< T >::resize().
|
inlinevirtual |
perform C = A*B, when B is sparse
Implements spams::AbstractMatrixB< T >.
Definition at line 1848 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::addRow(), spams::SpMatrix< T >::m(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::multTrans(), spams::SpMatrix< T >::n(), spams::Matrix< T >::rank1Update(), spams::Matrix< T >::refCol(), spams::SpMatrix< T >::refCol(), spams::Matrix< T >::resize(), spams::Matrix< T >::scal(), and spams::Matrix< T >::setZeros().
|
inline |
C = A .* B, elementwise multiplication.
Definition at line 1942 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Matrix< T >::resize().
|
inline |
mult by a diagonal matrix on the left
Definition at line 1917 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::n(), and spams::Vector< T >::rawX().
Referenced by spams::FISTA::MixedL1L2< T >::sub_grad(), and spams::Matrix< T >::svd().
|
inline |
mult by a diagonal matrix on the right
Definition at line 1929 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::n(), and spams::Vector< T >::rawX().
Referenced by spams::Matrix< T >::NadarayaWatson(), spams::FISTA::TraceNorm< T >::prox(), and spams::Matrix< T >::svd().
|
inlinevirtual |
perform C = a*B*A + b*C, possibly transposing A or B.
Implements spams::AbstractMatrixB< T >.
Definition at line 1840 of file linalg.h.
References spams::Matrix< T >::mult().
Referenced by spams::FISTA::MultiLogLoss< T >::eval(), and spams::FISTA::MultiLogLoss< T >::grad().
|
inlinevirtual |
perform b = alpha*A'x + beta*b
Implements spams::AbstractMatrixB< T >.
Definition at line 1743 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, CblasColMajor, CblasTrans, and spams::Vector< T >::resize().
Referenced by spams::coreSOMP(), spams::lasso_mask(), spams::lassoReweighted(), spams::lassoWeight(), spams::Matrix< T >::meanRow(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::omp(), spams::omp_mask(), and spams::Matrix< T >::svdRankOne().
|
inline |
perform b = alpha*A'x + beta*b
Definition at line 1769 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::_X, spams::Vector< T >::dot(), spams::Vector< T >::rawX(), spams::Matrix< T >::refCol(), and spams::Vector< T >::setZeros().
|
inline |
perform b = A'x, when x is sparse
Definition at line 1751 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::_X, spams::Vector< T >::dot(), spams::Matrix< T >::refCol(), and spams::Vector< T >::resize().
|
inlinevirtual |
Number of columns.
Implements spams::Data< T >.
Definition at line 224 of file linalg.h.
Referenced by spams::computeError(), spams::SpMatrix< T >::convert(), spams::SpMatrix< T >::convert2(), spams::Matrix< T >::copyRef(), spams::coreGroupIST(), spams::coreGroupISTConstrained(), spams::coreLARS(), spams::coreLARS2(), spams::coreLARS2W(), spams::coreORMP(), spams::coreSOMP(), spams::downDateLasso(), spams::FISTA::MultiLogLoss< T >::eval(), spams::FISTA::LossCur< T >::eval(), spams::FISTA::Rank< T >::eval(), spams::FISTA::EvalGraphPath(), spams::FISTA::MultiLogLoss< T >::fenchel(), spams::FISTA::MultiLogLoss< T >::grad(), spams::FISTA::LossCur< T >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::grad(), spams::ist(), spams::ist_groupLasso(), spams::lasso(), spams::lasso2(), spams::lasso_mask(), spams::lassoReweighted(), spams::lassoWeight(), spams::lassoWeightPreComputed(), spams::MatrixToUtlMatrix(), spams::MatrixToVnlMatrix(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::NadarayaWatson(), spams::omp(), spams::omp_mask(), spams::FISTA::MixedL1L2< T >::prox(), spams::FISTA::MixedL1LINF< T >::prox(), spams::FISTA::Rank< T >::prox(), spams::FISTA::SpecGraphMat< T >::prox(), spams::FISTA::PROX(), spams::Matrix< T >::resize(), spams::Matrix< T >::setData(), spams::ProdMatrix< T >::setMatrices(), spams::FISTA::solver(), spams::FISTA::solver_admm(), spams::FISTA::solver_aux1(), spams::FISTA::solver_aux2(), spams::somp(), spams::FISTA::MixedL1LINF< T >::sub_grad(), spams::FISTA::RegMat< T, Reg >::sub_grad(), spams::Trainer< T >::Trainer(), spams::Matrix< T >::unwhiten(), spams::FISTA::update_multipliers_ADMM(), spams::FISTA::update_multipliers_weighted_ADMM(), spams::FISTA::MultiLogLoss< T >::var_fenchel(), spams::FISTA::LossCur< T >::var_fenchel(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::var_fenchel(), spams::Matrix< T >::whiten(), and spams::writeLog().
|
inline |
compute a Nadaraya Watson estimator
Definition at line 2519 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::copy(), spams::Matrix< T >::exp(), spams::init_omp(), spams::Vector< T >::inv(), MAX_THREADS, spams::Vector< T >::maxval(), spams::Matrix< T >::mult(), spams::Matrix< T >::multDiagRight(), spams::Matrix< T >::n(), spams::Vector< T >::n(), spams::Matrix< T >::norm_2sq_cols(), spams::Matrix< T >::rank1Update(), spams::Matrix< T >::refCol(), spams::Matrix< T >::scal(), spams::Vector< T >::set(), and spams::Matrix< T >::XtX().
|
inline |
A <- -A.
Definition at line 1498 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
return ||At||_{1,2} (max of l2 norm of the columns)
return ||At||_{1,2}
Definition at line 2128 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::nrm2(), and spams::Matrix< T >::refCol().
|
inline |
returns the l2 norms of the columns
Definition at line 2162 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::nrm2(), spams::Matrix< T >::refCol(), and spams::Vector< T >::resize().
Referenced by spams::coreGroupIST(), and spams::coreGroupISTConstrained().
|
inline |
returns the l2 norms of the columns
Definition at line 2139 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().
Referenced by spams::FISTA::MixedL1L2< T >::eval(), spams::FISTA::MixedL1L2< T >::fenchel(), spams::FISTA::MixedL1L2< T >::prox(), and spams::FISTA::MixedL1L2< T >::sub_grad().
|
inlinevirtual |
returns the l2 norms ^2 of the columns
returns the l2 norms of the columns
Reimplemented from spams::Data< T >.
Definition at line 2204 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::nrm2sq(), spams::Matrix< T >::refCol(), and spams::Vector< T >::resize().
Referenced by spams::coreGroupIST(), spams::coreGroupISTConstrained(), spams::coreSOMP(), and spams::Matrix< T >::NadarayaWatson().
|
inline |
returns the l2 norms of the columns
Definition at line 2151 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().
|
inline |
return ||At||_{inf,2} (max of l2 norm of the columns)
return ||At||_{inf,2}
Definition at line 2115 of file linalg.h.
References spams::Matrix< T >::_n, utl::max(), spams::Vector< T >::nrm2(), and spams::Matrix< T >::refCol().
|
inline |
returns the linf norms of the columns
Definition at line 2174 of file linalg.h.
References spams::Matrix< T >::_n, spams::Vector< T >::fmaxval(), spams::Matrix< T >::refCol(), and spams::Vector< T >::resize().
|
inline |
returns the linf norms of the columns
Definition at line 2184 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, MAX, spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().
Referenced by spams::FISTA::MixedL1LINF< T >::eval().
|
inline |
returns the linf norms of the columns
Definition at line 2193 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().
Referenced by spams::FISTA::MixedL1LINF< T >::fenchel(), and spams::Trainer< T >::trainOffline().
|
inline |
Normalize all columns to unit l2 norm.
Definition at line 1270 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::normalize(), spams::Matrix< T >::refCol(), and spams::Vector< T >::setAleat().
Referenced by spams::Matrix< T >::clean().
|
inline |
Normalize all columns which l2 norm is greater than one.
Definition at line 1288 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
return ||A||_F
Definition at line 2099 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
return ||A||_F^2
Definition at line 2110 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::coreSOMP(), spams::FISTA::LossCur< T >::eval(), spams::FISTA::SqLossMat< T >::eval(), spams::FISTA::LossCur< T >::fenchel(), spams::FISTA::SqLossMat< T >::fenchel(), spams::ist_groupLasso(), spams::FISTA::LagrangianADMM(), and spams::FISTA::SqLossMat< T >::test_backtracking().
|
inline |
return ||A||_F^2
Definition at line 446 of file linalg.h.
References spams::Data< T >::norm_2sq_cols().
|
inline |
Return a modifiable reference to X(i,j)
Definition at line 1075 of file linalg.h.
References spams::Matrix< T >::_m, and spams::Matrix< T >::_X.
|
inlinevirtual |
Return the value X(i,j)
Implements spams::AbstractMatrix< T >.
Definition at line 1080 of file linalg.h.
References spams::Matrix< T >::_m, and spams::Matrix< T >::_X.
|
protected |
Forbid lazy copies.
|
inline |
|
inlinevirtual |
Return the value X(i) (1D indexing)
Implements spams::Data< T >.
Definition at line 232 of file linalg.h.
References spams::Data< T >::getData(), spams::Data< T >::getGroup(), and spams::Data< T >::n().
|
inlinevirtual |
Print the matrix to std::cout.
Debugging function Print the matrix to std::cout
Implements spams::AbstractMatrixB< T >.
Definition at line 1085 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by mexFunction().
|
inline |
return vec1'*A*vec2, where vec2 is sparse
return vec'*A*vec when vec is sparse
Definition at line 2047 of file linalg.h.
References spams::SpVector< T >::_L, spams::SpVector< T >::_r, spams::SpVector< T >::_v, spams::Vector< T >::dot(), and spams::Matrix< T >::refCol().
Referenced by spams::computeError(), and spams::Matrix< T >::quad_mult().
|
inline |
return vec'*A*vec when vec is sparse
return vec1'*A*vec2, where vec2 is sparse
Definition at line 2021 of file linalg.h.
References spams::SpVector< T >::_L, spams::Matrix< T >::_m, spams::SpVector< T >::_r, spams::SpVector< T >::_v, and spams::Matrix< T >::_X.
|
inline |
return vec1'*A*vec2, where vec2 is sparse
Definition at line 2033 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::n(), spams::Matrix< T >::quad(), and spams::Matrix< T >::setData().
|
inline |
perform A <- A + alpha*vec1*vec2'
Definition at line 2384 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, and CblasColMajor.
Referenced by spams::FISTA::Rank< T >::eval(), spams::ist_groupLasso(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::NadarayaWatson(), spams::FISTA::Rank< T >::prox(), spams::Matrix< T >::rank1Update_mult(), spams::Trainer< T >::train(), and spams::Trainer< T >::trainOffline().
|
inline |
perform A <- A + alpha*vec1*vec2', when vec1 is sparse
Definition at line 2390 of file linalg.h.
References spams::SpVector< T >::_L, spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::_n, spams::SpVector< T >::_r, spams::SpVector< T >::_v, spams::Matrix< T >::_X, and spams::Vector< T >::_X.
|
inline |
perform A <- A + alpha*vec1*vec2', when vec2 is sparse
Definition at line 2449 of file linalg.h.
References spams::SpVector< T >::_L, spams::SpVector< T >::_r, spams::SpVector< T >::_v, spams::Vector< T >::add(), and spams::Matrix< T >::refCol().
|
inline |
perform A <- A + alpha*vec*vec', when vec2 is sparse
perform A <- A + alpha*vec1*vec1', when vec1 is sparse
Definition at line 2461 of file linalg.h.
References spams::SpVector< T >::_L, spams::Matrix< T >::_m, spams::SpVector< T >::_r, spams::SpVector< T >::_v, and spams::Matrix< T >::_X.
|
inline |
perform A <- A + alpha*vec*vec', when vec2 is sparse
perform A <- A + alpha*vec1*vec2', when vec1 is sparse
Definition at line 2426 of file linalg.h.
References spams::SpVector< T >::_L, spams::Matrix< T >::_m, spams::SpVector< T >::_r, spams::SpVector< T >::_v, and spams::Matrix< T >::_X.
|
inline |
Definition at line 2412 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::n(), spams::Matrix< T >::rank1Update(), and spams::Matrix< T >::setData().
|
inline |
reference a modifiable reference to the data, DANGEROUS
Definition at line 254 of file linalg.h.
Referenced by spams::Trainer< T >::cleanDict(), spams::Matrix< T >::copyRef(), spams::coreGroupIST(), spams::coreGroupISTConstrained(), spams::coreLARS(), spams::coreLARS2(), spams::coreLARS2W(), spams::coreORMP(), spams::coreSOMP(), spams::downDateLasso(), spams::lasso(), spams::lasso2(), spams::omp(), spams::omp_mask(), spams::Matrix< T >::singularValues(), spams::Matrix< T >::svd(), spams::UtlMatrixToMatrix(), and spams::VnlMatrixToMatrix().
|
inline |
Reference the column i into the vector x.
Definition at line 1144 of file linalg.h.
References spams::Vector< T >::_externAlloc, spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, and spams::Vector< T >::clear().
Referenced by spams::Matrix< T >::addToCols(), spams::Matrix< T >::addVecToCols(), spams::Matrix< T >::center(), spams::Matrix< T >::clean(), spams::Trainer< T >::cleanDict(), spams::computeError(), spams::coreORMP(), spams::coreSOMP(), spams::FISTA::dualityGraph(), spams::FISTA::MultiLogLoss< T >::eval(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::eval(), spams::FISTA::RegMat< T, Reg >::eval(), spams::FISTA::SqLoss< T >::eval_split(), spams::FISTA::HingeLoss< T >::eval_split(), spams::FISTA::EvalGraphPath(), spams::FISTA::MultiLogLoss< T >::fenchel(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::fenchel(), spams::FISTA::RegMat< T, Reg >::fenchel(), spams::SpMatrix< T >::getGroup(), spams::FISTA::MultiLogLoss< T >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::init(), spams::ist(), spams::ist_groupLasso(), spams::lasso(), spams::lasso2(), spams::lasso_mask(), spams::lassoReweighted(), spams::lassoWeight(), spams::lassoWeightPreComputed(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::multTrans(), spams::Matrix< T >::NadarayaWatson(), spams::Matrix< T >::norm_1_2_col(), spams::Matrix< T >::norm_2_cols(), spams::Matrix< T >::norm_2sq_cols(), spams::Matrix< T >::norm_inf_2_col(), spams::Matrix< T >::norm_inf_cols(), spams::Matrix< T >::normalize(), spams::omp(), spams::omp_mask(), spams::FISTA::RegMat< T, Reg >::prox(), spams::FISTA::PROX(), spams::FISTA::SqLoss< T >::prox_split(), spams::FISTA::HingeLoss< T >::prox_split(), spams::Matrix< T >::quad(), spams::Matrix< T >::rank1Update(), spams::FISTA::solver(), spams::FISTA::solver_admm(), spams::FISTA::solver_aux1(), spams::FISTA::solver_aux2(), spams::Matrix< T >::sparseProject(), spams::FISTA::RegMat< T, Reg >::sub_grad(), spams::Matrix< T >::sum_cols(), spams::Trainer< T >::trainOffline(), spams::FISTA::MultiLogLoss< T >::var_fenchel(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::var_fenchel(), and spams::SpMatrix< T >::XtX().
|
inline |
Reference the column i to i+n into the Matrix mat.
Definition at line 1153 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_X, and spams::Matrix< T >::setData().
Referenced by spams::FISTA::solver_aux2().
|
inline |
Resize the matrix.
Definition at line 1217 of file linalg.h.
References spams::Matrix< T >::_externAlloc, spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::clear(), spams::Matrix< T >::m(), spams::Matrix< T >::n(), and spams::Matrix< T >::setZeros().
Referenced by spams::SpMatrix< T >::AAt(), spams::Matrix< T >::copy(), spams::Matrix< T >::copyMask(), spams::coreSOMP(), spams::Matrix< T >::div_elementWise(), spams::Matrix< T >::getGroup(), spams::SpMatrix< T >::getGroup(), spams::FISTA::MultiLogLoss< T >::grad(), spams::FISTA::LossCur< T >::grad(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::grad(), spams::FISTA::SqLoss< T >::init_split_variables(), spams::FISTA::HingeLoss< T >::init_split_variables(), spams::ist(), spams::lasso(), spams::lasso2(), spams::lasso_mask(), spams::lassoReweighted(), spams::lassoWeight(), spams::lassoWeightPreComputed(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::mult_elementWise(), spams::omp(), spams::omp_mask(), spams::FISTA::Rank< T >::prox(), spams::FISTA::SpecGraphMat< T >::prox(), spams::FISTA::solver(), spams::FISTA::solver_admm(), spams::FISTA::solver_aux1(), spams::FISTA::solver_aux2(), spams::FISTA::MixedL1LINF< T >::sub_grad(), spams::FISTA::RegMat< T, Reg >::sub_grad(), spams::Matrix< T >::subMatrixSym(), spams::Matrix< T >::svd(), spams::SpMatrix< T >::toFull(), spams::SpMatrix< T >::toFullTrans(), spams::Trainer< T >::train(), spams::Trainer< T >::trainOffline(), spams::Matrix< T >::transpose(), spams::Matrix< T >::upperTriXXt(), spams::UtlMatrixToMatrix(), spams::FISTA::MultiLogLoss< T >::var_fenchel(), spams::FISTA::LossCur< T >::var_fenchel(), spams::FISTA::LossMatSup< T, SqLossMissing< T > >::var_fenchel(), spams::VnlMatrixToMatrix(), spams::SpMatrix< T >::wAAt(), spams::SpMatrix< T >::wXAt(), spams::SpMatrix< T >::XAt(), spams::Matrix< T >::XtX(), spams::SpMatrix< T >::XtX(), and spams::Matrix< T >::XXt().
|
inline |
scale the matrix by the a
Definition at line 1334 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::FISTA::ADMM(), spams::Matrix< T >::blockThrshold(), spams::FISTA::MultiLogLoss< T >::grad(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::Matrix< T >::NadarayaWatson(), spams::Trainer< T >::train(), spams::Trainer< T >::trainOffline(), and spams::FISTA::MultiLogLoss< T >::var_fenchel().
|
inline |
Set all the values to a scalar.
Definition at line 1245 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
|
inline |
Change the data in the matrix.
Definition at line 1231 of file linalg.h.
References spams::Matrix< T >::_externAlloc, spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::clear(), spams::Matrix< T >::m(), spams::Matrix< T >::n(), and spams::Matrix< T >::X().
Referenced by spams::Matrix< T >::copyRef(), spams::Matrix< T >::quad_mult(), spams::Matrix< T >::rank1Update_mult(), and spams::Matrix< T >::refSubMat().
|
inline |
set the diagonal
Definition at line 1994 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, MIN, and spams::Vector< T >::rawX().
|
inline |
set the diagonal
Definition at line 2002 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and MIN.
|
inline |
modify _m
Definition at line 277 of file linalg.h.
References spams::Data< T >::m().
Referenced by spams::Matrix< T >::copyMask(), spams::lasso_mask(), and spams::omp_mask().
|
inline |
modify _n
Definition at line 279 of file linalg.h.
References spams::Data< T >::n().
Referenced by spams::lasso_mask(), and spams::omp_mask().
|
inline |
fill the matrix with the row given
Definition at line 2260 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::FISTA::RegMat< T, Reg >::prox(), spams::FISTA::MixedL1LINF< T >::sub_grad(), spams::FISTA::RegMat< T, Reg >::sub_grad(), and spams::FISTA::MultiLogLoss< T >::var_fenchel().
|
inline |
Set all the values to zero.
Definition at line 1240 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::coreORMP(), spams::coreSOMP(), spams::Matrix< T >::eye(), spams::FISTA::SqLoss< T >::init_split_variables(), spams::FISTA::HingeLoss< T >::init_split_variables(), spams::lasso(), spams::lasso2(), spams::lasso_mask(), spams::lassoReweighted(), spams::lassoWeight(), spams::lassoWeightPreComputed(), spams::Matrix< T >::mult(), spams::SpMatrix< T >::mult(), spams::omp(), spams::omp_mask(), spams::FISTA::MixedL1L2< T >::prox(), spams::FISTA::Rank< T >::prox(), spams::Matrix< T >::resize(), spams::FISTA::MixedL1LINF< T >::sub_grad(), spams::SpMatrix< T >::toFull(), spams::SpMatrix< T >::toFullTrans(), spams::Trainer< T >::train(), spams::Trainer< T >::trainOffline(), and spams::SpMatrix< T >::XtX().
|
inline |
Definition at line 1560 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::copy(), lower, MIN, no, spams::Matrix< T >::rawX(), spams::Vector< T >::rawX(), spams::Vector< T >::resize(), spams::Vector< T >::Sqrt(), spams::Vector< T >::thrsPos(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().
Referenced by spams::FISTA::TraceNorm< T >::eval(), and spams::FISTA::TraceNorm< T >::fenchel().
|
inline |
perform soft-thresholding of the matrix, with the threshold nu
Definition at line 2283 of file linalg.h.
References spams::Vector< T >::softThrshold(), and spams::Matrix< T >::toVect().
|
inline |
performs sparse projections of the columns
Definition at line 2344 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::copy(), spams::init_omp(), spams::Matrix< T >::refCol(), spams::Vector< T >::resize(), and spams::Vector< T >::sparseProject().
|
inline |
each element of the matrix is replaced by its square root
Definition at line 2013 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
|
inline |
substract the matrix mat to the current matrix
Definition at line 2080 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, and spams::Matrix< T >::_X.
Referenced by spams::FISTA::SqLossMat< T >::test_backtracking().
|
inline |
extract a sub-matrix of a symmetric matrix
Definition at line 1204 of file linalg.h.
References spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::fillSymmetric(), spams::Vector< T >::n(), spams::Vector< T >::rawX(), and spams::Matrix< T >::resize().
|
inline |
whiten
Definition at line 2215 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::add(), spams::Matrix< T >::refCol(), spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().
Referenced by spams::FISTA::update_multipliers_ADMM(), and spams::FISTA::update_multipliers_weighted_ADMM().
|
inline |
Definition at line 1582 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, allV, spams::Matrix< T >::copy(), spams::Vector< T >::copy(), lower, MIN, spams::Matrix< T >::mult(), spams::Matrix< T >::multDiagLeft(), spams::Matrix< T >::multDiagRight(), spams::Matrix< T >::rawX(), spams::Vector< T >::rawX(), reduced, spams::Matrix< T >::resize(), spams::Vector< T >::resize(), spams::Vector< T >::Sqrt(), spams::Vector< T >::thrsPos(), spams::Matrix< T >::transpose(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().
Referenced by spams::FISTA::TraceNorm< T >::prox().
|
inline |
perform a rank one approximation uv' using the power method u0 is an initial guess for u (can be empty).
Definition at line 1537 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::copy(), spams::Vector< T >::dot(), EPSILON, MAX, spams::Matrix< T >::mult(), spams::Matrix< T >::multTrans(), spams::Vector< T >::normalize(), spams::Vector< T >::nrm2(), spams::Vector< T >::resize(), spams::Vector< T >::scal(), and spams::Vector< T >::setAleat().
Referenced by spams::FISTA::Rank< T >::prox().
|
inline |
|
inline |
perform thresholding of the matrix, with the threshold nu
Definition at line 2298 of file linalg.h.
References spams::Vector< T >::thrsmax(), and spams::Matrix< T >::toVect().
|
inline |
perform thresholding of the matrix, with the threshold nu
Definition at line 2305 of file linalg.h.
References spams::Vector< T >::thrsmin(), and spams::Matrix< T >::toVect().
|
inline |
perform soft-thresholding of the matrix, with the threshold nu
Definition at line 2376 of file linalg.h.
References spams::Vector< T >::thrsPos(), and spams::Matrix< T >::toVect().
Referenced by spams::FISTA::MixedL1L2< T >::fenchel(), spams::FISTA::MixedL1LINF< T >::fenchel(), spams::FISTA::MixedL1L2< T >::prox(), and spams::FISTA::MixedL1LINF< T >::prox().
|
inline |
make a sparse copy of the current matrix
Conversion make a sparse copy of the current matrix
Definition at line 2566 of file linalg.h.
References spams::SpMatrix< T >::_externAlloc, spams::Matrix< T >::_m, spams::SpMatrix< T >::_m, spams::Matrix< T >::_n, spams::SpMatrix< T >::_n, spams::SpMatrix< T >::_nzmax, spams::SpMatrix< T >::_pB, spams::SpMatrix< T >::_pE, spams::SpMatrix< T >::_r, spams::SpMatrix< T >::_v, spams::Matrix< T >::_X, and spams::SpMatrix< T >::clear().
Referenced by spams::FISTA::SqLossMat< T >::eval(), spams::FISTA::SqLossMat< T >::grad(), spams::ist(), spams::FISTA::SqLossMat< T >::test_backtracking(), and spams::FISTA::SqLossMat< T >::var_fenchel().
|
inline |
make a sparse copy of the current matrix
Definition at line 2606 of file linalg.h.
References spams::SpMatrix< T >::_externAlloc, spams::Matrix< T >::_m, spams::SpMatrix< T >::_m, spams::Matrix< T >::_n, spams::SpMatrix< T >::_n, spams::SpMatrix< T >::_nzmax, spams::SpMatrix< T >::_pB, spams::SpMatrix< T >::_pE, spams::SpMatrix< T >::_r, spams::SpMatrix< T >::_v, spams::Matrix< T >::_X, and spams::SpMatrix< T >::clear().
|
inline |
make a reference of the matrix to a vector vec
Definition at line 2647 of file linalg.h.
References spams::Vector< T >::_externAlloc, spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Vector< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, and spams::Vector< T >::clear().
Referenced by spams::FISTA::SpecGraphMat< T >::eval(), spams::FISTA::SpecGraphMat< T >::fenchel(), spams::Matrix< T >::hardThrshold(), spams::Matrix< T >::inv_elem(), spams::Matrix< T >::mean(), spams::FISTA::SpecGraphMat< T >::prox(), spams::Matrix< T >::softThrshold(), spams::Matrix< T >::thrsmax(), spams::Matrix< T >::thrsmin(), and spams::Matrix< T >::thrsPos().
|
inline |
return the trace of the matrix
returns the trace of the matrix
Definition at line 2090 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::m(), and MIN.
Referenced by spams::coreSOMP().
|
inline |
|
inline |
Transpose the current matrix and put the result in the matrix trans
Definition at line 1489 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, and spams::Matrix< T >::resize().
Referenced by spams::ist_groupLasso(), and spams::Matrix< T >::svd().
|
inline |
whiten
Definition at line 1460 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::n(), spams::Vector< T >::n(), and spams::Matrix< T >::V().
|
inline |
XXt = A*A' where A is an upper triangular matrix.
Definition at line 1975 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_X, CblasColMajor, CblasUpper, spams::Matrix< T >::fillSymmetric(), and spams::Matrix< T >::resize().
Referenced by spams::coreSOMP().
|
inlinevirtual |
Accessor.
Implements spams::Data< T >.
Definition at line 525 of file linalg.h.
Referenced by spams::Matrix< T >::unwhiten(), and spams::Matrix< T >::whiten().
|
inline |
whiten
Definition at line 1367 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::mean(), and spams::Matrix< T >::V().
|
inline |
whiten
Definition at line 1383 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Matrix< T >::n(), spams::Vector< T >::n(), spams::Vector< T >::scal(), spams::Vector< T >::setZeros(), and spams::Matrix< T >::V().
|
inline |
whiten
Definition at line 1435 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, spams::Vector< T >::_X, utl::cblas_asum(), spams::Vector< T >::n(), spams::Vector< T >::setZeros(), and spams::Matrix< T >::V().
|
inline |
return a non-modifiable reference to the data
Definition at line 256 of file linalg.h.
Referenced by spams::SpMatrix< T >::convert(), spams::SpMatrix< T >::convert2(), spams::MatrixToUtlMatrix(), spams::MatrixToVnlMatrix(), and spams::Matrix< T >::setData().
|
inlinevirtual |
XtX = A'*A.
Implements spams::AbstractMatrixB< T >.
Definition at line 1959 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, CblasColMajor, CblasTrans, CblasUpper, spams::Matrix< T >::fillSymmetric(), and spams::Matrix< T >::resize().
Referenced by spams::Matrix< T >::clean(), spams::FISTA::Rank< T >::eval(), spams::ist(), spams::ist_groupLasso(), spams::Matrix< T >::NadarayaWatson(), spams::ProdMatrix< T >::setMatrices(), spams::Matrix< T >::singularValues(), spams::somp(), and spams::Matrix< T >::svd().
|
inline |
XXt = A*A'.
XXt = A*At.
Definition at line 1967 of file linalg.h.
References spams::Matrix< T >::_m, spams::Matrix< T >::_n, spams::Matrix< T >::_X, CblasColMajor, CblasNoTrans, CblasUpper, spams::Matrix< T >::fillSymmetric(), and spams::Matrix< T >::resize().
Referenced by spams::coreSOMP(), spams::FISTA::Rank< T >::eval(), spams::Matrix< T >::singularValues(), and spams::Matrix< T >::svd().
|
protected |
is the data allocation external or not
Definition at line 538 of file linalg.h.
Referenced by spams::Matrix< T >::clear(), spams::Matrix< T >::resize(), and spams::Matrix< T >::setData().
|
protected |
number of rows
Definition at line 542 of file linalg.h.
Referenced by spams::Matrix< T >::add(), spams::Matrix< T >::add_rawCol(), spams::Matrix< T >::addDiag(), spams::Matrix< T >::addRow(), spams::Matrix< T >::asum(), spams::Matrix< T >::blockThrshold(), spams::Matrix< T >::center(), spams::Matrix< T >::center_rows(), spams::Matrix< T >::clear(), spams::Matrix< T >::copy(), spams::Matrix< T >::copyCol(), spams::Matrix< T >::copyRow(), spams::Matrix< T >::diag(), spams::Matrix< T >::div_elementWise(), spams::Matrix< T >::dot(), spams::Matrix< T >::drop(), spams::Matrix< T >::eigLargestMagnSym(), spams::Matrix< T >::eigLargestSymApprox(), spams::Matrix< T >::exp(), spams::Matrix< T >::extract_rawCol(), spams::Matrix< T >::extractRow(), spams::Matrix< T >::eye(), spams::Matrix< T >::fillRow(), spams::Matrix< T >::fillSymmetric(), spams::Matrix< T >::fillSymmetric2(), spams::Matrix< T >::fmax(), spams::Matrix< T >::fmaxval(), spams::Matrix< T >::fmin(), spams::Matrix< T >::getGroup(), spams::Matrix< T >::incrDiag(), spams::Matrix< T >::Invsqrt(), spams::Matrix< T >::isNormalized(), spams::Matrix< T >::Matrix(), spams::Matrix< T >::meanRow(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::Matrix< T >::mult_elementWise(), spams::Matrix< T >::multDiagLeft(), spams::Matrix< T >::multDiagRight(), spams::Matrix< T >::multTrans(), spams::Matrix< T >::NadarayaWatson(), spams::Matrix< T >::neg(), spams::Matrix< T >::norm_2_rows(), spams::Matrix< T >::norm_2sq_rows(), spams::Matrix< T >::norm_inf_rows(), spams::Matrix< T >::norm_l1_rows(), spams::Matrix< T >::normalize(), spams::Matrix< T >::normalize2(), spams::Matrix< T >::normF(), spams::Matrix< T >::normFsq(), spams::Matrix< T >::operator()(), spams::Matrix< T >::print(), spams::Matrix< T >::quad(), spams::Matrix< T >::quad_mult(), spams::Matrix< T >::rank1Update(), spams::Matrix< T >::rank1Update_mult(), spams::Matrix< T >::refCol(), spams::Matrix< T >::refSubMat(), spams::Matrix< T >::resize(), spams::Matrix< T >::scal(), spams::Matrix< T >::set(), spams::Matrix< T >::setData(), spams::Matrix< T >::setDiag(), spams::Matrix< T >::setRow(), spams::Matrix< T >::setZeros(), spams::Matrix< T >::singularValues(), spams::Matrix< T >::sparseProject(), spams::Matrix< T >::Sqrt(), spams::Matrix< T >::sub(), spams::Matrix< T >::sum_cols(), spams::Matrix< T >::svd(), spams::Matrix< T >::svdRankOne(), spams::Matrix< T >::toSparse(), spams::Matrix< T >::toSparseTrans(), spams::Matrix< T >::toVect(), spams::Matrix< T >::trace(), spams::Matrix< T >::transpose(), spams::Matrix< T >::unwhiten(), spams::Matrix< T >::upperTriXXt(), spams::Matrix< T >::whiten(), spams::SpMatrix< T >::wXAt(), spams::SpMatrix< T >::XAt(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().
|
protected |
number of columns
Definition at line 544 of file linalg.h.
Referenced by spams::Matrix< T >::add(), spams::Matrix< T >::add_rawCol(), spams::Matrix< T >::addDiag(), spams::Matrix< T >::addRow(), spams::Matrix< T >::addToCols(), spams::Matrix< T >::addVecToCols(), spams::Matrix< T >::asum(), spams::Matrix< T >::blockThrshold(), spams::Matrix< T >::center(), spams::Matrix< T >::center_rows(), spams::Matrix< T >::clean(), spams::Matrix< T >::clear(), spams::Matrix< T >::copy(), spams::Matrix< T >::copyCol(), spams::Matrix< T >::copyRow(), spams::Matrix< T >::diag(), spams::Matrix< T >::div_elementWise(), spams::Matrix< T >::dot(), spams::Matrix< T >::drop(), spams::Matrix< T >::exp(), spams::Matrix< T >::extract_rawCol(), spams::Matrix< T >::extractRow(), spams::Matrix< T >::eye(), spams::Matrix< T >::fillRow(), spams::Matrix< T >::fillSymmetric(), spams::Matrix< T >::fillSymmetric2(), spams::Matrix< T >::fmax(), spams::Matrix< T >::fmaxval(), spams::Matrix< T >::fmin(), spams::Matrix< T >::incrDiag(), spams::Matrix< T >::Invsqrt(), spams::Matrix< T >::invSym(), spams::Matrix< T >::isNormalized(), spams::Matrix< T >::Matrix(), spams::Matrix< T >::meanCol(), spams::Matrix< T >::merge(), spams::Matrix< T >::mult(), spams::Matrix< T >::mult_elementWise(), spams::Matrix< T >::multDiagLeft(), spams::Matrix< T >::multDiagRight(), spams::Matrix< T >::multTrans(), spams::Matrix< T >::NadarayaWatson(), spams::Matrix< T >::neg(), spams::Matrix< T >::norm_1_2_col(), spams::Matrix< T >::norm_2_cols(), spams::Matrix< T >::norm_2_rows(), spams::Matrix< T >::norm_2sq_cols(), spams::Matrix< T >::norm_2sq_rows(), spams::Matrix< T >::norm_inf_2_col(), spams::Matrix< T >::norm_inf_cols(), spams::Matrix< T >::norm_inf_rows(), spams::Matrix< T >::norm_l1_rows(), spams::Matrix< T >::normalize(), spams::Matrix< T >::normalize2(), spams::Matrix< T >::normF(), spams::Matrix< T >::normFsq(), spams::Matrix< T >::print(), spams::Matrix< T >::quad_mult(), spams::Matrix< T >::rank1Update(), spams::Matrix< T >::rank1Update_mult(), spams::Matrix< T >::refCol(), spams::Matrix< T >::resize(), spams::Matrix< T >::scal(), spams::Matrix< T >::set(), spams::Matrix< T >::setData(), spams::Matrix< T >::setDiag(), spams::Matrix< T >::setRow(), spams::Matrix< T >::setZeros(), spams::Matrix< T >::singularValues(), spams::Matrix< T >::sparseProject(), spams::Matrix< T >::Sqrt(), spams::Matrix< T >::sub(), spams::Matrix< T >::subMatrixSym(), spams::Matrix< T >::sum_cols(), spams::Matrix< T >::svd(), spams::Matrix< T >::svdRankOne(), spams::Matrix< T >::toSparse(), spams::Matrix< T >::toSparseTrans(), spams::Matrix< T >::toVect(), spams::Matrix< T >::trace(), spams::Matrix< T >::transpose(), spams::Matrix< T >::unwhiten(), spams::Matrix< T >::whiten(), spams::SpMatrix< T >::wXAt(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().
|
protected |
pointer to the data
Definition at line 540 of file linalg.h.
Referenced by spams::SpMatrix< T >::AAt(), spams::Matrix< T >::add(), spams::Matrix< T >::add_rawCol(), spams::Matrix< T >::addDiag(), spams::Matrix< T >::addRow(), spams::Matrix< T >::asum(), spams::Matrix< T >::blockThrshold(), spams::Matrix< T >::center_rows(), spams::Matrix< T >::clean(), spams::Matrix< T >::clear(), spams::Matrix< T >::copy(), spams::Matrix< T >::copyCol(), spams::Matrix< T >::copyRow(), spams::Matrix< T >::diag(), spams::Matrix< T >::div_elementWise(), spams::Matrix< T >::dot(), spams::Matrix< T >::drop(), spams::Matrix< T >::eigLargestSymApprox(), spams::Matrix< T >::exp(), spams::Matrix< T >::extract_rawCol(), spams::Matrix< T >::extractRow(), spams::Matrix< T >::eye(), spams::Matrix< T >::fillRow(), spams::Matrix< T >::fillSymmetric(), spams::Matrix< T >::fillSymmetric2(), spams::Matrix< T >::fmax(), spams::Matrix< T >::fmaxval(), spams::Matrix< T >::fmin(), spams::Matrix< T >::getGroup(), spams::Matrix< T >::incrDiag(), spams::Matrix< T >::Invsqrt(), spams::Matrix< T >::invSym(), spams::Matrix< T >::isNormalized(), spams::Matrix< T >::Matrix(), spams::Matrix< T >::mult(), spams::Matrix< T >::mult_elementWise(), spams::Matrix< T >::multDiagLeft(), spams::Matrix< T >::multDiagRight(), spams::Matrix< T >::multTrans(), spams::Matrix< T >::neg(), spams::Matrix< T >::norm_2_rows(), spams::Matrix< T >::norm_2sq_rows(), spams::Matrix< T >::norm_inf_rows(), spams::Matrix< T >::norm_l1_rows(), spams::Matrix< T >::normalize(), spams::Matrix< T >::normalize2(), spams::Matrix< T >::normF(), spams::Matrix< T >::normFsq(), spams::Matrix< T >::operator()(), spams::Matrix< T >::print(), spams::Matrix< T >::quad(), spams::Matrix< T >::quad_mult(), spams::Matrix< T >::rank1Update(), spams::Matrix< T >::rank1Update_mult(), spams::Matrix< T >::refCol(), spams::Matrix< T >::refSubMat(), spams::Matrix< T >::resize(), spams::Matrix< T >::scal(), spams::Matrix< T >::set(), spams::Matrix< T >::setData(), spams::Matrix< T >::setDiag(), spams::Matrix< T >::setRow(), spams::Matrix< T >::setZeros(), spams::Matrix< T >::singularValues(), spams::Matrix< T >::Sqrt(), spams::Matrix< T >::sub(), spams::Matrix< T >::subMatrixSym(), spams::Matrix< T >::svd(), spams::SpMatrix< T >::toFull(), spams::SpMatrix< T >::toFullTrans(), spams::Matrix< T >::toSparse(), spams::Matrix< T >::toSparseTrans(), spams::Matrix< T >::toVect(), spams::Matrix< T >::trace(), spams::Matrix< T >::transpose(), spams::Matrix< T >::unwhiten(), spams::Matrix< T >::upperTriXXt(), spams::SpMatrix< T >::wAAt(), spams::Matrix< T >::whiten(), spams::SpMatrix< T >::wXAt(), spams::SpMatrix< T >::XAt(), spams::Matrix< T >::XtX(), and spams::Matrix< T >::XXt().