ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h
(Generate patch)

Comparing UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h (file contents):
Revision 1.3 by anlevin, Wed Feb 29 10:08:00 2012 UTC vs.
Revision 1.8 by khahn, Sat May 5 21:43:53 2012 UTC

# Line 1 | Line 1
1 < #include "TElectron.hh"
2 < #include "TMuon.hh"
1 > #include "Electron.h"
2 > #include "Muon.h"
3 > #include "Vertex.h"
4 > #include "PFCandidate.h"
5 > #include "PFCandidateCol.h"
6 > #include "PileupEnergyDensity.h"
7 >
8 > #include "MuonTools.h"
9 > #include "ElectronTools.h"
10  
11   #include "ParseArgs.h"
12   #include "SelectionStatus.h"
13   #include "SimpleLepton.h"
14  
15 < SelectionStatus failEleIso(ControlFlags &, const mithep::TElectron *  );
16 < SelectionStatus passMuonIsoSelection( ControlFlags &, const mithep::TMuon *  );
15 > #define MUON_ISOMVA_CUT_BIN0  -0.615
16 > #define MUON_ISOMVA_CUT_BIN1   0.235
17 > #define MUON_ISOMVA_CUT_BIN2  -0.825
18 > #define MUON_ISOMVA_CUT_BIN3   0.155
19 > #define MUON_ISOMVA_CUT_BIN4  -0.965
20 > #define MUON_ISOMVA_CUT_BIN5  -0.989
21 >
22 > #define MUON_ISOMVA_FORPFID_CUT_BIN0  -0.5934
23 > #define MUON_ISOMVA_FORPFID_CUT_BIN1  0.3374
24 > #define MUON_ISOMVA_FORPFID_CUT_BIN2  -0.7666
25 > #define MUON_ISOMVA_FORPFID_CUT_BIN3  0.4102
26 > #define MUON_ISOMVA_FORPFID_CUT_BIN4  -0.989
27 > #define MUON_ISOMVA_FORPFID_CUT_BIN5  -0.9946
28 >
29 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN0  -0.5934
30 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN1  0.3374
31 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN2  -0.7666
32 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN3  0.4102
33 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN4  -0.989
34 > #define MUON_ISOMVA_LOOSE_FORPFID_CUT_BIN5  -0.9946
35 >
36 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN0  -0.5934
37 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN1  0.3374
38 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN2  -0.7666
39 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN3  0.4102
40 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN4  -0.989
41 > #define MUON_ISOMVA_TIGHT_FORPFID_CUT_BIN5  -0.9946
42 >
43 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN0  0.385
44 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN1  -0.083
45 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN2  -0.573
46 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN3  0.413
47 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN4  0.271
48 > #define ELECTRON_LOOSE_ISOMVA_CUT_BIN5  0.135
49 >
50 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN0  0.533
51 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN1  -0.237
52 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN2  -0.573
53 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN3  0.521
54 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN4  0.531
55 > #define ELECTRON_TIGHT_ISOMVA_CUT_BIN5  0.493
56 >
57 > #define ELECTRON_REFERENCE_PFISO_CUT  0.25
58 > #define MUON_REFERENCE_PFISO_CUT      0.25
59 >
60 > Float_t computePFMuonIso(const mithep::Muon *muon,
61 >                         const mithep::Vertex & vtx,
62 >                         const mithep::Array<mithep::PFCandidate> * fPFCandidates,
63 >                         const Double_t dRMax);
64 >
65 > Float_t computePFEleIso(const mithep::Electron *electron,
66 >                        const mithep::Vertex & fVertex,
67 >                        const mithep::Array<mithep::PFCandidate> * fPFCandidates,
68 >                        const Double_t dRMax);
69 >
70 > SelectionStatus electronIsoSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
71 > SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol   );
72   bool pairwiseIsoSelection( ControlFlags &, vector<SimpleLepton> &, float rho );
73   bool noIso(ControlFlags &, vector<SimpleLepton> &, float rho);
74 +
75 + void initMuonIsoMVA();
76 + SelectionStatus muonIsoMVASelection(ControlFlags &ctrl,
77 +                                    const mithep::Muon * mu,
78 +                                    const mithep::Vertex & vtx,
79 +                                    const mithep::Array<mithep::PFCandidate> * fPFCandidates,
80 +                                    const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
81 +                                    mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
82 +                                    vector<const mithep::Muon*> muonsToVeto,
83 +                                    vector<const mithep::Electron*> electronsToVeto);
84 + double muonPFIso04(ControlFlags &ctrl,
85 +                   const mithep::Muon * mu,
86 +                   const mithep::Vertex & vtx,
87 +                   const mithep::Array<mithep::PFCandidate> * fPFCandidates,
88 +                   const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
89 +                   mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
90 +                   vector<const mithep::Muon*> muonsToVeto,
91 +                   vector<const mithep::Electron*> electronsToVeto);
92 + SelectionStatus muonReferenceIsoSelection(ControlFlags &ctrl,
93 +                                          const mithep::Muon * mu,
94 +                                          const mithep::Vertex & vtx,
95 +                                          const mithep::Array<mithep::PFCandidate> * fPFCandidates,
96 +                                          const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
97 +                                          mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
98 +                                          vector<const mithep::Muon*> muonsToVeto,
99 +                                          vector<const mithep::Electron*> electronsToVeto);
100 +
101 + void initElectronIsoMVA();
102 + SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
103 +                                    const mithep::Electron * ele,
104 +                                    const mithep::Vertex & vtx,
105 +                                    const mithep::Array<mithep::PFCandidate> * fPFCandidates,
106 +                                    const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
107 +                                    mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
108 +                                    vector<const mithep::Muon*> muonsToVeto,
109 +                                    vector<const mithep::Electron*> electronsToVeto);
110 + float electronPFIso04(ControlFlags &ctrl,
111 +                      const mithep::Electron * ele,
112 +                      const mithep::Vertex & vtx,
113 +                      const mithep::Array<mithep::PFCandidate> * fPFCandidates,
114 +                      const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
115 +                      mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
116 +                      vector<const mithep::Muon*> muonsToVeto,
117 +                      vector<const mithep::Electron*> electronsToVeto) ;
118 + SelectionStatus electronReferenceIsoSelection(ControlFlags &ctrl,
119 +                                              const mithep::Electron * ele,
120 +                                              const mithep::Vertex & vtx,
121 +                                              const mithep::Array<mithep::PFCandidate> * fPFCandidates,
122 +                                              const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
123 +                                              mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
124 +                                              vector<const mithep::Muon*> muonsToVeto,
125 +                                              vector<const mithep::Electron*> electronsToVeto);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines