00001
00002
00004
00005
00006 #ifndef EVENT_EVENTPRIMITIVES_H
00007 #define EVENT_EVENTPRIMITIVES_H
00008
00009 #define EIGEN_MATRIXBASE_PLUGIN "EventPrimitives/AmgMatrixPlugin.h"
00010 #define EIGEN_MATRIX_PLUGIN "EventPrimitives/SymmetricMatrixHelpers.h"
00011 #define EIGEN_TRANSFORM_PLUGIN "EventPrimitives/AmgTransformPlugin.h"
00012
00013 #include <unistd.h>
00014 #include <Eigen/Core>
00015 #include <Eigen/Dense>
00016
00017
00018
00019
00020
00021
00022
00023 namespace Amg {
00024
00026 typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> MatrixX;
00027 typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> SymMatrixX;
00028
00030 typedef Eigen::Matrix<double, Eigen::Dynamic, 1> VectorX;
00031
00033 #ifndef AmgMatrixDef
00034 #define AmgMatrixDef
00035 #define AmgMatrix(rows, cols) Eigen::Matrix<double,rows,cols,0,rows,cols>
00036 #define AmgSymMatrix(dim) Eigen::Matrix<double,dim,dim,0,dim,dim>
00037 #endif
00038
00039 #ifndef AmgVectorDef
00040 #define AmgVectorDef
00041 #define AmgVector(rows) Eigen::Matrix<double, rows, 1, 0, rows, 1>
00042 #define AmgRowVector(cols) Eigen::Matrix<double, 1, cols, 0, 1, cols>
00043 #endif
00044
00045
00046 }
00047
00048 #endif