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 decleration
43 //
44 
46 public:
47  explicit ElectronCalibration(const edm::ParameterSet&);
48  ~ElectronCalibration() override;
49 
50  void analyze(const edm::Event&, const edm::EventSetup&) override;
51  void beginJob() override;
52  void endJob() override;
53 
54 private:
56  EBDetId findMaxHit2(const std::vector<DetId>&, const EBRecHitCollection*);
57 
58  // ----------member data ---------------------------
66  double ElePt_;
67  int maxeta_;
68  int mineta_;
69  int maxphi_;
70  int minphi_;
71  double cut1_;
72  double cut2_;
73  double cut3_;
75  double cutEPCalo1_;
76  double cutEPCalo2_;
77  double cutEPin1_;
78  double cutEPin2_;
79  double cutCalo1_;
80  double cutCalo2_;
81  double cutESeed_;
83 
86 
88 
91  std::vector<float> EnergyVector;
92  std::vector<float> WeightVector;
93  std::vector<std::vector<float> > EventMatrix;
94  std::vector<int> MaxCCeta;
95  std::vector<int> MaxCCphi;
96  std::vector<float> EnergyVectorNoCuts;
97  std::vector<float> WeightVectorNoCuts;
98  std::vector<std::vector<float> > EventMatrixNoCuts;
99  std::vector<int> MaxCCetaNoCuts;
100  std::vector<int> MaxCCphiNoCuts;
102  std::vector<float> solution;
103  std::vector<float> solutionNoCuts;
104  std::vector<float> newCalibs;
105  std::vector<float> oldCalibs;
106 
107  int eventcrystal[171][360];
109 
110  TFile* f;
111 
112  TH1F* e25;
113  TH1F* e9;
114  TH1F* scE;
115  TH1F* trP;
116  TH1F* EoP;
117  TH1F* EoP_all;
118  TH1F* calibs;
119  TH1F* e9Overe25;
120  TH1F* e25OverScE;
121  TH2F* Map;
122  TH1F* E25oP;
123 
124  TH1F* PinOverPout;
126  TH1F* MisCalibs;
127  TH1F* RatioCalibs;
128  TH1F* DiffCalibs;
131 
132  TH1F* e25NoCuts;
133  TH1F* e9NoCuts;
134  TH1F* scENoCuts;
135  TH1F* trPNoCuts;
136  TH1F* EoPNoCuts;
140  TH2F* MapNoCuts;
141  TH1F* E25oPNoCuts;
142  TH2F* Map3Dcalib;
144  TH1F* calibinter;
149 
150  TH2F* GeneralMap;
151 
152  TH2F* MapCor1;
153  TH2F* MapCor2;
154  TH2F* MapCor3;
155  TH2F* MapCor4;
156  TH2F* MapCor5;
157  TH2F* MapCor6;
158  TH2F* MapCor7;
159  TH2F* MapCor8;
160  TH2F* MapCor9;
161  TH2F* MapCor10;
162  TH2F* MapCor11;
163  TH2F* MapCorCalib;
164 
177 
189 
190  TH1F* PinMinPout;
192 
193  TH1F* Error1;
194  TH1F* Error2;
195  TH1F* Error3;
199 
203 
204  TH1F* hadOverEm;
207 };
208 #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