#include <G4EMDissociationSpectrum.hh>
Public Member Functions | |
G4EMDissociationSpectrum () | |
~G4EMDissociationSpectrum () | |
G4double | GetGeneralE1Spectrum (G4double, G4double, G4double) |
G4double | GetGeneralE2Spectrum (G4double, G4double, G4double) |
G4double | GetClosestApproach (const G4double, const G4double, G4double, G4double, G4double) |
Definition at line 67 of file G4EMDissociationSpectrum.hh.
G4EMDissociationSpectrum::G4EMDissociationSpectrum | ( | ) |
Definition at line 67 of file G4EMDissociationSpectrum.cc.
00068 { 00069 bessel = new G4Bessel(); 00070 }
G4EMDissociationSpectrum::~G4EMDissociationSpectrum | ( | ) |
G4double G4EMDissociationSpectrum::GetClosestApproach | ( | const | G4double, | |
const | G4double, | |||
G4double | , | |||
G4double | , | |||
G4double | ||||
) |
Definition at line 110 of file G4EMDissociationSpectrum.cc.
00111 { 00112 G4double bsq = b * b; 00113 G4double gg = 1.0/std::sqrt(1-bsq); 00114 G4double AProot3 = std::pow(AP,1.0/3.0); 00115 G4double ATroot3 = std::pow(AT,1.0/3.0); 00116 G4double bc = 1.34 * fermi * (AProot3+ATroot3 - 0.75 *(1.0/AProot3+1.0/ATroot3)); 00117 // G4double a0 = ZP * ZT * classic_electr_radius/bsq; 00118 G4double a0 = ZP * ZT * elm_coupling / (AT*AP*amu_c2/(AT+AP)) / bsq; 00119 G4double bmin = 1.25 * bc + halfpi*a0/gg; 00120 return bmin; 00121 }
Definition at line 80 of file G4EMDissociationSpectrum.cc.
References CLHEP::detail::n, and G4INCL::Math::pi.
Referenced by G4EMDissociationCrossSection::GetCrossSectionForProjectile().
00081 { 00082 G4double b2 = b*b; 00083 G4double gg = 1.0/std::sqrt(1.0-b2); 00084 G4double xi = Eg * bmin / gg / b / hbarc; 00085 G4double K0 = bessel->K0(xi); 00086 G4double K1 = bessel->K1(xi); 00087 G4double n = 2.0 * fine_structure_const / pi / b2 / Eg * 00088 (xi*K0*K1 - xi*xi*b2/2.0*(K1*K1-K0*K0)); 00089 return n; 00090 }
Definition at line 94 of file G4EMDissociationSpectrum.cc.
References CLHEP::detail::n, and G4INCL::Math::pi.
Referenced by G4EMDissociationCrossSection::GetCrossSectionForProjectile().
00095 { 00096 G4double b2 = b * b; 00097 G4double b4 = b2 * b2; 00098 G4double gg = 1.0/std::sqrt(1.0-b2); 00099 G4double xi = Eg * bmin / gg / b / hbarc; 00100 G4double K0 = bessel->K0(xi); 00101 G4double K1 = bessel->K1(xi); 00102 G4double n = 2.0 * fine_structure_const / pi / b4 / Eg * 00103 (2.0*(1.0-b2)*K1*K1 + xi*std::pow((2.0-b2),2.0)*K0*K1 - 00104 xi*xi*b4/2.0*(K1*K1-K0*K0)); 00105 return n; 00106 }