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

Specialized particle hypothesis for non-neutral particles. More...

#include <Acts/EventData/ParticleHypothesis.hpp>

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

Public Member Functions

template<typename other_charge_t>
constexpr NonNeutralChargedParticleHypothesis (const GenericParticleHypothesis< other_charge_t > &other)
 Convert from another particle hypothesis with different charge type.
 NonNeutralChargedParticleHypothesis (PdgParticle absPdg)
 Constructor with PDG particle code (mass from particle data table).
constexpr NonNeutralChargedParticleHypothesis (PdgParticle absPdg, float mass, NonNeutralCharge chargeType)
 Constructor with explicit mass and charge.
Public Member Functions inherited from Acts::GenericParticleHypothesis< NonNeutralCharge >
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 NonNeutralChargedParticleHypothesis chargedGeantino ()
 Create a charged geantino particle hypothesis with unit charge.
static NonNeutralChargedParticleHypothesis chargedGeantino (float absQ)
 Create a charged geantino particle hypothesis with custom charge.
static NonNeutralChargedParticleHypothesis electron ()
 Create an electron particle hypothesis.
static NonNeutralChargedParticleHypothesis kaon ()
 Create a charged kaon particle hypothesis.
static NonNeutralChargedParticleHypothesis muon ()
 Create a muon particle hypothesis.
static NonNeutralChargedParticleHypothesis pion ()
 Create a charged pion particle hypothesis.
static NonNeutralChargedParticleHypothesis pionLike (float absQ)
 Create a pion-like particle hypothesis with custom charge.
static NonNeutralChargedParticleHypothesis proton ()
 Create a proton particle hypothesis.

Additional Inherited Members

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

Detailed Description

Specialized particle hypothesis for non-neutral particles.

Note
This serves as a factory for common non-neutral particles.

Constructor & Destructor Documentation

◆ NonNeutralChargedParticleHypothesis() [1/3]

Acts::NonNeutralChargedParticleHypothesis::NonNeutralChargedParticleHypothesis ( PdgParticle absPdg,
float mass,
NonNeutralCharge chargeType )
constexpr

Constructor with explicit mass and charge.

Parameters
absPdgThe absolute PDG particle code
massThe particle mass
chargeTypeThe non-neutral charge type

◆ NonNeutralChargedParticleHypothesis() [2/3]

Acts::NonNeutralChargedParticleHypothesis::NonNeutralChargedParticleHypothesis ( PdgParticle absPdg)
explicit

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

Parameters
absPdgThe absolute PDG particle code

◆ NonNeutralChargedParticleHypothesis() [3/3]

template<typename other_charge_t>
Acts::NonNeutralChargedParticleHypothesis::NonNeutralChargedParticleHypothesis ( 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() [1/2]

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::chargedGeantino ( )
static

Create a charged geantino particle hypothesis with unit charge.

Returns
Non-neutral charged geantino particle hypothesis

◆ chargedGeantino() [2/2]

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::chargedGeantino ( float absQ)
static

Create a charged geantino particle hypothesis with custom charge.

Parameters
absQThe absolute charge value
Returns
Non-neutral charged geantino particle hypothesis

◆ electron()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::electron ( )
static

Create an electron particle hypothesis.

Returns
Non-neutral charged electron particle hypothesis

◆ kaon()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::kaon ( )
static

Create a charged kaon particle hypothesis.

Returns
Non-neutral charged kaon particle hypothesis

◆ muon()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::muon ( )
static

Create a muon particle hypothesis.

Returns
Non-neutral charged muon particle hypothesis

◆ pion()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::pion ( )
static

Create a charged pion particle hypothesis.

Returns
Non-neutral charged pion particle hypothesis

◆ pionLike()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::pionLike ( float absQ)
static

Create a pion-like particle hypothesis with custom charge.

Parameters
absQThe absolute charge value
Returns
Non-neutral charged pion-like particle hypothesis

◆ proton()

NonNeutralChargedParticleHypothesis Acts::NonNeutralChargedParticleHypothesis::proton ( )
static

Create a proton particle hypothesis.

Returns
Non-neutral charged proton particle hypothesis