BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/KalFitAlg/include/KalFitAlg/KalFitMaterial.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------
2// File from KalFit module
3//
4// Filename : KalFitMaterial.h
5//------------------------------------------------------------------------
6// Description :
7// Material is a class which describes the properties of a given
8// material, for instance atomic number, atomic weight and so on.
9//
10//------------------------------------------------------------------------
11// Modif :
12//------------------------------------------------------------------------
13#ifndef _DEFINE_MATERIAL_H_
14#define _DEFINE_MATERIAL_H_
15
16/** Material is a class which describes the properties of a given
17 * material, for instance atomic number, atomic weight and so on.
18 */
19class KalFitMaterial {
20 double rza_; // density * (atomic number) / weight
21 double isq_; // mean excitation potential ** 2
22 double x0_; // radiation length
23 double z_;
24
25public:
26 /// Constructor
28 KalFitMaterial( double z, double a, double i, double rho, double x0 );
30 /// Calculate energy loss
31 double dE( double mass, double path, double p ) const;
32
33 /// Calculate Multiple Scattering angle
34 double mcs_angle( double mass, double path, double p ) const;
35
36 /// Calculate the straggling of energy loss
37 double del_E( double mass, double path, double p ) const;
38
39 /// Extractor
40 double X0( void ) const { return x0_; }
41};
42
43#endif
double mass
double del_E(double mass, double path, double p) const
Calculate the straggling of energy loss.
double mcs_angle(double mass, double path, double p) const
Calculate Multiple Scattering angle.
KalFitMaterial(const KalFitMaterial &mat)
double dE(double mass, double path, double p) const
Calculate energy loss.
KalFitMaterial(double z, double a, double i, double rho, double x0)