All MatrixMN matrices now defined
parent
4b2040fec6
commit
e6877dc27f
|
|
@ -38,8 +38,18 @@ typedef Eigen::MatrixXd Matrix;
|
|||
typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> MatrixRowMajor;
|
||||
|
||||
// Create handy typedefs and constants for square-size matrices
|
||||
// MatrixMN, MatrixN = MatrixNN, I_NxN, and Z_NxN, for M,N=1..9
|
||||
#define GTSAM_MAKE_TYPEDEFS(SIZE, SUFFIX) \
|
||||
typedef Eigen::Matrix<double, SIZE, SIZE> Matrix##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 1, SIZE> Matrix1##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 2, SIZE> Matrix2##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 3, SIZE> Matrix3##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 4, SIZE> Matrix4##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 5, SIZE> Matrix5##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 6, SIZE> Matrix6##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 7, SIZE> Matrix7##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 8, SIZE> Matrix8##SUFFIX; \
|
||||
typedef Eigen::Matrix<double, 9, SIZE> Matrix9##SUFFIX; \
|
||||
static const Eigen::MatrixBase<Matrix##SUFFIX>::IdentityReturnType I_##SUFFIX##x##SUFFIX = Matrix##SUFFIX::Identity(); \
|
||||
static const Eigen::MatrixBase<Matrix##SUFFIX>::ConstantReturnType Z_##SUFFIX##x##SUFFIX = Matrix##SUFFIX::Zero();
|
||||
|
||||
|
|
@ -53,34 +63,6 @@ GTSAM_MAKE_TYPEDEFS(7,7);
|
|||
GTSAM_MAKE_TYPEDEFS(8,8);
|
||||
GTSAM_MAKE_TYPEDEFS(9,9);
|
||||
|
||||
typedef Eigen::Matrix<double,1,2> Matrix12;
|
||||
typedef Eigen::Matrix<double,1,3> Matrix13;
|
||||
typedef Eigen::Matrix<double,1,4> Matrix14;
|
||||
typedef Eigen::Matrix<double,1,5> Matrix15;
|
||||
typedef Eigen::Matrix<double,1,6> Matrix16;
|
||||
|
||||
typedef Eigen::Matrix<double,2,1> Matrix21;
|
||||
typedef Eigen::Matrix<double,3,1> Matrix31;
|
||||
typedef Eigen::Matrix<double,4,1> Matrix41;
|
||||
typedef Eigen::Matrix<double,5,1> Matrix51;
|
||||
typedef Eigen::Matrix<double,6,1> Matrix61;
|
||||
|
||||
typedef Eigen::Matrix<double,2,3> Matrix23;
|
||||
typedef Eigen::Matrix<double,2,4> Matrix24;
|
||||
typedef Eigen::Matrix<double,2,5> Matrix25;
|
||||
typedef Eigen::Matrix<double,2,6> Matrix26;
|
||||
typedef Eigen::Matrix<double,2,7> Matrix27;
|
||||
typedef Eigen::Matrix<double,2,8> Matrix28;
|
||||
typedef Eigen::Matrix<double,2,9> Matrix29;
|
||||
|
||||
typedef Eigen::Matrix<double,3,2> Matrix32;
|
||||
typedef Eigen::Matrix<double,3,4> Matrix34;
|
||||
typedef Eigen::Matrix<double,3,5> Matrix35;
|
||||
typedef Eigen::Matrix<double,3,6> Matrix36;
|
||||
typedef Eigen::Matrix<double,3,7> Matrix37;
|
||||
typedef Eigen::Matrix<double,3,8> Matrix38;
|
||||
typedef Eigen::Matrix<double,3,9> Matrix39;
|
||||
|
||||
// Matrix expressions for accessing parts of matrices
|
||||
typedef Eigen::Block<Matrix> SubMatrix;
|
||||
typedef Eigen::Block<const Matrix> ConstSubMatrix;
|
||||
|
|
|
|||
Loading…
Reference in New Issue