Rivet API documentation

Rivet 4.1.3
LeptonFinder.hh
1// -*- C++ -*-
2#ifndef RIVET_LeptonFinder_HH
3#define RIVET_LeptonFinder_HH
4
5#include "Rivet/DressedLepton.hh"
6#include "Rivet/Config/RivetCommon.hh"
7#include "Rivet/Projections/FinalState.hh"
8#include "Rivet/Projections/IdentifiedFinalState.hh"
9#include "Rivet/Projections/PromptFinalState.hh"
10
11namespace Rivet {
12
13
29 class LeptonFinder : public FinalState {
30 public:
31
43 double dRdress,
44 const Cut& cut = Cuts::OPEN,
45 DressingType dressing = DressingType::CONE)
46 : LeptonFinder(allfs, allfs, dRdress, cut, dressing) { }
47
48
61 const Cut& cut,
62 double dRdress,
63 DressingType dressing = DressingType::CONE)
64 : LeptonFinder(allfs, dRdress, cut, dressing) { }
65
66
77 LeptonFinder(const Cut& cut,
78 double dRdress,
79 LeptonOrigin whichleptons = LeptonOrigin::NODECAY,
80 PhotonOrigin whichphotons = PhotonOrigin::NODECAY,
81 TauDecaysAs tauDecays = TauDecaysAs::PROMPT,
82 MuDecaysAs muDecays = MuDecaysAs::PROMPT,
83 DressingType dressing = DressingType::CONE)
84 : LeptonFinder(dRdress, cut, whichleptons, whichphotons, tauDecays, muDecays, dressing) { }
85
86
97 LeptonFinder(const Cut& cut,
98 double dRdress,
99 DressingType dressing,
100 LeptonOrigin whichleptons = LeptonOrigin::NODECAY,
101 PhotonOrigin whichphotons = PhotonOrigin::NODECAY,
102 TauDecaysAs tauDecays = TauDecaysAs::PROMPT,
103 MuDecaysAs muDecays = MuDecaysAs::PROMPT)
104 : LeptonFinder(dRdress, cut, whichleptons, whichphotons, tauDecays, muDecays, dressing) { }
105
106
117 LeptonFinder(double dRdress,
118 const Cut& cut = Cuts::OPEN,
119 LeptonOrigin whichleptons = LeptonOrigin::NODECAY,
120 PhotonOrigin whichphotons = PhotonOrigin::NODECAY,
121 TauDecaysAs tauDecays = TauDecaysAs::PROMPT,
122 MuDecaysAs muDecays = MuDecaysAs::PROMPT,
123 DressingType dressing = DressingType::CONE);
124
125
136 LeptonFinder(double dRdress,
137 const Cut& cut,
138 DressingType dressing,
139 LeptonOrigin whichleptons = LeptonOrigin::NODECAY,
140 PhotonOrigin whichphotons = PhotonOrigin::NODECAY,
141 TauDecaysAs tauDecays = TauDecaysAs::PROMPT,
142 MuDecaysAs muDecays = MuDecaysAs::PROMPT)
143 : LeptonFinder(dRdress, cut, whichleptons, whichphotons, tauDecays, muDecays, dressing) { }
144
145
163 LeptonFinder(const FinalState& leptonfs,
164 const FinalState& photonfs,
165 double dRdress,
166 const Cut& cut = Cuts::OPEN,
167 DressingType dressing = DressingType::CONE);
168
169
187 LeptonFinder(const FinalState& leptonfs,
188 const FinalState& photonfs,
189 const Cut& cut,
190 double dRdress,
191 DressingType dressing = DressingType::CONE)
192 : LeptonFinder(leptonfs, photonfs, dRdress, cut, dressing) { }
193
194
197
199 using Projection::operator=;
200
201
206 DressedLeptons rtn;
207 for (const Particle& p : particles(cmpMomByPt))
208 rtn += DressedLepton(p); //static_cast<const DressedLepton>(p);
209 return rtn;
210 }
211
215 DressedLeptons dressedLeptons(const ParticleSorter& sorter) const {
216 DressedLeptons rtn;
217 for (const Particle& p : particles(sorter))
218 rtn += DressedLepton(p); //static_cast<const DressedLepton>(p);
219 return rtn;
220 }
221
222
223 protected:
224
226 void project(const Event& e);
227
229 CmpState compare(const Projection& p) const;
230
231
232 protected:
233
235 double _dRdress;
236
238 DressingType _dressMode;
239 };
240
241
242}
243
244#endif
A charged lepton meta-particle created by clustering photons close to the bare lepton.
Definition DressedLepton.hh:35
Representation of a HepMC event, and enabler of Projection caching.
Definition Event.hh:22
FinalState(const Cut &c=Cuts::OPEN)
Construction using Cuts object.
DressedLeptons dressedLeptons(const ParticleSorter &sorter) const
Retrieve the dressed leptons ordered by supplied sorting functor.
Definition LeptonFinder.hh:215
LeptonFinder(const Cut &cut, double dRdress, DressingType dressing, LeptonOrigin whichleptons=LeptonOrigin::NODECAY, PhotonOrigin whichphotons=PhotonOrigin::NODECAY, TauDecaysAs tauDecays=TauDecaysAs::PROMPT, MuDecaysAs muDecays=MuDecaysAs::PROMPT)
Constructor with default input FinalState and deltaR.
Definition LeptonFinder.hh:97
LeptonFinder(double dRdress, const Cut &cut=Cuts::OPEN, LeptonOrigin whichleptons=LeptonOrigin::NODECAY, PhotonOrigin whichphotons=PhotonOrigin::NODECAY, TauDecaysAs tauDecays=TauDecaysAs::PROMPT, MuDecaysAs muDecays=MuDecaysAs::PROMPT, DressingType dressing=DressingType::CONE)
Constructor with default input FinalState.
LeptonFinder(double dRdress, const Cut &cut, DressingType dressing, LeptonOrigin whichleptons=LeptonOrigin::NODECAY, PhotonOrigin whichphotons=PhotonOrigin::NODECAY, TauDecaysAs tauDecays=TauDecaysAs::PROMPT, MuDecaysAs muDecays=MuDecaysAs::PROMPT)
Constructor with default input FinalState.
Definition LeptonFinder.hh:136
LeptonFinder(const FinalState &leptonfs, const FinalState &photonfs, const Cut &cut, double dRdress, DressingType dressing=DressingType::CONE)
Constructor with distinct photon and lepton finders.
Definition LeptonFinder.hh:187
RIVET_DEFAULT_PROJ_CLONE(LeptonFinder)
Clone this projection.
DressedLeptons dressedLeptons() const
Retrieve the dressed leptons.
Definition LeptonFinder.hh:205
void project(const Event &e)
Apply the projection on the supplied event.
LeptonFinder(const Cut &cut, double dRdress, LeptonOrigin whichleptons=LeptonOrigin::NODECAY, PhotonOrigin whichphotons=PhotonOrigin::NODECAY, TauDecaysAs tauDecays=TauDecaysAs::PROMPT, MuDecaysAs muDecays=MuDecaysAs::PROMPT, DressingType dressing=DressingType::CONE)
Constructor with default input FinalState and deltaR.
Definition LeptonFinder.hh:77
LeptonFinder(const FinalState &leptonfs, const FinalState &photonfs, double dRdress, const Cut &cut=Cuts::OPEN, DressingType dressing=DressingType::CONE)
Constructor with distinct photon and lepton finders.
LeptonFinder(const FinalState &allfs, const Cut &cut, double dRdress, DressingType dressing=DressingType::CONE)
Constructor with a single input FinalState and default dR.
Definition LeptonFinder.hh:60
LeptonFinder(const FinalState &allfs, double dRdress, const Cut &cut=Cuts::OPEN, DressingType dressing=DressingType::CONE)
Constructor with a single input FinalState (used for both photons and bare leptons).
Definition LeptonFinder.hh:42
CmpState compare(const Projection &p) const
Compare projections.
virtual const Particles & particles() const
Get the particles in no particular order, with no cuts.
Definition ParticleFinder.hh:76
Particle representation, either from a HepMC::GenEvent or reconstructed.
Definition Particle.hh:50
Base class for all Rivet projections.
Definition Projection.hh:29
bool cmpMomByPt(const FourMomentum &a, const FourMomentum &b)
Comparison to give a sorting by decreasing pT.
Definition Vector4.hh:1333
double p(const ParticleBase &p)
Unbound function access to p.
Definition ParticleBaseUtils.hh:819
Definition LHCbCommon.hh:9
PhotonOrigin
Possible classes of lepton origin.
Definition DressedLepton.hh:29
vector< DressedLepton > DressedLeptons
Alias for a list of dressed leptons, cf. Particles and Jets.
Definition DressedLepton.hh:62
DressingType
The approach taken to photon dressing of leptons.
Definition DressedLepton.hh:26
LeptonOrigin
Possible classes of lepton origin.
Definition DressedLepton.hh:12