Group acts-algebra-types¶
- group acts-algebra-types
These are the default vector/matrix types that should be used throughout the codebase.
They all use the common Acts scalar type but support variable size either at compile- or runtime.
Eigen does not have a distinct type for symmetric matrices. A typedef for fixed-size matrices is still defined to simplify definition (one template size vs two template size for generic matrices) and to clarify semantic meaning in interfaces. It also ensures that the matrix is square. However, the user is responsible for ensuring that the values are symmetric.
Without a distinct type for symmetric matrices, there is no way to provide any conditions e.g. square size, for the dynamic-sized case. Consequently, no dynamic-sized symmetric matrix type is defined. Use the
ActsDynamicMatrix
instead.Typedefs
-
using ActsDynamicMatrix = Eigen::Matrix<ActsScalar, Eigen::Dynamic, Eigen::Dynamic>¶
-
using ActsDynamicVector = Eigen::Matrix<ActsScalar, Eigen::Dynamic, 1>¶
-
using ActsMatrix = Eigen::Matrix<ActsScalar, kRows, kCols>¶
-
using ActsScalar = double¶
Common scalar (floating point type used for the default algebra types.
Defaults to
double
but can be customized by the user.
-
using ActsSymMatrix = Eigen::Matrix<ActsScalar, kSize, kSize>¶
-
using ActsVector = Eigen::Matrix<ActsScalar, kSize, 1>¶
-
using ActsDynamicMatrix = Eigen::Matrix<ActsScalar, Eigen::Dynamic, Eigen::Dynamic>¶