ATLAS Offline Software
Loading...
Searching...
No Matches
ParticleHypothesis.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
6// ParticleHypothesis.h, (c) ATLAS Detector software
8
9#ifndef TRKEXUTILS_PARTICLEHYPOTHESIS_H
10#define TRKEXUTILS_PARTICLEHYPOTHESIS_H
11
12// Gaudi
13#include "GaudiKernel/SystemOfUnits.h"
14
16
17// define the particle hypotheses
18#define PARTICLEHYPOTHESES 11
19
20namespace Trk {
21
31 muon = 2,
32 pion = 3,
33 kaon = 4,
34 proton = 5,
35 photon = 6, // for Fatras usage
36 neutron = 7, // for Fatras usage
37 pi0 = 8, // for Fatras usage
38 k0 = 9, // for Fatras usage
39 nonInteractingMuon = 10, // For material collection
41 undefined = 99};
42
53
54 namespace ParticleMasses {
56 constexpr double mass[PARTICLEHYPOTHESES] =
57 { (0.*Gaudi::Units::MeV),// non interacting mass
58 (ParticleConstants::electronMassInMeV), // electron mass
60 (ParticleConstants::chargedPionMassInMeV), // charged pion mass
63 (ParticleConstants::photonMassInMeV), // photon rest mass
64 (ParticleConstants::neutronMassInMeV), // neutron rest mass
65 (ParticleConstants::piZeroMassInMeV), // pi0 rest mass
66 (ParticleConstants::KZeroMassInMeV), // K0 rest mass
68 };
69 };
70
76
93
94
95}
96
97#endif
A number of constexpr particle constants to avoid hardcoding them directly in various places.
#define PARTICLEHYPOTHESES
constexpr double muonMassInMeV
the mass of the muon (in MeV)
constexpr double chargedKaonMassInMeV
the mass of the charged kaon (in MeV)
constexpr double protonMassInMeV
the mass of the proton (in MeV)
constexpr double KZeroMassInMeV
the mass of the neutral kaon (K0) (in MeV)
constexpr double chargedPionMassInMeV
the mass of the charged pion (in MeV)
constexpr double electronMassInMeV
the mass of the electron (in MeV)
constexpr double piZeroMassInMeV
the mass of the pi zero (in MeV)
constexpr double neutronMassInMeV
the mass of the neutron (in MeV)
constexpr double photonMassInMeV
various mass-less particles
constexpr double mass[PARTICLEHYPOTHESES]
the array of masses
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Ensure that the ATLAS eigen extensions are properly loaded.
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
@ nonInteractingMuon