CMS 3D CMS Logo

ElectronCalibrationUniv.h
Go to the documentation of this file.
1 #ifndef CALIBRATION_ECALCALIBALGOS_ELECTRONCALIBRATIONUNIV
2 #define CALIBRATION_ECALCALIBALGOS_ELECTRONCALIBRATIONUNIV
3 
4 // -*- C++ -*-
5 //
6 // Package: ElectronCalibrationUniv
7 // Class: ElectronCalibrationUniv
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 
31 
32 // Geometry
37 
47 #include "TFile.h"
48 #include "TH1.h"
49 #include "TH2.h"
50 
52 
53 // class decleration
54 //
55 
57 public:
59  ~ElectronCalibrationUniv() override;
60 
61  void analyze(const edm::Event &, const edm::EventSetup &) override;
62  void beginJob() override;
63  void beginRun(edm::Run const &, edm::EventSetup const &) override;
64  void endJob() override;
65 
66 private:
67  DetId findMaxHit(const std::vector<DetId> &v1, const EBRecHitCollection *EBhits, const EERecHitCollection *EEhits);
68  bool TestEEvalidDetId(int crystal_ix, int crystal_iy, int iz);
69 
70  // ----------member data ---------------------------
71 
81  double ElePt_;
82  int maxeta_;
83  int mineta_;
84  int maxphi_;
85  int minphi_;
86  double cut1_;
87  double cut2_;
88  double cut3_;
89  double cutEPCalo1_;
90  double cutEPCalo2_;
91  double cutEPin1_;
92  double cutEPin2_;
93  double cutCalo1_;
94  double cutCalo2_;
95  double cutESeed_;
99 
101 
103 
106  std::vector<float> EnergyVector;
107  std::vector<float> WeightVector;
108  std::vector<std::vector<float> > EventMatrix;
109  std::vector<int> MaxCCeta;
110  std::vector<int> MaxCCphi;
111  std::vector<float> EnergyVectorNoCuts;
112  std::vector<float> WeightVectorNoCuts;
113  std::vector<std::vector<float> > EventMatrixNoCuts;
114  std::vector<int> MaxCCetaNoCuts;
115  std::vector<int> MaxCCphiNoCuts;
118 
120 
121  std::vector<float> solution;
122  std::vector<float> solutionNoCuts;
123 
124  //For Universal Algo
125  std::vector<std::vector<DetId> > UnivEventIds;
126  std::map<DetId, float> Univsolution;
127 
128  // int eventcrystal[25][25];
130 
131  TFile *f;
132 
134 
135  TH1F *e25;
136  TH1F *e9;
137  TH1F *scE;
138  TH1F *trP;
139  TH1F *EoP;
140  TH1F *EoP_all;
141  TH1F *calibs;
144  TH1F *e9Overe25;
145  TH1F *e25OverScE;
146  TH2F *Map;
147  TH1F *E25oP;
148 
149  TH1F *PinOverPout;
151  /* TH1F * MisCalibs; */
152  /* TH1F * RatioCalibs; */
153  /* TH1F * DiffCalibs; */
154  /* TH1F * RatioCalibsNoCuts; */
155  /* TH1F * DiffCalibsNoCuts; */
156  /* TH1F * MisCalibsEndCapMinus; */
157  /* TH1F * MisCalibsEndCapPlus; */
158  /* TH1F * RatioCalibsEndCapMinus; */
159  /* TH1F * RatioCalibsEndCapPlus; */
160  /* TH1F * DiffCalibsEndCapMinus; */
161  /* TH1F * DiffCalibsEndCapPlus; */
162 
163  TH1F *e25NoCuts;
164  TH1F *e9NoCuts;
165  TH1F *scENoCuts;
166  TH1F *trPNoCuts;
167  TH1F *EoPNoCuts;
173  TH1F *E25oPNoCuts;
174  TH2F *Map3Dcalib;
178  TH1F *calibinter;
185 
186  TH2F *GeneralMap;
192 
193  TH2F *MapCor1;
194  TH2F *MapCor2;
195  TH2F *MapCor3;
196  TH2F *MapCor4;
197  TH2F *MapCor5;
198  TH2F *MapCor6;
199  TH2F *MapCor7;
200  TH2F *MapCor8;
201  TH2F *MapCor9;
202  TH2F *MapCor10;
203  TH2F *MapCor11;
204  // TH2F * MapCorCalib;
205 
217  /* TH2F * MapCorCalibEndCapMinus; */
218  /* TH2F * MapCorCalibEndCapPlus; */
219 
231 
232  TH2F *E25oPvsEta;
235 
236  TH1F *PinMinPout;
238 
239  TH1F *Error1;
240  TH1F *Error2;
241  TH1F *Error3;
245 
249 
250  TH1F *hadOverEm;
253 };
254 #endif
std::vector< float > solutionNoCuts
ElectronCalibrationUniv(const edm::ParameterSet &)
std::vector< std::vector< float > > EventMatrixNoCuts
std::vector< std::vector< float > > EventMatrix
void analyze(const edm::Event &, const edm::EventSetup &) override
MinL3AlgoUniv< DetId > * UnivL3
std::vector< std::vector< DetId > > UnivEventIds
bool TestEEvalidDetId(int crystal_ix, int crystal_iy, int iz)
std::map< DetId, float > Univsolution
HouseholderDecomposition * MyHH
edm::ESHandle< CaloTopology > theCaloTopology
Definition: DetId.h:17
std::vector< float > EnergyVectorNoCuts
std::vector< float > WeightVectorNoCuts
std::vector< float > WeightVector
std::vector< float > EnergyVector
Definition: Run.h:45
void beginRun(edm::Run const &, edm::EventSetup const &) override
DetId findMaxHit(const std::vector< DetId > &v1, const EBRecHitCollection *EBhits, const EERecHitCollection *EEhits)