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 
23 // system include files
24 #include <memory>
25 
26 // user include files
29 
32 
33 // Geometry
38 
48 #include "TFile.h"
49 #include "TH1.h"
50 #include "TH2.h"
51 
53 
54 // class decleration
55 //
56 
58  public:
60  ~ElectronCalibrationUniv() override;
61 
62  void analyze(const edm::Event&, const edm::EventSetup&) override;
63  void beginJob() override;
64  void beginRun(edm::Run const &, edm::EventSetup const&) override;
65  void endJob() override;
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 
71  // ----------member data ---------------------------
72 
82  double ElePt_;
83  int maxeta_;
84  int mineta_;
85  int maxphi_;
86  int minphi_;
87  double cut1_;
88  double cut2_;
89  double cut3_;
90  double cutEPCalo1_;
91  double cutEPCalo2_;
92  double cutEPin1_;
93  double cutEPin2_;
94  double cutCalo1_;
95  double cutCalo2_;
96  double cutESeed_;
100 
102 
104 
107  std::vector<float> EnergyVector;
108  std::vector<float> WeightVector;
109  std::vector<std::vector<float> > EventMatrix;
110  std::vector<int> MaxCCeta;
111  std::vector<int> MaxCCphi;
112  std::vector<float> EnergyVectorNoCuts;
113  std::vector<float> WeightVectorNoCuts;
114  std::vector<std::vector<float> > EventMatrixNoCuts;
115  std::vector<int> MaxCCetaNoCuts;
116  std::vector<int> MaxCCphiNoCuts;
119 
121 
122  std::vector<float> solution;
123  std::vector<float> solutionNoCuts;
124 
125  //For Universal Algo
126  std::vector<std::vector<DetId> > UnivEventIds;
127  std::map<DetId,float> Univsolution;
128 
129  // int eventcrystal[25][25];
131 
132  TFile * f;
133 
135 
136  TH1F * e25;
137  TH1F * e9;
138  TH1F * scE;
139  TH1F * trP;
140  TH1F * EoP;
141  TH1F * EoP_all;
142  TH1F * calibs;
145  TH1F * e9Overe25;
146  TH1F * e25OverScE;
147  TH2F * Map;
148  TH1F * E25oP;
149 
150  TH1F * PinOverPout;
152 /* TH1F * MisCalibs; */
153 /* TH1F * RatioCalibs; */
154 /* TH1F * DiffCalibs; */
155 /* TH1F * RatioCalibsNoCuts; */
156 /* TH1F * DiffCalibsNoCuts; */
157 /* TH1F * MisCalibsEndCapMinus; */
158 /* TH1F * MisCalibsEndCapPlus; */
159 /* TH1F * RatioCalibsEndCapMinus; */
160 /* TH1F * RatioCalibsEndCapPlus; */
161 /* TH1F * DiffCalibsEndCapMinus; */
162 /* TH1F * DiffCalibsEndCapPlus; */
163 
164  TH1F * e25NoCuts;
165  TH1F * e9NoCuts;
166  TH1F * scENoCuts;
167  TH1F * trPNoCuts;
168  TH1F * EoPNoCuts;
169  TH1F * calibsNoCuts;
174  TH1F * E25oPNoCuts;
175  TH2F * Map3Dcalib;
179  TH1F * calibinter;
186 
187  TH2F * GeneralMap;
193 
194  TH2F * MapCor1;
195  TH2F * MapCor2;
196  TH2F * MapCor3;
197  TH2F * MapCor4;
198  TH2F * MapCor5;
199  TH2F * MapCor6;
200  TH2F * MapCor7;
201  TH2F * MapCor8;
202  TH2F * MapCor9;
203  TH2F * MapCor10;
204  TH2F * MapCor11;
205  // TH2F * MapCorCalib;
206 
218 /* TH2F * MapCorCalibEndCapMinus; */
219 /* TH2F * MapCorCalibEndCapPlus; */
220 
221  TH2F * MapCor1ESeed;
222  TH2F * MapCor2ESeed;
223  TH2F * MapCor3ESeed;
224  TH2F * MapCor4ESeed;
225  TH2F * MapCor5ESeed;
226  TH2F * MapCor6ESeed;
227  TH2F * MapCor7ESeed;
228  TH2F * MapCor8ESeed;
229  TH2F * MapCor9ESeed;
232 
233  TH2F * E25oPvsEta;
236 
237  TH1F * PinMinPout;
239 
240  TH1F * Error1;
241  TH1F * Error2;
242  TH1F * Error3;
243  TH1F * Error1NoCuts;
244  TH1F * Error2NoCuts;
245  TH1F * Error3NoCuts;
246 
250 
251  TH1F * hadOverEm;
254 };
255 #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:18
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)