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

Specialized particle hypothesis for neutral particles. More...

#include <Acts/EventData/ParticleHypothesis.hpp>

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

Public Member Functions

template<typename other_charge_t>
constexpr NeutralParticleHypothesis (const GenericParticleHypothesis< other_charge_t > &other)
 Convert from another particle hypothesis with different charge type.
 NeutralParticleHypothesis (PdgParticle absPdg)
 Constructor with PDG particle code (mass from particle data table).
constexpr NeutralParticleHypothesis (PdgParticle absPdg, float mass)
 Constructor with explicit mass.
Public Member Functions inherited from Acts::GenericParticleHypothesis< Neutral >
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 NeutralParticleHypothesis geantino ()
 Create a neutral geantino particle hypothesis (massless neutral particle).
static NeutralParticleHypothesis photon ()
 Create a photon particle hypothesis.
static NeutralParticleHypothesis pion0 ()
 Create a neutral pion particle hypothesis.

Additional Inherited Members

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

Detailed Description

Specialized particle hypothesis for neutral particles.

Note
This serves as a factory for common neutral particles.

Constructor & Destructor Documentation

◆ NeutralParticleHypothesis() [1/3]

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

Constructor with explicit mass.

Parameters
absPdgThe absolute PDG particle code
massThe particle mass

◆ NeutralParticleHypothesis() [2/3]

Acts::NeutralParticleHypothesis::NeutralParticleHypothesis ( PdgParticle absPdg)
explicit

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

Parameters
absPdgThe absolute PDG particle code

◆ NeutralParticleHypothesis() [3/3]

template<typename other_charge_t>
Acts::NeutralParticleHypothesis::NeutralParticleHypothesis ( 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

◆ geantino()

NeutralParticleHypothesis Acts::NeutralParticleHypothesis::geantino ( )
static

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

Returns
Neutral geantino particle hypothesis

◆ photon()

NeutralParticleHypothesis Acts::NeutralParticleHypothesis::photon ( )
static

Create a photon particle hypothesis.

Returns
Neutral photon particle hypothesis

◆ pion0()

NeutralParticleHypothesis Acts::NeutralParticleHypothesis::pion0 ( )
static

Create a neutral pion particle hypothesis.

Returns
Neutral pion particle hypothesis