#include <G4VhElectronicStoppingPower.hh>
Inheritance diagram for G4VhElectronicStoppingPower:
Public Member Functions | |
G4VhElectronicStoppingPower () | |
virtual | ~G4VhElectronicStoppingPower () |
virtual G4double | StoppingPower (const G4Material *material, G4double kineticEnergy)=0 |
virtual G4bool | HasMaterial (const G4Material *material)=0 |
virtual G4double | ElectronicStoppingPower (G4double z, G4double kineticEnergy) const =0 |
Protected Member Functions | |
G4double | HeEffChargeSquare (const G4double z, const G4double kineticEnergyHe) const |
G4double | GetHeMassAMU () const |
Definition at line 59 of file G4VhElectronicStoppingPower.hh.
G4VhElectronicStoppingPower::G4VhElectronicStoppingPower | ( | ) |
G4VhElectronicStoppingPower::~G4VhElectronicStoppingPower | ( | ) | [virtual] |
virtual G4double G4VhElectronicStoppingPower::ElectronicStoppingPower | ( | G4double | z, | |
G4double | kineticEnergy | |||
) | const [pure virtual] |
Implemented in G4hICRU49He, G4hICRU49p, G4hQAOModel, G4hSRIM2000p, G4hZiegler1977He, G4hZiegler1977p, and G4hZiegler1985p.
G4double G4VhElectronicStoppingPower::GetHeMassAMU | ( | ) | const [inline, protected] |
virtual G4bool G4VhElectronicStoppingPower::HasMaterial | ( | const G4Material * | material | ) | [pure virtual] |
Implemented in G4hICRU49He, G4hICRU49p, G4hQAOModel, G4hSRIM2000p, G4hZiegler1977He, G4hZiegler1977p, and G4hZiegler1985p.
G4double G4VhElectronicStoppingPower::HeEffChargeSquare | ( | const G4double | z, | |
const G4double | kineticEnergyHe | |||
) | const [protected] |
Definition at line 68 of file G4VhElectronicStoppingPower.cc.
References GetHeMassAMU().
Referenced by G4hZiegler1977He::ElectronicStoppingPower(), G4hICRU49He::ElectronicStoppingPower(), and G4hICRU49He::StoppingPower().
00071 { 00072 // The aproximation of He effective charge from: 00073 // J.F.Ziegler, J.P. Biersack, U. Littmark 00074 // The Stopping and Range of Ions in Matter, 00075 // Vol.1, Pergamon Press, 1985 00076 00077 static G4double c[6] = {0.2865, 0.1266, -0.001429, 00078 0.02402,-0.01135, 0.001475} ; 00079 00080 G4double e = std::log( std::max( 1.0, kineticEnergyHe/(keV*GetHeMassAMU()))) ; 00081 G4double x = c[0] ; 00082 G4double y = 1.0 ; 00083 for (G4int i=1; i<6; i++) { 00084 y *= e ; 00085 x += y * c[i] ; 00086 } 00087 00088 G4double w = 7.6 - e ; 00089 w = 1.0 + (0.007 + 0.00005*z) * std::exp( -w*w ) ; 00090 w = 4.0 * (1.0 - std::exp(-x)) * w * w ; 00091 return w; 00092 }
virtual G4double G4VhElectronicStoppingPower::StoppingPower | ( | const G4Material * | material, | |
G4double | kineticEnergy | |||
) | [pure virtual] |
Implemented in G4hICRU49He, G4hICRU49p, G4hQAOModel, G4hSRIM2000p, G4hZiegler1977He, G4hZiegler1977p, and G4hZiegler1985p.