#include <CMatrix.h>
Public Member Functions | |
void | clear () |
CMatrix (const CVector< T > &v) | |
CMatrix (const CMatrix &v) | |
CMatrix (int rows, int columns) | |
CMatrix () | |
int | columns () const |
void | copyColumn (int j, const CVector< T > &v) |
void | copyFrom (const T *data) |
void | copyTo (T *data) const |
T * | data () |
CMatrix< T > & | daxpy (const CMatrix &v, const double alpha) |
bool | empty (T eps) const |
bool | equals (const CMatrix< T > &v, T eps) const |
T | get (int i, int j) const |
T & | get (int i, int j) |
CVector< T > | getColumn (int j) const |
CVector< T > | getRow (int i) const |
CMatrix< T > | operator * (const T &v) const |
CMatrix | operator * (const CMatrix &v) const |
CVector< T > | operator * (const CVector< T > &v) const |
T | operator() (int i, int j) const |
T & | operator() (int i, int j) |
CMatrix< T > & | operator+= (const CMatrix< T > &v) |
CMatrix< T > | operator/ (const T &v) const |
CMatrix< T > & | operator= (const CMatrix< T > &v) |
void | printFloat (FILE *fp=stdout) |
template<> | |
CMatrix< double > | pseudoinverse () const |
CMatrix< double > | pseudoinverse () const |
int | rows () const |
CVector< T > | solveLinearSystem (const CVector< T > &b) const |
T | sumsqr () const |
CVector< T > | symmetricEigenvalues () |
CVector< T > | symmetricEigenvectors (CMatrix &evecs, int maxVec, int minVec) |
template<> | |
double | symmetricLogDeterminant (double epsilon) |
double | symmetricLogDeterminant (double evThresh=0.01) |
template<> | |
double | symmetricLogDeterminantAbs (double epsilon) |
double | symmetricLogDeterminantAbs (double evThresh=0.01) |
template<> | |
CMatrix< double > | symmetricPseudoinverse () |
CMatrix< double > | symmetricPseudoinverse () |
CMatrix< T > | transpose () const |
virtual | ~CMatrix () |
Static Public Member Functions | |
static CMatrix< T > | outer (const CVector< T > &v1, const CVector< T > &v2) |
Private Member Functions | |
CMatrix (int rows, int columns, T *data, bool ownsData) | |
Private Attributes | |
int | _columns |
T * | _data |
bool | _ownsData |
int | _rows |
CMatrix | ( | ) | [inline] |
CMatrix | ( | int | rows, | |
int | columns | |||
) | [inline] |
virtual ~CMatrix | ( | ) | [inline, virtual] |
CMatrix | ( | int | rows, | |
int | columns, | |||
T * | data, | |||
bool | ownsData | |||
) | [inline, private] |
void clear | ( | ) | [inline] |
int columns | ( | ) | const [inline] |
void copyColumn | ( | int | j, | |
const CVector< T > & | v | |||
) | [inline] |
void copyFrom | ( | const T * | data | ) | [inline] |
void copyTo | ( | T * | data | ) | const [inline] |
T* data | ( | ) | [inline] |
bool empty | ( | T | eps | ) | const [inline] |
bool equals | ( | const CMatrix< T > & | v, | |
T | eps | |||
) | const [inline] |
T get | ( | int | i, | |
int | j | |||
) | const [inline] |
T & get | ( | int | i, | |
int | j | |||
) | [inline] |
CVector< T > getColumn | ( | int | j | ) | const [inline] |
CVector< T > getRow | ( | int | i | ) | const [inline] |
CMatrix< T > operator * | ( | const T & | v | ) | const [inline] |
T operator() | ( | int | i, | |
int | j | |||
) | const [inline] |
T & operator() | ( | int | i, | |
int | j | |||
) | [inline] |
CMatrix< T > operator/ | ( | const T & | v | ) | const [inline] |
void printFloat | ( | FILE * | fp = stdout |
) | [inline] |
CMatrix< double > pseudoinverse | ( | ) | const [inline] |
CMatrix<double> pseudoinverse | ( | ) | const |
int rows | ( | ) | const [inline] |
T sumsqr | ( | ) | const [inline] |
CVector<T> symmetricEigenvalues | ( | ) |
double symmetricLogDeterminant | ( | double | epsilon | ) | [inline] |
double symmetricLogDeterminant | ( | double | evThresh = 0.01 |
) |
double symmetricLogDeterminantAbs | ( | double | epsilon | ) | [inline] |
double symmetricLogDeterminantAbs | ( | double | evThresh = 0.01 |
) |
CMatrix< double > symmetricPseudoinverse | ( | ) | [inline] |
CMatrix<double> symmetricPseudoinverse | ( | ) |
CMatrix< T > transpose | ( | ) | const [inline] |
int _columns [private] |
T* _data [private] |
bool _ownsData [private] |
int _rows [private] |