#include <G4WilsonRadius.hh>
Public Member Functions | |
G4WilsonRadius () | |
~G4WilsonRadius () | |
G4double | GetWilsonRMSRadius (G4double A) |
G4double | GetWilsonRadius (G4double A) |
Definition at line 78 of file G4WilsonRadius.hh.
G4WilsonRadius::G4WilsonRadius | ( | ) |
Definition at line 67 of file G4WilsonRadius.cc.
00068 { 00069 G4double r0 = 0.84*fermi; 00070 r0sq = r0 * r0; 00071 factor = std::sqrt(5.0/3.0) * fermi; 00072 third = 1.0 / 3.0; 00073 }
G4WilsonRadius::~G4WilsonRadius | ( | ) |
Definition at line 102 of file G4WilsonRadius.cc.
References GetWilsonRMSRadius().
Referenced by G4WilsonAbrasionModel::ApplyYourself(), and G4NuclearAbrasionGeometry::G4NuclearAbrasionGeometry().
00103 { 00104 G4double r = GetWilsonRMSRadius(A); 00105 return 1.29*std::sqrt(r*r-r0sq); 00106 }
Definition at line 80 of file G4WilsonRadius.cc.
Referenced by G4TripathiLightCrossSection::GetElementCrossSection(), and GetWilsonRadius().
00081 { 00082 G4double radius; 00083 if (A > 26.0) 00084 radius = factor * (0.84*std::pow(A,third) + 0.55); 00085 else 00086 { 00087 // this was changed from just G4double to static const G4double 00088 // to make sure that time wasn't being wasted on every call reloading a stack variable 00089 // by MHM 20050119 00090 static const G4double r[27] = {0.0, 0.85, 2.095, 1.976, 1.671, 1.986, 00091 2.57, 2.41, 2.23, 2.519, 2.45, 00092 2.42, 2.471, 2.440, 2.58, 2.611, 00093 2.730, 2.662, 2.727, 2.9, 3.040, 00094 2.867, 2.969, 2.94, 3.075, 3.11, 00095 3.06}; 00096 radius = factor * r[(G4int) (A+0.4)]; 00097 } 00098 return radius; 00099 }