34 typedef __int8 int8_t;
35 typedef __int16 int16_t;
36 typedef __int32 int32_t;
37 typedef __int64 int64_t;
38 typedef unsigned __int8 uint8_t;
39 typedef unsigned __int16 uint16_t;
40 typedef unsigned __int32 uint32_t;
41 typedef unsigned __int64 uint64_t;
44 #define endll endl << endl // double end line definition 55 Matrix (
const int32_t
m,
const int32_t
n);
56 Matrix (
const int32_t m,
const int32_t n,
const FLOAT* val_);
64 void getData(
FLOAT* val_,int32_t i1=0,int32_t j1=0,int32_t i2=-1,int32_t j2=-1);
67 Matrix getMat(int32_t i1,int32_t j1,int32_t i2=-1,int32_t j2=-1);
68 void setMat(
const Matrix &M,
const int32_t i,
const int32_t j);
71 void setVal(
FLOAT s,int32_t i1=0,int32_t j1=0,int32_t i2=-1,int32_t j2=-1);
127 void allocateMemory (
const int32_t m_,
const int32_t n_);
128 void releaseMemory ();
bool solve(const Matrix &M, FLOAT eps=1e-20)
Definition: matrix.cpp:413
void setMat(const Matrix &M, const int32_t i, const int32_t j)
Definition: matrix.cpp:103
void zero()
Definition: matrix.cpp:133
Matrix operator-()
Definition: matrix.cpp:331
bool lu(int32_t *idx, FLOAT &d, FLOAT eps=1e-20)
Definition: matrix.cpp:510
static Matrix rotMatY(const FLOAT &angle)
Definition: matrix.cpp:206
FLOAT det()
Definition: matrix.cpp:397
Matrix()
Definition: matrix.cpp:37
Matrix operator~()
Definition: matrix.cpp:339
Matrix operator*(const Matrix &M)
Definition: matrix.cpp:260
double FLOAT
Definition: matrix.h:46
Matrix operator/(const Matrix &M)
Definition: matrix.cpp:284
static Matrix cross(const Matrix &a, const Matrix &b)
Definition: matrix.cpp:363
static Matrix rotMatZ(const FLOAT &angle)
Definition: matrix.cpp:218
void setDiag(FLOAT s, int32_t i1=0, int32_t i2=-1)
Definition: matrix.cpp:127
FLOAT mean()
Definition: matrix.cpp:355
static Matrix reshape(const Matrix &M, int32_t m, int32_t n)
Definition: matrix.cpp:177
static Matrix diag(const Matrix &M)
Definition: matrix.cpp:161
int32_t m
Definition: matrix.h:123
bool inv()
Definition: matrix.cpp:386
int32_t n
Definition: matrix.h:123
void getData(FLOAT *val_, int32_t i1=0, int32_t j1=0, int32_t i2=-1, int32_t j2=-1)
Definition: matrix.cpp:78
static Matrix rotMatX(const FLOAT &angle)
Definition: matrix.cpp:194
friend std::ostream & operator<<(std::ostream &out, const Matrix &M)
Matrix operator+(const Matrix &M)
Definition: matrix.cpp:230
Matrix & operator=(const Matrix &M)
Definition: matrix.cpp:65
void svd(Matrix &U, Matrix &W, Matrix &V)
Definition: matrix.cpp:575
FLOAT l2norm()
Definition: matrix.cpp:347
void setVal(FLOAT s, int32_t i1=0, int32_t j1=0, int32_t i2=-1, int32_t j2=-1)
Definition: matrix.cpp:115
Matrix extractCols(std::vector< int > idx)
Definition: matrix.cpp:137
void eye()
Definition: matrix.cpp:153
Matrix getMat(int32_t i1, int32_t j1, int32_t i2=-1, int32_t j2=-1)
Definition: matrix.cpp:87
FLOAT ** val
Definition: matrix.h:122
~Matrix()
Definition: matrix.cpp:61