ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::SinglyChargedParticleHypothesis Class Reference

Specialized particle hypothesis for singly charged particles. More...

#include <Acts/EventData/ParticleHypothesis.hpp>

Inheritance diagram for Acts::SinglyChargedParticleHypothesis:
[legend]
Collaboration diagram for Acts::SinglyChargedParticleHypothesis:
[legend]

Public Member Functions

template<typename other_charge_t>
constexpr SinglyChargedParticleHypothesis (const GenericParticleHypothesis< other_charge_t > &other)
 Convert from another particle hypothesis with different charge type.
 SinglyChargedParticleHypothesis (PdgParticle absPdg)
 Constructor with PDG particle code (mass from particle data table).
constexpr SinglyChargedParticleHypothesis (PdgParticle absPdg, float mass)
 Constructor with explicit mass.
Public Member Functions inherited from Acts::GenericParticleHypothesis< SinglyCharged >
constexpr GenericParticleHypothesis (PdgParticle absPdg, float mass, ChargeType chargeType)
 Creates a particle hypothesis using absolute PDG, mass and the charge type.
constexpr float absoluteCharge () const noexcept
 Get the hypothesized absolute charge.
constexpr PdgParticle absolutePdg () const noexcept
 Get the hypothesized absolute PDG.
constexpr const ChargeTypechargeType () const noexcept
 Get the hypothesized charge type.
constexpr auto extractCharge (T qOverP) const noexcept
 Extracts the signed charge from the q over p track parameter using the charge hypothesis.
constexpr auto extractMomentum (T qOverP) const noexcept
 Extracts the particle momentum from the q over p track parameter using the charge hypothesis.
constexpr float mass () const noexcept
 Get the hypothesized mass.
constexpr auto qOverP (P momentum, Q signedQ) const noexcept
 Calculate the q over p track parameter with the given absolute momentum and charge.
std::ostream & toStream (std::ostream &os) const
 Output stream representation of the particle hypothesis.

Static Public Member Functions

static SinglyChargedParticleHypothesis chargedGeantino ()
 Create a charged geantino particle hypothesis (massless charged particle).
static SinglyChargedParticleHypothesis electron ()
 Create an electron particle hypothesis.
static SinglyChargedParticleHypothesis kaon ()
 Create a charged kaon particle hypothesis.
static SinglyChargedParticleHypothesis muon ()
 Create a muon particle hypothesis.
static SinglyChargedParticleHypothesis pion ()
 Create a charged pion particle hypothesis.
static SinglyChargedParticleHypothesis proton ()
 Create a proton particle hypothesis.

Additional Inherited Members

Public Types inherited from Acts::GenericParticleHypothesis< SinglyCharged >
using ChargeType
 Type alias for charge type used in particle hypothesis.

Detailed Description

Specialized particle hypothesis for singly charged particles.

Note
This serves as a factory for common singly charge particles.

Constructor & Destructor Documentation

◆ SinglyChargedParticleHypothesis() [1/3]

Acts::SinglyChargedParticleHypothesis::SinglyChargedParticleHypothesis ( PdgParticle absPdg,
float mass )
constexpr

Constructor with explicit mass.

Parameters
absPdgThe absolute PDG particle code
massThe particle mass

◆ SinglyChargedParticleHypothesis() [2/3]

Acts::SinglyChargedParticleHypothesis::SinglyChargedParticleHypothesis ( PdgParticle absPdg)
explicit

Constructor with PDG particle code (mass from particle data table).

Parameters
absPdgThe absolute PDG particle code

◆ SinglyChargedParticleHypothesis() [3/3]

template<typename other_charge_t>
Acts::SinglyChargedParticleHypothesis::SinglyChargedParticleHypothesis ( const GenericParticleHypothesis< other_charge_t > & other)
explicitconstexpr

Convert from another particle hypothesis with different charge type.

Parameters
otherThe source particle hypothesis to convert from

Member Function Documentation

◆ chargedGeantino()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::chargedGeantino ( )
static

Create a charged geantino particle hypothesis (massless charged particle).

Returns
Singly charged geantino particle hypothesis

◆ electron()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::electron ( )
static

Create an electron particle hypothesis.

Returns
Singly charged electron particle hypothesis

◆ kaon()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::kaon ( )
static

Create a charged kaon particle hypothesis.

Returns
Singly charged kaon particle hypothesis

◆ muon()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::muon ( )
static

Create a muon particle hypothesis.

Returns
Singly charged muon particle hypothesis

◆ pion()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::pion ( )
static

Create a charged pion particle hypothesis.

Returns
Singly charged pion particle hypothesis

◆ proton()

SinglyChargedParticleHypothesis Acts::SinglyChargedParticleHypothesis::proton ( )
static

Create a proton particle hypothesis.

Returns
Singly charged proton particle hypothesis