ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h
Revision: 1.4
Committed: Thu Apr 26 06:56:18 2012 UTC (13 years ago) by khahn
Content type: text/plain
Branch: MAIN
Changes since 1.3: +58 -4 lines
Log Message:
first pass port to bambu

File Contents

# Content
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
16
17 #define MUON_ISOMVA_CUT_BIN0 -0.615
18 #define MUON_ISOMVA_CUT_BIN1 0.215
19 #define MUON_ISOMVA_CUT_BIN2 -0.845
20 #define MUON_ISOMVA_CUT_BIN3 0.075
21 #define MUON_ISOMVA_CUT_BIN4 -0.999575
22 #define MUON_ISOMVA_CUT_BIN5 -0.997775
23
24 #define ELECTRON_ISOMVA_CUT_BIN0 0.385
25 #define ELECTRON_ISOMVA_CUT_BIN1 -0.083
26 #define ELECTRON_ISOMVA_CUT_BIN2 -0.573
27 #define ELECTRON_ISOMVA_CUT_BIN3 0.413
28 #define ELECTRON_ISOMVA_CUT_BIN4 0.271
29 #define ELECTRON_ISOMVA_CUT_BIN5 0.135
30
31 Float_t computePFMuonIso(const mithep::Muon *muon,
32 const mithep::Vertex & vtx,
33 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
34 const Double_t dRMax);
35
36 Float_t computePFEleIso(const mithep::Electron *electron,
37 const mithep::Vertex & fVertex,
38 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
39 const Double_t dRMax);
40
41 SelectionStatus electronIsoSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol );
42 SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol );
43 bool pairwiseIsoSelection( ControlFlags &, vector<SimpleLepton> &, float rho );
44 bool noIso(ControlFlags &, vector<SimpleLepton> &, float rho);
45
46 void initMuonIsoMVA();
47 SelectionStatus muonIsoMVASelection(ControlFlags &ctrl,
48 const mithep::Muon * mu,
49 const mithep::Vertex & vtx,
50 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
51 const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
52 mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
53 vector<const mithep::Muon*> muonsToVeto,
54 vector<const mithep::Electron*> electronsToVeto);
55
56 void initElectronIsoMVA();
57 SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
58 const mithep::Electron * ele,
59 const mithep::Vertex & vtx,
60 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
61 const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
62 mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
63 vector<const mithep::Muon*> muonsToVeto,
64 vector<const mithep::Electron*> electronsToVeto);
65