CMS 3D CMS Logo

ElectronCalibration.h
Go to the documentation of this file.
1 #ifndef CALIBRATION_ECALCALIBALGOS_ELECTRONCALIBRATION
2 #define CALIBRATION_ECALCALIBALGOS_ELECTRONCALIBRATION
3 
4 // -*- C++ -*-
5 //
6 // Package: ElectronCalibration
7 // Class: ElectronCalibration
8 //
16 //
17 // Original Author: Lorenzo AGOSTINO, Radek Ofierzynski
18 // Created: Tue Jul 18 12:17:01 CEST 2006
19 //
20 //
21 
22 // system include files
23 #include <memory>
24 
25 // user include files
28 
38 #include "TFile.h"
39 #include "TH1.h"
40 #include "TH2.h"
41 
42 // class declaration
43 
45 public:
46  explicit ElectronCalibration(const edm::ParameterSet&);
47  ~ElectronCalibration() override;
48 
49  void analyze(const edm::Event&, const edm::EventSetup&) override;
50  void beginJob() override;
51  void endJob() override;
52 
53 private:
55  EBDetId findMaxHit2(const std::vector<DetId>&, const EBRecHitCollection*);
56 
57  // ----------member data ---------------------------
65  double ElePt_;
66  int maxeta_;
67  int mineta_;
68  int maxphi_;
69  int minphi_;
70  double cut1_;
71  double cut2_;
72  double cut3_;
74  double cutEPCalo1_;
75  double cutEPCalo2_;
76  double cutEPin1_;
77  double cutEPin2_;
78  double cutCalo1_;
79  double cutCalo2_;
80  double cutESeed_;
82 
85 
87 
90  std::vector<float> EnergyVector;
91  std::vector<float> WeightVector;
92  std::vector<std::vector<float> > EventMatrix;
93  std::vector<int> MaxCCeta;
94  std::vector<int> MaxCCphi;
95  std::vector<float> EnergyVectorNoCuts;
96  std::vector<float> WeightVectorNoCuts;
97  std::vector<std::vector<float> > EventMatrixNoCuts;
98  std::vector<int> MaxCCetaNoCuts;
99  std::vector<int> MaxCCphiNoCuts;
101  std::vector<float> solution;
102  std::vector<float> solutionNoCuts;
103  std::vector<float> newCalibs;
104  std::vector<float> oldCalibs;
105 
106  int eventcrystal[171][360];
108 
109  TFile* f;
110 
111  TH1F* e25;
112  TH1F* e9;
113  TH1F* scE;
114  TH1F* trP;
115  TH1F* EoP;
116  TH1F* EoP_all;
117  TH1F* calibs;
118  TH1F* e9Overe25;
119  TH1F* e25OverScE;
120  TH2F* Map;
121  TH1F* E25oP;
122 
123  TH1F* PinOverPout;
125  TH1F* MisCalibs;
126  TH1F* RatioCalibs;
127  TH1F* DiffCalibs;
130 
131  TH1F* e25NoCuts;
132  TH1F* e9NoCuts;
133  TH1F* scENoCuts;
134  TH1F* trPNoCuts;
135  TH1F* EoPNoCuts;
139  TH2F* MapNoCuts;
140  TH1F* E25oPNoCuts;
141  TH2F* Map3Dcalib;
143  TH1F* calibinter;
148 
149  TH2F* GeneralMap;
150 
151  TH2F* MapCor1;
152  TH2F* MapCor2;
153  TH2F* MapCor3;
154  TH2F* MapCor4;
155  TH2F* MapCor5;
156  TH2F* MapCor6;
157  TH2F* MapCor7;
158  TH2F* MapCor8;
159  TH2F* MapCor9;
160  TH2F* MapCor10;
161  TH2F* MapCor11;
162  TH2F* MapCorCalib;
163 
176 
188 
189  TH1F* PinMinPout;
191 
192  TH1F* Error1;
193  TH1F* Error2;
194  TH1F* Error3;
198 
202 
203  TH1F* hadOverEm;
206 };
207 #endif
CalibrationCluster::CalibMap ReducedMap
std::vector< float > WeightVector
edm::InputTag recHitLabel_
void analyze(const edm::Event &, const edm::EventSetup &) override
HouseholderDecomposition * MyHH
std::vector< float > solutionNoCuts
MinL3Algorithm * MyL3Algo1
std::map< EBDetId, unsigned int > CalibMap
void beginJob() override
std::vector< int > MaxCCphiNoCuts
std::vector< int > MaxCCetaNoCuts
std::vector< float > solution
edm::InputTag electronLabel_
std::vector< float > newCalibs
std::vector< float > EnergyVector
ElectronCalibration(const edm::ParameterSet &)
EBDetId findMaxHit(edm::Handle< EBRecHitCollection > &)
std::vector< int > MaxCCphi
std::vector< float > WeightVectorNoCuts
std::vector< std::vector< float > > EventMatrixNoCuts
CalibrationCluster calibCluster
std::vector< std::vector< float > > EventMatrix
EBDetId findMaxHit2(const std::vector< DetId > &, const EBRecHitCollection *)
std::vector< float > EnergyVectorNoCuts
std::vector< float > oldCalibs
std::vector< int > MaxCCeta