![]() |
Belle II Software
release-05-02-19
|
Muid element numbers. More...
#include <MuidElementNumbers.h>
Public Types | |
| enum | Outcome { c_NotReached = 0, c_StopInBarrel = 1, c_StopInForwardEndcap = 2, c_ExitBarrel = 3, c_ExitForwardEndcap = 4, c_StopInBackwardEndcap = 5, c_ExitBackwardEndcap = 6, c_CrossBarrelStopInForwardMin = 7, c_CrossBarrelStopInForwardMax = 21, c_CrossBarrelStopInBackwardMin = 22, c_CrossBarrelStopInBackwardMax = 36, c_CrossBarrelExitForwardMin = 37, c_CrossBarrelExitForwardMax = 51, c_CrossBarrelExitBackwardMin = 52, c_CrossBarrelExitBackwardMax = 66 } |
| Outcome of the track extrapolation. | |
| enum | DetectorsCrossed { c_Both = 0, c_OnlyBarrel = KLMElementNumbers::c_BKLM, c_OnlyEndcap = KLMElementNumbers::c_EKLM } |
| Labels for detectors crossed. | |
| enum | Hypothesis { c_NotValid = -1, c_Positron = 0, c_Electron = 1, c_Deuteron = 2, c_AntiDeuteron = 3, c_Proton = 4, c_AntiProton = 5, c_PionPlus = 6, c_PionMinus = 7, c_KaonPlus = 8, c_KaonMinus = 9, c_MuonPlus = 10, c_MuonMinus = 11 } |
| Hypothesis number. | |
| enum | IdentifierBits { c_OutcomeBit = 7, c_LastLayerBit = 4, c_DetectorBit = 2, c_DegreesOfFreedomBit = 6 } |
| Bits used for unique identifiers in getLongitudinalID() and in getTransverseID(). More... | |
Public Member Functions | |
| MuidElementNumbers () | |
| Constructor. | |
| ~MuidElementNumbers () | |
| Destructor. | |
Static Public Member Functions | |
| static bool | checkExtrapolationOutcome (unsigned int outcome, int lastLayer) |
| Check the track extrapolation outcome. More... | |
| static unsigned int | calculateExtrapolationOutcome (bool isForward, bool escaped, int lastBarrelLayer, int lastEndcapLayer) |
| Calculate the track extrapolation outcome. More... | |
| static Hypothesis | calculateHypothesisFromPDG (int pdg) |
| Calculate hypothesis number from PDG code. More... | |
| static constexpr int | getMaximalBarrelLayer () |
| Get maximal barrel layer number (0-based). | |
| static constexpr int | getMaximalEndcapForwardLayer () |
| Get maximal endcap-forward layer number (0-based). | |
| static constexpr int | getMaximalEndcapBackwardLayer () |
| Get maximal endcap-forward layer number (0-based). | |
| static constexpr int | getMaximalOutcome () |
| Get maximal value of the track extrapolation outcome. | |
| static constexpr int | getMaximalDetector () |
| Get maximal value of the detector selector (for transverse scattering). | |
| static constexpr int | getMaximalHalfNdof () |
| Get maximal value of NDof/2 (for transverse scattering). | |
| static constexpr int | getSizeReducedChiSquared () |
| Get size of array with reduced chi-squared values (for transverse scattering). | |
| static constexpr double | getMaximalReducedChiSquared () |
| Get maximal value of reduced chi-squared (for transverse scattering). | |
| static std::vector< int > | getPDGVector (int charge) |
| Get a vector with all the hypothesis PDG codes used for Muid. More... | |
| static std::vector< int > | getPDGVector () |
| Get a vector with all the hypothesis PDG codes used for Muid. More... | |
| static int | getLongitudinalID (int hypothesis, int outcome, int lastLayer) |
| Get the unique longitudinal identifier for given hypothesis, outcome and last layer crossed. More... | |
| static int | getTransverseID (int hypothesis, int detector, int degreesOfFreedom) |
| Get the unique transverse identifier for given hypothesis, detector and degrees of freedom. More... | |
Static Protected Attributes | |
| static constexpr int | m_MaximalBarrelLayer = BKLMElementNumbers::getMaximalLayerNumber() - 1 |
| Maximal barrel layer number (0-based). | |
| static constexpr int | m_MaximalEndcapForwardLayer = EKLMElementNumbers::getMaximalLayerNumber() - 1 |
| Maximal endcap-forward layer number (0-based). | |
| static constexpr int | m_MaximalEndcapBackwardLayer = m_MaximalEndcapForwardLayer - 2 |
| Maximal endcap-backward layer number (0-based). | |
| static constexpr int | m_MaximalOutcome = c_CrossBarrelExitBackwardMax |
| Maximal value of the outcome extrapolation. | |
| static constexpr int | m_MaximalDetector = c_OnlyEndcap |
| Maximal value of the detector selector (for transverse scattering). | |
| static constexpr int | m_MaximalHalfNDof = 18 |
| Maximal value of NDof/2 (for transverse scattering). | |
| static constexpr int | m_SizeReducedChiSquared = 100 |
| Size of array with reduced chi-squared values (for transverse scattering). | |
| static constexpr double | m_MaximalReducedChiSquared = 10. |
| Maximal value of reduced chi-squared (for transverse scattering). | |
Muid element numbers.
Definition at line 38 of file MuidElementNumbers.h.
| enum IdentifierBits |
Bits used for unique identifiers in getLongitudinalID() and in getTransverseID().
| Enumerator | |
|---|---|
| c_OutcomeBit | Number of bits occupied by outcome in getLongitudinalID(). |
| c_LastLayerBit | Number of bits occupied by lastLayer in getLongitudinalID(). |
| c_DetectorBit | Number of bits occupied by detector in getTransverseID(). |
| c_DegreesOfFreedomBit | Number of bits occupied by degreesOfFreedom in getTransverseID(). |
Definition at line 94 of file MuidElementNumbers.h.
|
static |
Calculate the track extrapolation outcome.
| [in] | isForward | Forward or backward. |
| [in] | escaped | Escaped or not from KLM volumes. |
| [in] | lastBarrelLayer | Last barrel layer crossed during the extrapolation. |
| [in] | lastEndcapLayer | Last endcap layer crossed during the extrapolation. |
Definition at line 79 of file MuidElementNumbers.cc.
|
static |
Calculate hypothesis number from PDG code.
| [in] | pdg | PDG code. |
Definition at line 123 of file MuidElementNumbers.cc.
|
static |
Check the track extrapolation outcome.
| [in] | outcome | Track extrapolation outcome. |
| [in] | lastLayer | Last layer crossed during the extrapolation. |
Definition at line 27 of file MuidElementNumbers.cc.
|
static |
Get the unique longitudinal identifier for given hypothesis, outcome and last layer crossed.
bits 0-3 for hypothesis; bits 4-10 for outcome; bits 11-14 for last layer crossed.
| [in] | hypothesis | Hypothesis number. |
| [in] | outcome | Track extrapolation outcome. |
| [in] | lastLayer | Last layer crossed during the extrapolation.. |
Definition at line 176 of file MuidElementNumbers.cc.
|
static |
Get a vector with all the hypothesis PDG codes used for Muid.
Both positive and negative charges are returned.
Definition at line 167 of file MuidElementNumbers.cc.
|
static |
Get a vector with all the hypothesis PDG codes used for Muid.
Only the codes of the selected charge are returned.
| [in] | charge | Only codes of the selected charge are returned. |
Definition at line 155 of file MuidElementNumbers.cc.
|
static |
Get the unique transverse identifier for given hypothesis, detector and degrees of freedom.
bit 0-3 for hypothesis; bit 4-5 for detector; bit 6-11 for degrees of freedom.
| [in] | hypothesis | Hypothesis number. |
| [in] | detector | Detector number. |
| [in] | degreesOfFreedom | Number of degrees of freedom. |
Definition at line 184 of file MuidElementNumbers.cc.