Marlin processor for finding isolated leptons. More...
#include <IsolatedLeptonFinderProcessor.h>
Public Member Functions | |
virtual Processor * | newProcessor () |
IsolatedLeptonFinderProcessor () | |
IsolatedLeptonFinderProcessor (const IsolatedLeptonFinderProcessor &)=delete | |
IsolatedLeptonFinderProcessor & | operator= (const IsolatedLeptonFinderProcessor &)=delete |
virtual void | init () |
virtual void | processEvent (LCEvent *evt) |
virtual void | end () |
Protected Member Functions | |
bool | IsGoodLepton (ReconstructedParticle *pfo) |
Returns true if pfo is a lepton. More... | |
bool | IsIsolatedLepton (ReconstructedParticle *pfo) |
Returns true if pfo is an isolated lepton. More... | |
bool | IsIsolatedRectangular (ReconstructedParticle *pfo) |
Returns true if isolated, as defined by the cone energy. More... | |
bool | IsIsolatedPolynomial (ReconstructedParticle *pfo) |
bool | IsIsolatedJet (ReconstructedParticle *pfo) |
bool | IsCharged (ReconstructedParticle *pfo) |
Returns true if charged. More... | |
bool | IsLepton (ReconstructedParticle *pfo) |
Returns true if it passes muon or electron ID cuts. More... | |
bool | IsElectron (ReconstructedParticle *pfo) |
Returns true if it passes electron ID cuts. More... | |
bool | IsMuon (ReconstructedParticle *pfo) |
Returns true if it passes muon ID cuts. More... | |
bool | IsPhoton (ReconstructedParticle *pfo) |
Returns true if it passes photon ID cuts. More... | |
bool | PassesImpactParameterCuts (ReconstructedParticle *pfo) |
Returns true if it passes impact parameter cuts. More... | |
bool | PassesImpactParameterSignificanceCuts (ReconstructedParticle *pfo) |
Returns true if it passes impact parameter significance cuts. More... | |
bool | isMoreEnergetic (int i, int j) |
Helper function to order PFOS by energy. More... | |
void | dressLepton (ReconstructedParticleImpl *pfo, int PFO_idx) |
Adds photons around lepton to four vector. More... | |
float | getConeEnergy (ReconstructedParticle *pfo) |
Calculates the cone energy. More... | |
void | getCalEnergy (ReconstructedParticle *pfo, float *cale) |
[0]:Ecal energy, [1]:Hcal energy More... | |
ReconstructedParticleImpl * | CopyReconstructedParticle (ReconstructedParticle *pfo) |
Replace missing copy constructor by hand. More... | |
Protected Attributes | |
std::string | _inputPFOsCollection {} |
Input collection. More... | |
std::string | _outputPFOsRemovedIsoLepCollection {} |
Output collection (all input with isolated leptons removed) More... | |
std::string | _outputIsoLepCollection {} |
Output collection of isolated leptons. More... | |
std::string | _outputPFOsRemovedDressedIsoLepCollection {} |
Output collection (all input with dressed isolated leptons removed) More... | |
std::string | _outputDressedIsoLepCollection {} |
Output collection of dressed isolated leptons. More... | |
LCCollection * | _pfoCol =nullptr |
float | _cosConeAngle = 0 |
std::vector < ReconstructedParticle * > | _workingList = {} |
bool | _usePID = false |
If set to true, uses PID cuts. More... | |
float | _electronMinEnergyDepositByMomentum = 0 |
float | _electronMaxEnergyDepositByMomentum = 0 |
float | _electronMinEcalToHcalFraction = 0 |
float | _electronMaxEcalToHcalFraction = 0 |
float | _muonMinEnergyDepositByMomentum = 0 |
float | _muonMaxEnergyDepositByMomentum = 0 |
float | _muonMinEcalToHcalFraction = 0 |
float | _muonMaxEcalToHcalFraction = 0 |
bool | _useImpactParameter = false |
If set to true, uses impact parameter cuts. More... | |
float | _minD0 = 0 |
float | _maxD0 = 0 |
float | _minZ0 = 0 |
float | _maxZ0 = 0 |
float | _minR0 = 0 |
float | _maxR0 = 0 |
bool | _useImpactParameterSignificance = false |
If set to true, uses impact parameter significance cuts. More... | |
float | _minD0Sig = 0 |
float | _maxD0Sig = 0 |
float | _minZ0Sig = 0 |
float | _maxZ0Sig = 0 |
float | _minR0Sig = 0 |
float | _maxR0Sig = 0 |
bool | _useRectangularIsolation = false |
If set to true, uses rectangular cuts for isolation. More... | |
float | _isoMinTrackEnergy = 0 |
float | _isoMaxTrackEnergy = 0 |
float | _isoMinConeEnergy = 0 |
float | _isoMaxConeEnergy = 0 |
bool | _usePolynomialIsolation = false |
If set to true, uses polynomial cuts for isolation. More... | |
float | _isoPolynomialA = 0 |
float | _isoPolynomialB = 0 |
float | _isoPolynomialC = 0 |
bool | _useJetIsolation = false |
If set to true, uses jet-based isolation (LAL algorithm) More... | |
std::string | _jetCollectionName {} |
std::map < ReconstructedParticle *, ReconstructedParticle * > | _rpJetMap {} |
float | _jetIsoVetoMinXt = 0 |
float | _jetIsoVetoMaxXt = 0 |
float | _jetIsoVetoMinZ = 0 |
float | _jetIsoVetoMaxZ = 0 |
bool | _useDressedLeptons = false |
If set to true, uses lepton dressing. More... | |
bool | _mergeCloseElectrons = false |
float | _dressPhotonConeAngle = 0 |
float | _mergeLeptonConeAngle = 0 |
bool | _usePandoraIDs = false |
If set to true, uses Pandora particle IDs. More... | |
Marlin processor for finding isolated leptons.
Given a list of ReconstructedParticle, identify isolated leptons based on the track cone energy, lepton identification, and the track impact parameters (optional).
Definition at line 27 of file IsolatedLeptonFinderProcessor.h.
IsolatedLeptonFinderProcessor::IsolatedLeptonFinderProcessor | ( | ) |
Definition at line 25 of file IsolatedLeptonFinderProcessor.cc.
|
delete |
|
protected |
Replace missing copy constructor by hand.
Definition at line 414 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Adds photons around lepton to four vector.
Definition at line 371 of file IsolatedLeptonFinderProcessor.cc.
|
virtual |
Definition at line 412 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
[0]:Ecal energy, [1]:Hcal energy
Definition at line 635 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Calculates the cone energy.
Definition at line 615 of file IsolatedLeptonFinderProcessor.cc.
|
virtual |
Definition at line 273 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if charged.
Definition at line 434 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if it passes electron ID cuts.
Definition at line 443 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if pfo is a lepton.
Definition at line 492 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Definition at line 544 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if pfo is an isolated lepton.
Definition at line 509 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Definition at line 535 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if isolated, as defined by the cone energy.
Definition at line 523 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if it passes muon or electron ID cuts.
Definition at line 485 of file IsolatedLeptonFinderProcessor.cc.
|
inlineprotected |
Helper function to order PFOS by energy.
Definition at line 77 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Returns true if it passes muon ID cuts.
Definition at line 464 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if it passes photon ID cuts.
Definition at line 439 of file IsolatedLeptonFinderProcessor.cc.
|
inlinevirtual |
Definition at line 31 of file IsolatedLeptonFinderProcessor.h.
|
delete |
|
protected |
Returns true if it passes impact parameter cuts.
Definition at line 570 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Returns true if it passes impact parameter significance cuts.
Definition at line 590 of file IsolatedLeptonFinderProcessor.cc.
|
virtual |
Definition at line 278 of file IsolatedLeptonFinderProcessor.cc.
|
protected |
Definition at line 111 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 169 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 119 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 117 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 118 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 116 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Input collection.
Definition at line 96 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 148 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 146 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 147 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 145 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 152 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 153 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 154 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 158 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 161 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 163 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 160 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 162 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 128 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 137 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 132 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 141 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 130 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 139 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 168 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 170 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 127 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 136 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 131 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 140 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 129 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 138 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 123 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 121 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 122 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 120 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Output collection of dressed isolated leptons.
Definition at line 108 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Output collection of isolated leptons.
Definition at line 102 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Output collection (all input with dressed isolated leptons removed)
Definition at line 105 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Output collection (all input with isolated leptons removed)
Definition at line 99 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 110 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 159 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses lepton dressing.
Definition at line 167 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses impact parameter cuts.
Definition at line 126 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses impact parameter significance cuts.
Definition at line 135 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses jet-based isolation (LAL algorithm)
Definition at line 157 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses Pandora particle IDs.
Definition at line 173 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses PID cuts.
Definition at line 115 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses polynomial cuts for isolation.
Definition at line 151 of file IsolatedLeptonFinderProcessor.h.
|
protected |
If set to true, uses rectangular cuts for isolation.
Definition at line 144 of file IsolatedLeptonFinderProcessor.h.
|
protected |
Definition at line 112 of file IsolatedLeptonFinderProcessor.h.