CMS 3D CMS Logo

GsfElectronMCAnalyzer.h
Go to the documentation of this file.
1 #ifndef GsfElectronMCAnalyzer_h
2 #define GsfElectronMCAnalyzer_h
3 
4 //
5 // Package: RecoEgamma/Examples
6 // Class: GsfElectronMCAnalyzer
7 //
8 
9 //
10 // Original Author: Ursula Berthon, Claude Charlot
11 // Created: Mon Mar 27 13:22:06 CEST 2006
12 //
13 //
14 
15 
22 
23 
25 
27 
28 #include <vector>
29 
30 class MagneticField;
31 class TFile;
32 class TH1F;
33 class TH2F;
34 class TH1I;
35 class TProfile;
36 class TTree;
37 
39 {
40  public:
41 
42  explicit GsfElectronMCAnalyzer(const edm::ParameterSet& conf);
43 
44  ~GsfElectronMCAnalyzer() override;
45 
46  void beginJob() override;
47  void endJob() override;
48  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
49 
50  private:
51 
55  TFile *histfile_;
56  TTree *tree_;
57  float mcEnergy[10], mcEta[10], mcPhi[10], mcPt[10], mcQ[10];
59  float seedMomentum[10], seedEta[10], seedPhi[10], seedPt[10], seedQ[10];
60 
61  TH1F *h_mcNum;
62  TH1F *h_eleNum;
63  TH1F *h_gamNum;
64 
65  TH1F *h_simEta;
66  TH1F *h_simAbsEta;
67  TH1F *h_simP;
68  TH1F *h_simPt;
69  TH1F *h_simPhi;
70  TH1F *h_simZ;
71  TH2F *h_simPtEta;
72 
79 
85 
127 
130 
137  TH1F *h_ele_Et;
152 
153  TH1F *histNum_;
154 
155  TH1F *histSclEn_ ;
174  TH1F *histSclEt_ ;
178  TH1F *histSclEta_ ;
179  TH1F *histSclPhi_ ;
180 
182 
189  TH1F *histSclE1x5_ ;
195  TH1F *histSclE5x5_ ;
213 
230  TH1F *h_ele_chi2;
236 
271 
280  TH1F *h_ele_EoP;
316 
371 
379 
381  TH1F *h_ele_eta;
386 
387  TH1F *h_ele_HoE;
397 
398  TH1F *h_ele_fbrem;
402 
415 
416  TH1F *h_ele_mva;
417  TH1F *h_ele_mva_eg;
419 
428 
432  bool readAOD_;
433 
434  double maxPt_;
435  double maxAbsEta_;
436  double deltaR_;
437  std::vector<int> matchingIDs_;
438  std::vector<int> matchingMotherIDs_;
439 
440  // histos limits and binning
441  double etamin;
442  double etamax;
443  double phimin;
444  double phimax;
445  double ptmax;
446  double pmax;
447  double eopmax;
448  double eopmaxsht;
449  double detamin;
450  double detamax;
451  double dphimin;
452  double dphimax;
453  double detamatchmin;
454  double detamatchmax;
455  double dphimatchmin;
456  double dphimatchmax;
457  double fhitsmax;
458  double lhitsmax;
459  double poptruemin;
460  double poptruemax;
461  double meemin;
462  double meemax;
463  double hoemin;
464  double hoemax;
465  int nbineta;
466  int nbinp;
467  int nbinpt;
469  int nbinphi;
470  int nbinp2D;
471  int nbinpt2D;
474  int nbineop;
478  int nbinxyz;
479  int nbindeta;
480  int nbindphi;
486  int nbinmee;
487  int nbinhoe;
488 
489  };
490 
491 #endif
492 
493 
494 
edm::ESHandle< TrackerGeometry > pDD
GsfElectronMCAnalyzer(const edm::ParameterSet &conf)
edm::ESHandle< MagneticField > theMagField
void analyze(const edm::Event &e, const edm::EventSetup &c) override
TrajectoryStateTransform transformer_
std::vector< int > matchingMotherIDs_
std::vector< int > matchingIDs_