Rivet API documentation
![]() |
Rivet 4.1.3
|
Particle.hh
59 Particle(PdgId pid, const FourMomentum& mom, const FourVector& pos=FourVector(), ConstGenParticlePtr gp=nullptr)
67 Particle(PdgId pid, const FourMomentum& mom, ConstGenParticlePtr gp, const FourVector& pos=FourVector())
80 setOrigin(vprod->position().t(), vprod->position().x(), vprod->position().y(), vprod->position().z());
333 const Particles constituents(const ParticleSelector& selector, const ParticleSorter& sorter) const {
374 const Particles rawConstituents(const ParticleSelector& selector, const ParticleSorter& sorter) const {
Specialized version of the FourVector with momentum/energy functionality.
Definition Vector4.hh:327
Specialisation of VectorN to a general (non-momentum) Lorentz 4-vector.
Definition Vector4.hh:30
Vector3 vector3() const
Get the spatial part of the 4-vector as a 3-vector.
Definition Vector4.hh:184
Object implementing Lorentz transform calculations and boosts.
Definition LorentzTrans.hh:21
const FourMomentum & mom() const
Get the equivalent momentum four-vector (const) (alias).
Definition ParticleBase.hh:39
double p() const
Get the 3-momentum magnitude directly.
Definition ParticleBase.hh:112
ThreeMomentum p3() const
Get the 3-momentum directly.
Definition ParticleBase.hh:110
Particle representation, either from a HepMC::GenEvent or reconstructed.
Definition Particle.hh:45
Particle & setMomentum(double E, double px, double py, double pz)
Set the momentum via components.
Definition Particle.hh:107
Particles allDescendants(const ParticleSelector &f, bool remove_duplicates=true) const
Get a list of all the descendants from the current particle (with selector function).
Definition Particle.hh:619
const Particles constituents(const ParticleSelector &selector, const ParticleSorter &sorter) const
Direct constituents of this particle, filtered and sorted by functors.
Definition Particle.hh:333
const Particles rawConstituents(const ParticleSorter &sorter) const
Fundamental constituents of this particle, sorted by a functor.
Definition Particle.hh:346
bool hasStableDescendantWithout(const ParticleSelector &f) const
Definition Particle.hh:685
virtual fastjet::PseudoJet pseudojet() const
Converter to FastJet3 PseudoJet.
Definition Particle.hh:182
bool hasChildWith(const ParticleSelector &f) const
Definition Particle.hh:589
Vector3 closestApproach() const
Find the point of closest approach (and hence the impact parameter) to the primary vertex.
Definition Particle.hh:151
bool isDirect(bool allow_from_direct_tau=false, bool allow_from_direct_mu=false) const
Shorthand definition of 'promptness' based on set definition flags.
bool hasDescendantWith(const Cut &c, bool remove_duplicates=true) const
virtual void addConstituent(const Particle &c, bool addmom=false)
Add a single direct constituent to this particle.
bool isPrompt(bool allow_from_prompt_tau=false, bool allow_from_prompt_mu=false) const
Alias for isDirect.
Definition Particle.hh:560
bool hasAncestorWith(const ParticleSelector &f, bool only_physical=true) const
Definition Particle.hh:467
Particles rawConstituents() const
Fundamental constituents of this particle.
bool hasAncestorWith(const Cut &c, bool only_physical=true) const
const Particles constituents(const Cut &c, const ParticleSorter &sorter) const
Direct constituents of this particle, sorted by a functor.
Definition Particle.hh:319
virtual void addConstituents(const Particles &cs, bool addmom=false)
Add direct constituents to this particle.
bool fromBottom() const
Determine whether the particle is from a b-hadron decay.
bool hasParentWithout(const Cut &c) const
const Particles rawConstituents(const ParticleSelector &selector, const ParticleSorter &sorter) const
Fundamental constituents of this particle, filtered and sorted by functors.
Definition Particle.hh:374
Particle & setOrigin(const FourVector &position)
Set the origin position.
Definition Particle.hh:127
const Particles & constituents() const
Direct constituents of this particle, returned by reference.
Definition Particle.hh:300
bool hasChildWithout(const Cut &c) const
bool hasParentWith(const ParticleSelector &f) const
Definition Particle.hh:418
bool isChargedLepton() const
Is this a charged lepton?
Definition Particle.hh:256
bool hasParentWith(const Cut &c) const
bool hasBottom() const
Does this (hadron) contain a b quark?
Definition Particle.hh:262
bool hasChildWithout(const ParticleSelector &f) const
Definition Particle.hh:604
bool isPhysical(bool include_beams=false) const
Is this particle recorded as physically meaningful in the event record?
bool isLastWith(const ParticleSelector &f) const
Determine whether a particle is the last in a decay chain to meet the function requirement.
Definition Particle.hh:720
Particles ancestors(const Cut &c=Cuts::OPEN, bool only_physical=true) const
const Particles constituents(const ParticleSelector &selector) const
Direct constituents of this particle, filtered by a selection functor.
Definition Particle.hh:326
double abscharge() const
The absolute charge of this Particle.
Definition Particle.hh:226
bool isFirstWith(const ParticleSelector &f) const
Determine whether a particle is the first in a decay chain to meet the function requirement.
Definition Particle.hh:708
bool hasDescendantWith(const ParticleSelector &f, bool remove_duplicates=true) const
Definition Particle.hh:628
bool hasStableDescendantWith(const Cut &c) const
bool isLastWithout(const ParticleSelector &f) const
Determine whether a particle is the last in a decay chain not to meet the function requirement.
Definition Particle.hh:727
Particles ancestors(const ParticleSelector &f, bool only_physical=true) const
Definition Particle.hh:458
Particle(const RivetHepMC::GenParticle &gp)
Constructor from a HepMC GenParticle reference.
Definition Particle.hh:85
const Particles constituents(const Cut &c) const
Direct constituents of this particle, filtered by a Cut.
Definition Particle.hh:312
double flightLength() const
bool fromHadron() const
Determine whether the particle is from a hadron decay.
bool hasAncestorWithout(const Cut &c, bool only_physical=true) const
bool hasChildWith(const Cut &c) const
const Particles rawConstituents(const ParticleSelector &selector) const
Fundamental constituents of this particle, filtered by a selection functor.
Definition Particle.hh:367
bool hasPhysicalAncestor(const Cut &c=Cuts::OPEN) const
Does this (outgoing) particle have physically meaningful (outgoing) parents in the event record?
Particles allDescendants(const Cut &c=Cuts::OPEN, bool remove_duplicates=true) const
Get a list of all the descendants from the current particle (with optional selection Cut).
bool fromTau(bool prompt_taus_only=false) const
Determine whether the particle is from a tau decay.
Particle & setGenParticle(ConstGenParticlePtr gp)
Set a const pointer to the original GenParticle.
Definition Particle.hh:191
bool hasParentWithout(const ParticleSelector &f) const
Definition Particle.hh:433
Particle & transformBy(const LorentzTransform <)
Apply an active Lorentz transform to this particle.
Particles parents(const Cut &c=Cuts::OPEN) const
int abscharge3() const
Three times the absolute charge of this Particle (i.e. integer multiple of smallest quark charge).
Definition Particle.hh:232
Particles stableDescendants(const ParticleSelector &f) const
Get a list of all the stable descendants from the current particle (with selector function).
Definition Particle.hh:661
bool isComposite() const
Determine if this Particle is a composite of other Rivet Particles.
Definition Particle.hh:293
Particle & setOrigin(double t, double x, double y, double z)
Set the origin position via components.
Definition Particle.hh:132
bool fromPromptTau() const
Determine whether the particle is from a prompt tau decay.
Definition Particle.hh:538
bool hasCharm() const
Does this (hadron) contain a c quark?
Definition Particle.hh:265
bool fromHadronicTau(bool prompt_taus_only=false) const
Determine whether the particle is from a tau which decayed hadronically.
bool isFirstWithout(const ParticleSelector &f) const
Determine whether a particle is the first in a decay chain not to meet the function requirement.
Definition Particle.hh:715
bool isStable() const
Whether this particle is stable according to the generator.
const FourMomentum & momentum() const
The momentum.
Definition Particle.hh:96
Particle(ConstGenParticlePtr gp)
Constructor from a HepMC GenParticle pointer.
Definition Particle.hh:72
const Particles rawConstituents(const Cut &c, const ParticleSorter &sorter) const
Fundamental constituents of this particle, sorted by a functor.
Definition Particle.hh:360
bool hasDescendantWithout(const Cut &c, bool remove_duplicates=true) const
Particles children(const ParticleSelector &f) const
Get a list of the direct descendants from the current particle (with selector function).
Definition Particle.hh:580
Particle(PdgId pid, const FourMomentum &mom, ConstGenParticlePtr gp, const FourVector &pos=FourVector())
Constructor from PID, momentum, and a GenParticle for relational links.
Definition Particle.hh:67
PdgId abspid() const
Absolute value of the PDG ID code.
Definition Particle.hh:214
const Particles rawConstituents(const Cut &c) const
Fundamental constituents of this particle, filtered by a Cut.
Definition Particle.hh:353
Particles parents(const ParticleSelector &f) const
Definition Particle.hh:409
Particles children(const Cut &c=Cuts::OPEN) const
Get a list of the direct descendants from the current particle (with optional selection Cut).
bool hasDescendantWithout(const ParticleSelector &f, bool remove_duplicates=true) const
Definition Particle.hh:643
const Particles constituents(const ParticleSorter &sorter) const
Direct constituents of this particle, sorted by a functor.
Definition Particle.hh:305
bool fromCharm() const
Determine whether the particle is from a c-hadron decay.
bool hasStableDescendantWithout(const Cut &c) const
Particles stableDescendants(const Cut &c=Cuts::OPEN) const
ConstGenParticlePtr genParticle() const
Get a const pointer to the original GenParticle.
Definition Particle.hh:197
bool hasStableDescendantWith(const ParticleSelector &f) const
Definition Particle.hh:670
bool isParton() const
Is this a parton? (Hopefully not very often... fiducial FTW).
Definition Particle.hh:274
int charge3() const
Three times the charge of this Particle (i.e. integer multiple of smallest quark charge).
Definition Particle.hh:229
bool hasAncestorWithout(const ParticleSelector &f, bool only_physical=true) const
Definition Particle.hh:482
Particle(PdgId pid, const FourMomentum &mom, const FourVector &pos=FourVector(), ConstGenParticlePtr gp=nullptr)
Constructor from PID and momentum.
Definition Particle.hh:59
Particle & setMomentum(const FourMomentum &momentum)
Set the momentum.
Definition Particle.hh:101
virtual void setConstituents(const Particles &cs, bool setmom=false)
Set direct constituents of this particle.
double dot(const Vector3 &v) const
Dot-product with another vector.
Definition Vector3.hh:96
bool any(const CONTAINER &c)
Return true if x is true for any x in container c, otherwise false.
Definition Utils.hh:358
Jets select(const Jets &jets, const Cut &c)
Filter a jet collection in-place to the subset that passes the supplied Cut.
Definition JetUtils.hh:157
int abscharge3(int pid)
Return the absolute value of 3 times the EM charge.
Definition ParticleIdUtils.hh:972
double charge(int pid)
Return the EM charge (as floating point).
Definition ParticleIdUtils.hh:977
double abscharge(int pid)
Return the EM charge (as floating point).
Definition ParticleIdUtils.hh:982
int charge3(int pid)
Three times the EM charge (as integer).
Definition ParticleIdUtils.hh:895
bool isParton(int pid)
Determine if the PID is that of a parton (quark or gluon).
Definition ParticleIdUtils.hh:180
bool isNeutrino(int pid)
Determine if the PID is that of a neutrino.
Definition ParticleIdUtils.hh:217
bool isChargedLepton(int pid)
Determine if the PID is that of a charged lepton.
Definition ParticleIdUtils.hh:206
bool hasBottom(int pid)
Does this particle contain a bottom quark?
Definition ParticleIdUtils.hh:666
bool hasStrange(int pid)
Does this particle contain a strange quark?
Definition ParticleIdUtils.hh:658
bool hasCharm(int pid)
Does this particle contain a charm quark?
Definition ParticleIdUtils.hh:662
bool isBaryon(int pid)
Check to see if this is a valid baryon.
Definition ParticleIdUtils.hh:318
bool isMeson(int pid)
Check to see if this is a valid meson.
Definition ParticleIdUtils.hh:295
MOMS sortBy(const MOMS &pbs, const CMP &cmp)
Sort a container of momenta by cmp and return by value for const inputs.
Definition Vector4.hh:1436
double p(const ParticleBase &p)
Unbound function access to p.
Definition ParticleBaseUtils.hh:653
Definition RivetHepMC.hh:52
Definition MC_CENT_PPB_Projections.hh:10
constexpr std::enable_if_t< std::is_arithmetic_v< NUM >, int > sign(NUM val)
Find the sign of a number.
Definition MathUtils.hh:275
std::ostream & operator<<(std::ostream &os, const AnalysisInfo &ai)
Stream an AnalysisInfo as a text description.
Definition AnalysisInfo.hh:362
std::enable_if_t< std::is_floating_point_v< NUM >, bool > isZero(NUM val, double tolerance=1e-8)
Compare a number to zero.
Definition MathUtils.hh:24
std::pair< Particle, Particle > ParticlePair
Typedef for a pair of Particle objects.
Definition Particle.hh:38
STL namespace.
Generated on for Rivet by
