CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/RecoLocalTracker/SiStripRecHitConverter/interface/CrosstalkInversion.h

Go to the documentation of this file.
00001 #ifndef SiStripRecHitConverter_InverseCrosstalkMatrix_h
00002 #define SiStripRecHitConverter_InverseCrosstalkMatrix_h
00003 
00004 #include <vector>
00005 #include <cmath>
00006 #include <stdint.h>
00007 #include "RecoLocalTracker/SiStripRecHitConverter/interface/ErrorPropogationTypes.h"
00008 
00009 namespace reco {
00010 
00011   class InverseCrosstalkMatrix {
00012   public:
00013     InverseCrosstalkMatrix(const unsigned N, const float x);
00014     float operator()(const unsigned i, const unsigned j) const;
00015     
00016   private:
00017     float element(const unsigned, const unsigned) const;
00018     const unsigned N;
00019     const double sq, lambdaP, lambdaM, denominator;
00020     
00021   public:
00022     static std::vector<stats_t<float> > unfold(const std::vector<uint8_t>& q, const float x);
00023     
00024   };
00025 }
00026 #endif