This is a matrix class for general matrices. More...
#include <var_general_matrix.h>
Public Member Functions | |
Matrix () | |
Standard constructor. More... | |
Matrix (int m, int n, Noinit) | |
Matrix (int m, int n, Init ini=INIT, const AT &a=0) | |
Matrix (int m, int n, Eye ini, const AT &a=1) | |
Matrix (const Matrix< General, Var, Var, AT > &A) | |
Copy Constructor. More... | |
template<class Row , class Col > | |
Matrix (const Matrix< General, Row, Col, AT > &A) | |
template<class Type , class Row , class Col > | |
Matrix (const Matrix< Type, Row, Col, AT > &A) | |
Matrix (const char *str) | |
String Constructor. More... | |
~Matrix () | |
Destructor. | |
Matrix< General, Var, Var, AT > & | resize () |
Matrix< General, Var, Var, AT > & | resize (int m, int n, Noinit) |
Matrix< General, Var, Var, AT > & | resize (int m, int n, Init ini=INIT, const AT &a=0) |
Matrix< General, Var, Var, AT > & | resize (int m, int n, Eye ini, const AT &a=1) |
Matrix< General, Var, Var, AT > & | operator= (const Matrix< General, Var, Var, AT > &A) |
Assignment operator. More... | |
template<class Type , class Row , class Col > | |
Matrix< General, Var, Var, AT > & | operator= (const Matrix< Type, Row, Col, AT > &A) |
template<class Type , class Row , class Col > | |
Matrix< General, Var, Var, AT > & | operator<< (const Matrix< Type, Row, Col, AT > &A) |
Copy operator. More... | |
AT & | operator() (int i, int j) |
Element operator. More... | |
const AT & | operator() (int i, int j) const |
Element operator. More... | |
AT & | e (int i, int j) |
const AT & | e (int i, int j) const |
Element operator. More... | |
AT & | e (int i) |
const AT & | e (int i) const |
Element operator. More... | |
AT * | operator() () |
Pointer operator. More... | |
const AT * | operator() () const |
Pointer operator. More... | |
int | rows () const |
Number of rows. More... | |
int | cols () const |
Number of columns. More... | |
int | ldim () const |
Leading dimension. More... | |
const CBLAS_TRANSPOSE | blasTrans () const |
Transposed status. More... | |
const CBLAS_ORDER | blasOrder () const |
Storage convention. More... | |
const Matrix< General, Var, Var, AT > | operator() (const Range< Var, Var > &I, const Range< Var, Var > &J) const |
Submatrix operator. More... | |
template<int M1, int M2, int N1, int N2> | |
const Matrix< General, Fixed < M2-M1+1 >, Fixed< N2-N1+1 > , AT > | operator() (const Range< Fixed< M1 >, Fixed< M2 > > &I, const Range< Fixed< N1 >, Fixed< N2 > > &J) const |
template<int M1, int M2> | |
const Matrix< General, Fixed < M2-M1+1 >, Var, AT > | operator() (const Range< Fixed< M1 >, Fixed< M2 > > &I, const Range< Var, Var > &J) const |
template<int N1, int N2> | |
const Matrix< General, Var, Fixed< N2-N1+1 >, AT > | operator() (const Range< Var, Var > &I, const Range< Fixed< N1 >, Fixed< N2 > > &J) const |
const RowVector< Var, AT > | row (int i) const |
const Vector< Var, AT > | col (int j) const |
Matrix< General, Var, Var, AT > & | init (const AT &a=0) |
Initialization. More... | |
Matrix< General, Var, Var, AT > & | init (Init all, const AT &a=0) |
Matrix< General, Var, Var, AT > & | init (Eye eye, const AT &a=1) |
Matrix< General, Var, Var, AT > & | init (Noinit, const AT &a=0) |
operator std::vector< std::vector< AT > > () | |
Cast to std::vector<std::vector<AT> >. More... | |
Matrix (std::vector< std::vector< AT > > m) | |
std::vector<std::vector<AT> > Constructor. Constructs and initializes a matrix with a std::vector<std::vector<AT> > object. An assert checks for constant length of each row. More... | |
const Matrix< General, Var, Var, AT > | T () const |
template<class Row > | |
void | set (int j, const Vector< Row, AT > &x) |
template<class Col > | |
void | set (int i, const RowVector< Col, AT > &x) |
template<class Type , class Row , class Col > | |
void | set (const Range< Var, Var > &I, const Range< Var, Var > &J, const Matrix< Type, Row, Col, AT > &A) |
template<class Row > | |
void | add (int j, const Vector< Row, AT > &x) |
template<class Col > | |
void | add (int i, const RowVector< Col, AT > &x) |
template<class Type , class Row , class Col > | |
void | add (const Range< Var, Var > &I, const Range< Var, Var > &J, const Matrix< Type, Row, Col, AT > &A) |
This is a matrix class for general matrices.
Template class Matrix with shape type General and atomic type AT. The storage form is dense. The template parameter AT defines the atomic type of the matrix. Valid types are int, float, double, complex<float> and complex<double>
|
inline |
Standard constructor.
Constructs a matrix with no size.
|
inline |
Copy Constructor.
Constructs a reference to the matrix A.
A | The matrix that will be referenced. |
fmatvec::Matrix< General, Var, Var, AT >::Matrix | ( | const char * | str | ) |
String Constructor.
Constructs and initializes a matrix with a string in a matlab-like notation. The rows are seperated by semicolons, the columns by commas. For example
constructs the matrix
str | The string the matrix will be initialized with. |
|
inline |
std::vector<std::vector<AT> > Constructor. Constructs and initializes a matrix with a std::vector<std::vector<AT> > object. An assert checks for constant length of each row.
m | The std::vector<std::vector<AT> > the matrix will be initialized with. |
|
inline |
Storage convention.
Returns the blas-conform storage convention. The elements are stored in columnmajor form, i.e. the elements are stored columnwise.
|
inline |
Transposed status.
Returns the blas-conform transposed status.
|
inline |
Number of columns.
|
inline |
Element operator.
See e(int,int)
|
inline |
Element operator.
See e(int,int)
|
inline |
Initialization.
Initializes all elements of the calling matrix with the value given by a.
a | Value all elements will be initialized with. |
|
inline |
Leading dimension.
|
inline |
Cast to std::vector<std::vector<AT> >.
|
inline |
Element operator.
Returns a reference to the element in the i-th row and the j-th column.
i | The i-th row of the matrix |
j | The j-th column of the matrix |
|
inline |
Element operator.
|
inline |
Pointer operator.
Returns the pointer to the first element.
|
inline |
Pointer operator.
See operator()()
|
inline |
Submatrix operator.
Returns a submatrix of the calling matrix. For example
yields
I | Range<Var,Var> containing the starting and the ending row. |
J | Range<Var,Var> containing the starting and the ending column. |
Submatrix operator.
See operator()(const Range<Var,Var>&, const Range<Var,Var>&)
|
inline |
Copy operator.
Copies the matrix given by A.
A | The matrix to be copied. |
|
inline |
Assignment operator.
Copies the matrix given by A.
A | The matrix to be assigned. |
|
inline |
Number of rows.