Drake
eigen_types.h
Go to the documentation of this file.
1 
5 #pragma once
6 
7 #include <Eigen/Dense>
8 #include <unsupported/Eigen/AutoDiff>
9 
10 #include "drake/common/constants.h"
11 
12 namespace drake {
13 
15 template <typename Scalar>
16 using Vector1 = Eigen::Matrix<Scalar, 1, 1>;
17 
19 template <typename Scalar>
20 using Vector2 = Eigen::Matrix<Scalar, 2, 1>;
21 
23 template <typename Scalar>
24 using Vector3 = Eigen::Matrix<Scalar, 3, 1>;
25 
27 template <typename Scalar>
28 using Vector4 = Eigen::Matrix<Scalar, 4, 1>;
29 
31 template <typename Scalar>
32 using Vector6 = Eigen::Matrix<Scalar, 6, 1>;
33 
35 template <typename Scalar>
36 using VectorX = Eigen::Matrix<Scalar, Eigen::Dynamic, 1>;
37 
39 template <typename Scalar>
40 using Matrix3 = Eigen::Matrix<Scalar, 3, 3>;
41 
43 template <typename Scalar>
44 using Matrix6 = Eigen::Matrix<Scalar, 6, 6>;
45 
47 template <typename Scalar>
48 using Matrix3X = Eigen::Matrix<Scalar, 3, Eigen::Dynamic>;
49 
51 template <typename Scalar>
52 using Matrix4X = Eigen::Matrix<Scalar, 4, Eigen::Dynamic>;
53 
55 template <typename Scalar>
56 using MatrixX = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>;
57 
59 using VectorUpTo73d = Eigen::Matrix<double, Eigen::Dynamic, 1, 0, 73, 1>;
60 
62 using AutoDiffUpTo73d = Eigen::AutoDiffScalar<VectorUpTo73d>;
63 
65 using AutoDiffXd = Eigen::AutoDiffScalar<Eigen::VectorXd>;
66 
68 template <typename Scalar>
69 using TwistVector = Eigen::Matrix<Scalar, kTwistSize, 1>;
70 
72 template <typename Scalar>
73 using TwistMatrix = Eigen::Matrix<Scalar, kTwistSize, Eigen::Dynamic>;
74 
76 template <typename Scalar>
77 using SquareTwistMatrix = Eigen::Matrix<Scalar, kTwistSize, kTwistSize>;
78 
79 } // namespace drake
Eigen::Matrix< double, Eigen::Dynamic, 1, 0, 73, 1 > VectorUpTo73d
A column vector of dynamic size, up to a maximum of 73 elements.
Definition: eigen_types.h:59
Eigen::AutoDiffScalar< Eigen::VectorXd > AutoDiffXd
An autodiff variable with a dynamic number of partials.
Definition: eigen_types.h:65
Eigen::Matrix< Scalar, 6, 6 > Matrix6
A matrix of 3 rows and 3 columns, templated on scalar type.
Definition: eigen_types.h:44
Eigen::Matrix< Scalar, 4, 1 > Vector4
A column vector of size 4, templated on scalar type.
Definition: eigen_types.h:28
Eigen::AutoDiffScalar< VectorUpTo73d > AutoDiffUpTo73d
An autodiff variable with a dynamic number of partials, up to 73 maximum.
Definition: eigen_types.h:62
Definition: constants.h:3
Eigen::Matrix< Scalar, 4, Eigen::Dynamic > Matrix4X
A matrix of 4 rows, dynamic columns, templated on scalar type.
Definition: eigen_types.h:52
Eigen::Matrix< Scalar, kTwistSize, Eigen::Dynamic > TwistMatrix
A matrix with one twist per column, and dynamically many columns.
Definition: eigen_types.h:73
Eigen::Matrix< Scalar, 2, 1 > Vector2
A column vector of size 2, templated on scalar type.
Definition: eigen_types.h:20
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > VectorX
A column vector of any size, templated on scalar type.
Definition: eigen_types.h:36
Eigen::Matrix< Scalar, 1, 1 > Vector1
A column vector of size 1 (a scalar), templated on scalar type.
Definition: eigen_types.h:16
Eigen::Matrix< Scalar, 3, 1 > Vector3
A column vector of size 3, templated on scalar type.
Definition: eigen_types.h:24
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > MatrixX
A matrix of dynamic size, templated on scalar type.
Definition: eigen_types.h:56
Eigen::Matrix< Scalar, kTwistSize, 1 > TwistVector
A column vector consisting of one twist.
Definition: eigen_types.h:69
Eigen::Matrix< Scalar, 6, 1 > Vector6
A column vector of size 6.
Definition: eigen_types.h:32
Eigen::Matrix< Scalar, 3, 3 > Matrix3
A matrix of 3 rows and 3 columns, templated on scalar type.
Definition: eigen_types.h:40
Eigen::Matrix< Scalar, 3, Eigen::Dynamic > Matrix3X
A matrix of 3 rows, dynamic columns, templated on scalar type.
Definition: eigen_types.h:48
Eigen::Matrix< Scalar, kTwistSize, kTwistSize > SquareTwistMatrix
A six-by-six matrix.
Definition: eigen_types.h:77