ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/LeptonSelection/interface/IsolationSelection.h
Revision: 1.6
Committed: Wed May 2 17:50:57 2012 UTC (13 years ago) by khahn
Content type: text/plain
Branch: MAIN
Changes since 1.5: +7 -0 lines
Log Message:
moved to isoWP optimized for use with PF ID

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 #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 ELECTRON_ISOMVA_CUT_BIN0 0.385
30 #define ELECTRON_ISOMVA_CUT_BIN1 -0.083
31 #define ELECTRON_ISOMVA_CUT_BIN2 -0.573
32 #define ELECTRON_ISOMVA_CUT_BIN3 0.413
33 #define ELECTRON_ISOMVA_CUT_BIN4 0.271
34 #define ELECTRON_ISOMVA_CUT_BIN5 0.135
35
36 Float_t computePFMuonIso(const mithep::Muon *muon,
37 const mithep::Vertex & vtx,
38 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
39 const Double_t dRMax);
40
41 Float_t computePFEleIso(const mithep::Electron *electron,
42 const mithep::Vertex & fVertex,
43 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
44 const Double_t dRMax);
45
46 SelectionStatus electronIsoSelection(ControlFlags &, const mithep::Electron *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol );
47 SelectionStatus muonIsoSelection(ControlFlags &, const mithep::Muon *, const mithep::Vertex &, const mithep::Array<mithep::PFCandidate> * fPFCandidateCol );
48 bool pairwiseIsoSelection( ControlFlags &, vector<SimpleLepton> &, float rho );
49 bool noIso(ControlFlags &, vector<SimpleLepton> &, float rho);
50
51 void initMuonIsoMVA();
52 SelectionStatus muonIsoMVASelection(ControlFlags &ctrl,
53 const mithep::Muon * mu,
54 const mithep::Vertex & vtx,
55 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
56 const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
57 mithep::MuonTools::EMuonEffectiveAreaTarget EffectiveAreaVersion,
58 vector<const mithep::Muon*> muonsToVeto,
59 vector<const mithep::Electron*> electronsToVeto);
60
61 void initElectronIsoMVA();
62 SelectionStatus electronIsoMVASelection(ControlFlags &ctrl,
63 const mithep::Electron * ele,
64 const mithep::Vertex & vtx,
65 const mithep::Array<mithep::PFCandidate> * fPFCandidates,
66 const mithep::Array<mithep::PileupEnergyDensity> * fPUEnergyDensity,
67 mithep::ElectronTools::EElectronEffectiveAreaTarget EffectiveAreaVersion,
68 vector<const mithep::Muon*> muonsToVeto,
69 vector<const mithep::Electron*> electronsToVeto);
70