CMS 3D CMS Logo

EigenMatrixTypes.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_EcalRecAlgos_EigenMatrixTypes_h
2 #define RecoLocalCalo_EcalRecAlgos_EigenMatrixTypes_h
3 
4 #include <Eigen/Dense>
5 #include <array>
6 
10 constexpr int NGains = 3;
11 
12 typedef Eigen::Matrix<double,SampleVectorSize,1> SampleVector;
13 typedef Eigen::Matrix<double,FullSampleVectorSize,1> FullSampleVector;
14 typedef Eigen::Matrix<double,Eigen::Dynamic,1,0,PulseVectorSize,1> PulseVector;
15 typedef Eigen::Matrix<char,Eigen::Dynamic,1,0,PulseVectorSize,1> BXVector;
16 typedef Eigen::Matrix<char,SampleVectorSize,1> SampleGainVector;
17 typedef Eigen::Matrix<double,SampleVectorSize,SampleVectorSize> SampleMatrix;
18 typedef Eigen::Matrix<double,FullSampleVectorSize,FullSampleVectorSize> FullSampleMatrix;
19 typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,0,PulseVectorSize,PulseVectorSize> PulseMatrix;
20 typedef Eigen::Matrix<double,SampleVectorSize,Eigen::Dynamic,0,SampleVectorSize,PulseVectorSize> SamplePulseMatrix;
21 typedef Eigen::LLT<SampleMatrix> SampleDecompLLT;
22 typedef Eigen::LLT<PulseMatrix> PulseDecompLLT;
23 typedef Eigen::LDLT<PulseMatrix> PulseDecompLDLT;
24 
25 typedef Eigen::Matrix<double,1,1> SingleMatrix;
26 typedef Eigen::Matrix<double,1,1> SingleVector;
27 
28 typedef std::array<SampleMatrix,NGains> SampleMatrixGainArray;
29 
30 #endif
Eigen::LLT< PulseMatrix > PulseDecompLLT
std::array< SampleMatrix, NGains > SampleMatrixGainArray
Eigen::LLT< SampleMatrix > SampleDecompLLT
Eigen::LDLT< PulseMatrix > PulseDecompLDLT
constexpr int FullSampleVectorSize
Eigen::Matrix< char, SampleVectorSize, 1 > SampleGainVector
Eigen::Matrix< double, FullSampleVectorSize, 1 > FullSampleVector
Eigen::Matrix< double, 1, 1 > SingleVector
Eigen::Matrix< double, SampleVectorSize, 1 > SampleVector
Eigen::Matrix< char, Eigen::Dynamic, 1, 0, PulseVectorSize, 1 > BXVector
constexpr int NGains
Eigen::Matrix< double, FullSampleVectorSize, FullSampleVectorSize > FullSampleMatrix
constexpr int SampleVectorSize
Eigen::Matrix< double, SampleVectorSize, SampleVectorSize > SampleMatrix
Eigen::Matrix< double, Eigen::Dynamic, 1, 0, PulseVectorSize, 1 > PulseVector
Eigen::Matrix< double, SampleVectorSize, Eigen::Dynamic, 0, SampleVectorSize, PulseVectorSize > SamplePulseMatrix
constexpr int PulseVectorSize
Eigen::Matrix< double, 1, 1 > SingleMatrix
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, 0, PulseVectorSize, PulseVectorSize > PulseMatrix
#define constexpr