22 #ifndef var_square_matrix_h
23 #define var_square_matrix_h
25 #include "fixed_general_matrix.h"
54 SquareMatrix(
int m, Init ini=INIT,
const AT &a=0) : Matrix<General,Var,Var,AT>(m,m,ini,a) { }
55 SquareMatrix(
int m, Eye ini,
const AT &a=1) : Matrix<General,Var,Var,AT>(m,m,ini,a) { }
57 SquareMatrix(
const char *str) : Matrix<General,Var,Var,AT>(str) { }
63 template<
class Type,
class Row,
class Col>
71 SquareMatrix<Var,AT>& resize() {
72 Matrix<General,Var,Var,AT>::resize();
76 SquareMatrix<Var,AT>& resize(
int m, Noinit) {
77 Matrix<General,Var,Var,AT>::resize(m,m,Noinit());
81 SquareMatrix<Var,AT>& resize(
int m, Init ini=INIT,
const AT &a=0) {
82 Matrix<General,Var,Var,AT>::resize(m,m,ini,a);
86 SquareMatrix<Var,AT>& resize(
int m, Eye ini,
const AT &a=1) {
87 Matrix<General,Var,Var,AT>::resize(m,m,ini,a);
115 inline operator std::vector<std::vector<AT> >();
122 inline const SquareMatrix<Var,AT> SquareMatrix<Var,AT>::T()
const {
123 SquareMatrix<Var,AT> A(size(),NONINIT);
124 for(
int i=0; i<M; i++)
125 for(
int j=0; j<M; j++)
132 std::vector<std::vector<AT> > ret(size());
133 for(
int r=0; r<size(); r++) {
134 ret[r].resize(size());
135 for(
int c=0; c<size(); c++)
This is the basic matrix class for arbitrary matrices.
Definition: matrix.h:56
SquareMatrix(const Matrix< Type, Row, Col, AT > &A)
Copy Constructor.
Definition: var_square_matrix.h:64
SquareMatrix()
Standard constructor.
Definition: var_square_matrix.h:48
SquareMatrix< Var, AT > & operator=(const Matrix< Type, Row, Col, AT > &A)
Copy operator.
Definition: var_square_matrix.h:97
This is a matrix class of general quadratic matrices.
Definition: var_square_matrix.h:38
Basic shape class for matrices.
Definition: types.h:100
int size() const
Size.
Definition: var_square_matrix.h:106