ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/ElectronSelection.h
Revision: 1.11
Committed: Fri Jun 8 22:35:47 2012 UTC (12 years, 11 months ago) by anlevin
Content type: text/plain
Branch: MAIN
Changes since 1.10: +3 -0 lines
Log Message:
corrected bug in electron cut based id (again)

File Contents

# Content
1 #ifndef ELECTRON_SELECTION
2 #define ELECTRON_SELECTION
3
4 #include <vector>
5 #include <cassert>
6 #include <math.h>
7 #include <map>
8
9 #include "Vertex.h"
10 #include "Electron.h"
11 #include "ElectronCol.h"
12 #include "PFCandidate.h"
13
14 #include "TMath.h"
15
16 #include "TMVA/Factory.h"
17 #include "TMVA/Tools.h"
18 #include "TMVA/Reader.h"
19 #include "TMVA/MethodCuts.h"
20
21 #include "ParseArgs.h"
22 #include "SelectionStatus.h"
23
24 #include "MitPhysics/Utils/interface/ElectronTools.h"
25
26 #include "PileupEnergyDensity.h"
27
28
29
30
31 #define ELE_IDMVA_CUT_BIN0 0.369
32 #define ELE_IDMVA_CUT_BIN1 -0.025
33 #define ELE_IDMVA_CUT_BIN2 0.531
34 #define ELE_IDMVA_CUT_BIN3 0.735
35 #define ELE_IDMVA_CUT_BIN4 0.467
36 #define ELE_IDMVA_CUT_BIN5 0.795
37
38 #define ELE_REFERENCE_IDMVA_CUT_BIN0 0.470 // eta<0.8, pt<10
39 #define ELE_REFERENCE_IDMVA_CUT_BIN1 0.004 // 0.8<eta<1.479, pt<10
40 #define ELE_REFERENCE_IDMVA_CUT_BIN2 0.295 // eta>1.478, pt<10
41 #define ELE_REFERENCE_IDMVA_CUT_BIN3 0.500 // eta<0.8, pt>10
42 #define ELE_REFERENCE_IDMVA_CUT_BIN4 0.120 // 0.8<eta<1.479, pt>10
43 #define ELE_REFERENCE_IDMVA_CUT_BIN5 0.600 // eta>1.478, pt>10
44
45 #define ELE_LOOSE_IDMVA_CUT_BIN0 0.369
46 #define ELE_LOOSE_IDMVA_CUT_BIN1 -0.025
47 #define ELE_LOOSE_IDMVA_CUT_BIN2 0.531
48 #define ELE_LOOSE_IDMVA_CUT_BIN3 0.735
49 #define ELE_LOOSE_IDMVA_CUT_BIN4 0.467
50 #define ELE_LOOSE_IDMVA_CUT_BIN5 0.795
51
52 #define ELE_TIGHT_IDMVA_CUT_BIN0 0.093
53 #define ELE_TIGHT_IDMVA_CUT_BIN1 0.451
54 #define ELE_TIGHT_IDMVA_CUT_BIN2 0.595
55 #define ELE_TIGHT_IDMVA_CUT_BIN3 0.881
56 #define ELE_TIGHT_IDMVA_CUT_BIN4 0.731
57 #define ELE_TIGHT_IDMVA_CUT_BIN5 0.891
58
59 using namespace std;
60
61 bool electron2012CutBasedIDMedium(const mithep::Electron *ele, const mithep::Vertex * vtx, const mithep::Array<mithep::PFCandidate> * fPFCandidates, const mithep::DecayParticleCol *conversions, const mithep::Array<mithep::PileupEnergyDensity> * puEnergyDensity);
62
63 SelectionStatus electronDummyVeto(ControlFlags &, const mithep::Electron*, const mithep::Vertex *);
64 SelectionStatus electronCutBasedVeto(ControlFlags &, const mithep::Electron*, const mithep::Vertex *);
65
66 SelectionStatus electronPreSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex *);
67 SelectionStatus electronReferencePreSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex *);
68 SelectionStatus electronPreSelectionNoD0DzIP(ControlFlags &ctrl,
69 const mithep::Electron *electron,
70 const mithep::Vertex * vtx);
71
72 SelectionStatus electronIDMVASelection(ControlFlags &ctrl,
73 const mithep::Electron *ele,
74 const mithep::Vertex * vtx );
75 SelectionStatus electronReferenceIDMVASelection(ControlFlags &ctrl,
76 const mithep::Electron *ele,
77 const mithep::Vertex * vtx );
78 SelectionStatus electronReferenceIDMVASelectionV1(ControlFlags &ctrl,
79 const mithep::Electron *ele,
80 const mithep::Vertex * vtx );
81 void initElectronIDMVA();
82 void initElectronIDMVAV1();
83
84 #endif
85