#include <G4BetaFermiFunction.hh>
Public Member Functions | |
G4BetaFermiFunction (G4int const fA, G4int const fZ) | |
~G4BetaFermiFunction () | |
G4double | GetFF (const G4double E) |
G4double | GetFFN (const G4double E0) |
Definition at line 31 of file G4BetaFermiFunction.hh.
G4BetaFermiFunction::~G4BetaFermiFunction | ( | ) | [inline] |
Definition at line 36 of file G4BetaFermiFunction.cc.
00037 { 00038 G4double A1, A2; 00039 G4double P, U, S, Y; 00040 G4double F2; 00041 G4double E = E0+1.; 00042 P=std::sqrt(E*E-1.0) ; 00043 U=Z/137.0; 00044 S=std::sqrt(1.0-U*U) - 1.; 00045 Y = 2*PI*U*E/P; 00046 A1 = U*U*E*E + P*P/4.; 00047 A2 = std::fabs(Y/(1-std::exp(-Y))); 00048 F2 = std::pow(A1,S) * A2; 00049 return F2; 00050 }
Definition at line 57 of file G4BetaFermiFunction.cc.
00058 { 00059 00060 G4double A1, A2; 00061 G4double P, U, S, Y; 00062 G4double F2,E; 00063 G4double EE = E0/100.; 00064 U=Z/137.0; 00065 S=std::sqrt(1.0-U*U) - 1.; 00066 G4double F1 = 1E-10; 00067 for (G4int i = 1; i<=100 ; i++) { 00068 E = G4double(i)*EE + 1.; 00069 P=std::sqrt(E*E-1.0) ; 00070 Y = 2*PI*U*E/P; 00071 A1 = U*U*E*E + P*P/4.; 00072 A2 = std::fabs(Y/(1-std::exp(-Y))); 00073 F2 = std::pow(A1,S) * A2; 00074 if (F2 > F1) F1 = F2; 00075 } 00076 return F1; 00077 }