23MuELossI(
"genie::mueloss::BetheBlochModel")
29MuELossI(
"genie::mueloss::BetheBlochModel", config)
58 double E2 = TMath::Power(E,2);
59 double beta = TMath::Sqrt(E2-mmu2)/E;
60 double beta2 = TMath::Power(beta,2);
62 double gamma2 = TMath::Power(gamma,2);
64 double I2 = TMath::Power(I,2);
69 double Emaxt = 2*me*p2 / (me2 + mmu2 + 2*me*E);
70 double Emaxt2 = TMath::Power(Emaxt,2);
79 double X = TMath::Log10(beta*gamma);
82 if(X0<X && X<X1) delta = 4.6052*X +
a*TMath::Power(X1-X,m) + C;
83 if(X>X1) delta = 4.6052*X + C;
85 LOG(
"MuELoss",
pDEBUG) <<
"density correction factor = " << delta;
86 LOG(
"MuELoss",
pDEBUG) <<
"max energy transfer (GeV) = " << Emaxt;
87 LOG(
"MuELoss",
pDEBUG) <<
"ionization potential (GeV)= " << I;
88 LOG(
"MuELoss",
pDEBUG) <<
"E = " << E <<
", p2 = " << p2;
89 LOG(
"MuELoss",
pDEBUG) <<
"beta = " << beta <<
", gamma = " << gamma;
92 double de_dx = a2 * (2*
kPi*Na*lamda2) * Z_A * (me/beta2) *
93 (TMath::Log( 2*me*beta2*gamma2*Emaxt/I2 ) -
94 2*beta2 + 0.25*(Emaxt2/E2) - delta);
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE,...
static double DensityCorrection_a(MuELMaterial_t material)
static double DensityCorrection_m(MuELMaterial_t material)
static double DensityCorrection_X0(MuELMaterial_t material)
static double DensityCorrection_C(MuELMaterial_t material)
static double IonizationPotential(MuELMaterial_t material)
static double DensityCorrection_X1(MuELMaterial_t material)
virtual ~BetheBlochModel()
MuELProcess_t Process(void) const
double dE_dx(double E, MuELMaterial_t material) const
implement the MuELossI interface
static double A(MuELMaterial_t material)
static double Z(MuELMaterial_t material)
static double Threshold(MuELProcess_t p)
static const double kAem2
static const double kElectronMass2
static const double kMuonMass2
static const double kMuonMass
static const double kElectronMass
The MuELoss utility package that computes muon energy losses in the energy range from 1 GeV to 10 TeV...
enum genie::mueloss::EMuELMaterial MuELMaterial_t
static constexpr double cm2
static constexpr double GeV
static constexpr double eV
static constexpr double g
THE MAIN GENIE PROJECT NAMESPACE