20 #include "../config.h" 21 #ifdef __MATRIXWRAPPER_LTI__ 23 #ifndef __MATRIX_LTI__ 24 #define __MATRIX_LTI__ 28 #include <ltilib/ltiMatrix.h> 35 #define ltiMatrix lti::matrix<double> 36 #define ltiSymmetricMatrix lti::matrix<double> 37 #define ltiColumnVector lti::vector<double> 59 Matrix(
const ltiMatrix & a);
61 virtual unsigned int rows()
const;
62 virtual unsigned int columns()
const;
63 virtual double&
operator()(
unsigned int,
unsigned int);
64 virtual const double operator()(
unsigned int,
unsigned int)
const;
90 virtual void resize(
unsigned int i,
unsigned int j,
91 bool copy=
true,
bool initialize=
true);
96 virtual MyMatrix sub(
int i_start,
int i_end,
int j_start ,
int j_end)
const;
102 class MySymmetricMatrix :
public ltiSymmetricMatrix,
public SymmetricMatrix_Wrapper
107 SymmetricMatrix(
int n);
110 SymmetricMatrix(
const SymmetricMatrix& a);
111 SymmetricMatrix(
const ltiSymmetricMatrix & a);
114 virtual ~SymmetricMatrix();
117 virtual unsigned int rows()
const;
118 virtual unsigned int columns()
const;
121 virtual double determinant()
const;
123 virtual double& operator()(
unsigned int,
unsigned int);
124 virtual const double operator()(
unsigned int,
unsigned int)
const;
152 virtual void resize(
unsigned int i,
bool copy=
true,
bool initialize=
true);
153 virtual MyMatrix sub(
int i_start,
int i_end,
int j_start ,
int j_end)
const;
virtual MyMatrix & operator-=(double a)=0
MATRIX - SCALAR operator.
virtual MyMatrix operator+(double b) const =0
MATRIX - SCALAR operator.
virtual MyMatrix operator/(double b) const =0
MATRIX - SCALAR operator.
virtual MyMatrix sub(int i_start, int i_end, int j_start, int j_end) const =0
get sub matrix
virtual bool operator==(const MyMatrix &a) const =0
Operator ==.
virtual MyMatrix inverse() const =0
get inverse
virtual unsigned int rows() const =0
Ask Number of Rows.
virtual MyColumnVector columnCopy(unsigned int c) const =0
Get column from matrix.
virtual MyMatrix & operator*=(double b)=0
MATRIX - SCALAR operator.
virtual MyMatrix operator-(double b) const =0
MATRIX - SCALAR operator.
virtual MyMatrix & operator/=(double b)=0
MATRIX - SCALAR operator.
virtual MyMatrix operator*(double b) const =0
MATRIX - SCALAR operator.
virtual MyMatrix transpose() const =0
get transpose
virtual double determinant() const =0
get determinant
virtual int convertToSymmetricMatrix(MySymmetricMatrix &sym)=0
Turn matrix into Symmetric one.
virtual MyRowVector rowCopy(unsigned int r) const =0
Get row from matrix.
#define MySymmetricMatrix
virtual double & operator()(unsigned int, unsigned int)=0
Operator ()
virtual MyMatrix & operator+=(double a)=0
MATRIX - SCALAR operator.
virtual MyMatrix & operator=(double a)=0
Set all elements of the Matrix equal to a.
virtual void resize(unsigned int i, unsigned int j, bool copy=true, bool initialize=true)=0
resize matrix
virtual unsigned int columns() const =0
Ask Number of Columns.