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 |
> |
|
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 |
+ |
|