9 #ifndef EVENT_EVENTPRIMITIVES_H
10 #define EVENT_EVENTPRIMITIVES_H
12 #define EIGEN_MATRIXBASE_PLUGIN "EventPrimitives/AmgMatrixBasePlugin.h"
13 #define EIGEN_TRANSFORM_PLUGIN "EventPrimitives/AmgTransformPlugin.h"
17 #include <Eigen/Dense>
27 using MatrixX = Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>;
28 using SymMatrixX = Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>;
30 using VectorX = Eigen::Matrix<double, Eigen::Dynamic, 1>;
35 template <
int MaxRows,
int MaxCols>
37 Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic, 0, MaxRows, MaxCols>;
41 Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic, 0, MaxDim, MaxDim>;
43 template <
int MaxRows>
44 using VectorMaxX = Eigen::Matrix<double, Eigen::Dynamic, 1, 0, MaxRows, 1>;
49 #define AmgMatrix(rows, cols) Eigen::Matrix<double, rows, cols, 0, rows, cols>
50 #define AmgSymMatrix(dim) Eigen::Matrix<double, dim, dim, 0, dim, dim>
55 #define AmgVector(rows) Eigen::Matrix<double, rows, 1, 0, rows, 1>
56 #define AmgRowVector(cols) Eigen::Matrix<double, 1, cols, Eigen::RowMajor, 1, cols>