19 #ifndef BETHEBLOCHFUNCTIONS_H_
20 #define BETHEBLOCHFUNCTIONS_H_
27 namespace BETHE_BLOCH_FUNC{
32 static const double PAR_INPUT[5]={0.0663945,9.04358,2.49409,0.164471,0.216649};
38 static double BetheBloch(
double *x,
double *par){
46 const double bg = x[0];
48 const double beta2 = bg*bg / (1.0 + bg*bg);
49 const double lnbg = log(bg);
50 const double X = log10(bg);
76 const double common = sqrt(2.0*log(10)/(a*3.0)) / 3.0;
77 const double X0 = XA - common;
78 const double X1 = XA + 2.0*common;
81 delta += 2.0 * log(10) * (X - XA);
83 delta += a * (X1-X)*(X1-X)*(X1-X);
86 return E0/beta2 * (C + 2.0*lnbg - beta2 - delta) + par[4];