Public Member Functions | |
BetaDecay (int a, int z, double q, double t_endpoint) | |
double | dnde_norm (double T_end) |
double | dnde (double T) |
double | dnde_noff (double T) |
double | GetFF (double T) |
double | GetFFN (double T_end) |
Private Attributes | |
int | A |
int | Z |
double | Q |
double | T_endpoint |
double | PI |
double | norm |
bool | doff |
bool | onlyff |
Definition at line 29 of file Potassium_40_gammas.cc.
BetaDecay::BetaDecay | ( | int | a, | |
int | z, | |||
double | q, | |||
double | t_endpoint | |||
) | [inline] |
double BetaDecay::dnde_norm | ( | double | T_end | ) | [inline] |
Definition at line 49 of file Potassium_40_gammas.cc.
00049 { 00050 const int nbins = 100; 00051 const double dT = T_end/nbins; 00052 double sum = 0.0; 00053 for (int ind = 1; ind <= nbins; ++ind) { 00054 double T = double(ind)*dT; 00055 double dnde = 0.0; 00056 if (onlyff) dnde = this->GetFF(T); 00057 else{ 00058 dnde = this->dnde_noff(T); 00059 if (doff) dnde *= this->GetFF(T); 00060 } 00061 sum += dnde; 00062 } 00063 return sum/nbins; 00064 }
double BetaDecay::dnde | ( | double | T | ) | [inline] |
double BetaDecay::dnde_noff | ( | double | T | ) | [inline] |
Definition at line 78 of file Potassium_40_gammas.cc.
00078 { 00079 double ee = Q+1; 00080 //double ee = T_endpoint+1; 00081 double g = T+1.; 00082 return std::sqrt(g*g-1)*(ee-g)*(ee-g)*g; 00083 }
double BetaDecay::GetFF | ( | double | T | ) | [inline] |
Definition at line 88 of file Potassium_40_gammas.cc.
00088 { 00089 double A1, A2; 00090 double P, U, S, Y; 00091 double F2; 00092 double E = T+1.; 00093 P=std::sqrt(E*E-1.0) ; 00094 U=Z/137.0; 00095 S=std::sqrt(1.0-U*U) - 1.; 00096 Y = 2*PI*U*E/P; 00097 A1 = U*U*E*E + P*P/4.; 00098 A2 = std::fabs(Y/(1-std::exp(-Y))); 00099 F2 = std::pow(A1,S) * A2; 00100 return F2; 00101 }
double BetaDecay::GetFFN | ( | double | T_end | ) | [inline] |
Definition at line 106 of file Potassium_40_gammas.cc.
00106 { 00107 double A1, A2; 00108 double P, U, S, Y; 00109 double F2,E; 00110 double EE = T_end/100.; 00111 U=Z/137.0; 00112 S=std::sqrt(1.0-U*U) - 1.; 00113 double F1 = 1E-10; 00114 for (int i = 1; i<=100 ; i++) { 00115 E = double(i)*EE + 1.; 00116 P=std::sqrt(E*E-1.0) ; 00117 Y = 2*PI*U*E/P; 00118 A1 = U*U*E*E + P*P/4.; 00119 A2 = std::fabs(Y/(1-std::exp(-Y))); 00120 F2 = std::pow(A1,S) * A2; 00121 if (F2 > F1) F1 = F2; 00122 } 00123 return F1; 00124 }
int BetaDecay::A [private] |
Definition at line 30 of file Potassium_40_gammas.cc.
int BetaDecay::Z [private] |
Definition at line 30 of file Potassium_40_gammas.cc.
double BetaDecay::Q [private] |
Definition at line 31 of file Potassium_40_gammas.cc.
double BetaDecay::T_endpoint [private] |
Definition at line 31 of file Potassium_40_gammas.cc.
double BetaDecay::PI [private] |
Definition at line 31 of file Potassium_40_gammas.cc.
double BetaDecay::norm [private] |
Definition at line 33 of file Potassium_40_gammas.cc.
bool BetaDecay::doff [private] |
Definition at line 35 of file Potassium_40_gammas.cc.
bool BetaDecay::onlyff [private] |
Definition at line 35 of file Potassium_40_gammas.cc.