Belle II Software development
EnergyLossEstimator.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <cmath>
11
12namespace Belle2 {
17 namespace TrackFindingCDC {
18
23
24 public:
29
33 static double getMass(int pdgCode);
34
38 static int getCharge(int pdgCode);
39
47 EnergyLossEstimator(double eDensity, double I, double bZ = NAN);
48
55 double getBetheStoppingPower(double p, int pdgCode) const;
56
60 double getEnergyLoss(double p, int pdgCode, double arcLength) const;
61
66 double getMomentumLossFactor(double p, int pdgCode, double arcLength) const;
67
71 double getLossDist2D(double pt, int pdgCode, double arcLength2D) const;
72
73 private:
75 double m_eDensity;
76
78 double m_I;
79
81 double m_bZ;
82 };
83 }
85}
Helper struct to provide consistent energy loss estimation throughout the CDC track finding.
double getLossDist2D(double pt, int pdgCode, double arcLength2D) const
Calculates a correction term for the two dimensional distance undoing the energy loss after the given...
double getMomentumLossFactor(double p, int pdgCode, double arcLength) const
Calculates a factor applicable scaling the current momentum to the momentum after traveling given arc...
static EnergyLossEstimator forCDC()
Create an energy loss estimator with the material properties of the CDC.
double m_eDensity
Electron density in mol / cm^3.
double m_bZ
B field to be used for the distance translation.
static int getCharge(int pdgCode)
Lookup the charge for the given pdg code.
double getEnergyLoss(double p, int pdgCode, double arcLength) const
Calculates the total energy loss after travelling the given distance.
static double getMass(int pdgCode)
Lookup the mass for the given pdg code.
double m_I
Mean excitation energy in GeV.
double getBetheStoppingPower(double p, int pdgCode) const
Stopping power aka energy loss / arc length.
Abstract base class for different kinds of events.