Import Geant4 3.1.0 source tree
This commit is contained in:
@@ -5,14 +5,15 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4IonisParamElm.cc,v 1.3 1999/12/15 14:50:51 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-03-00 $
|
||||
// $Id: G4IonisParamElm.cc,v 1.6 2001/03/12 17:48:48 maire Exp $
|
||||
// GEANT4 tag $Name: geant4-03-01 $
|
||||
//
|
||||
//
|
||||
// ------------ class G4IonisParamElm ------------
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
//
|
||||
// 08-03-01, correct handling of fShellCorrectionVector. M.Maire
|
||||
// 22-11-00, tabulation of ionisation potential from
|
||||
// the ICRU Report N#37. V.Ivanchenko
|
||||
// 09-07-98, data moved from G4Element. M.Maire
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
@@ -32,8 +33,29 @@ G4IonisParamElm::G4IonisParamElm(G4double Z)
|
||||
fZZ3 = pow(fZ*(fZ+1.), 1./3.);
|
||||
flogZ3 = log(fZ)/3.;
|
||||
|
||||
// parameters for energy loss by ionisation
|
||||
fMeanExcitationEnergy = 16.*pow(fZ,0.9)*eV;
|
||||
// Parameters for energy loss by ionisation
|
||||
|
||||
// Mean excitation energy
|
||||
// from "Stopping Powers for Electrons and Positrons"
|
||||
// ICRU Report N#37, 1984 (energy in eV)
|
||||
static double exc[100] = {
|
||||
21.8, 20.9, 13.3, 15.9, 15.2, 13.0, 11.7, 11.9, 11.5, 13.7,
|
||||
13.6, 13.0, 12.8, 12.4, 11.5, 11.3, 10.2, 10.4, 10.0, 9.6,
|
||||
10.3, 10.6, 10.7, 10.7, 10.9, 11.0, 11.0, 11.1, 11.1, 11.0,
|
||||
10.8, 10.4, 10.5, 10.2, 9.8, 9.8, 9.8, 9.6, 9.7, 9.8,
|
||||
10.2, 10.1, 10.0, 10.0, 10.0, 10.2, 10.0, 9.8, 10.0, 9.8,
|
||||
9.5, 9.3, 9.3, 8.9, 8.9, 8.8, 8.8, 8.8, 9.1, 9.1,
|
||||
9.2, 9.3, 9.2, 9.2, 9.4, 9.5, 9.7, 9.7, 9.8, 9.8,
|
||||
9.8, 9.8, 9.8, 9.8, 9.8, 9.8, 9.8, 10.1, 10.0, 10.0,
|
||||
10.0, 10.0, 9.9, 9.9, 9.7, 9.2, 9.5, 9.4, 9.4, 9.4,
|
||||
9.6, 9.7, 9.7, 9.8, 9.8, 9.8, 9.8, 9.9, 9.9, 9.9 };
|
||||
|
||||
G4int iz = (G4int)Z - 1 ;
|
||||
if(0 > iz) iz = 0;
|
||||
if(98 < iz) iz = 98 ;
|
||||
fMeanExcitationEnergy =
|
||||
fZ * (exc[iz] + (fZ - (G4double)(iz))*(exc[iz+1] - exc[iz])) * eV ;
|
||||
|
||||
|
||||
fTau0 = 0.1*fZ3*MeV/proton_mass_c2;
|
||||
fTaul = 2.*MeV/proton_mass_c2;
|
||||
@@ -61,13 +83,15 @@ G4IonisParamElm::G4IonisParamElm(G4double Z)
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
|
||||
G4IonisParamElm::~G4IonisParamElm()
|
||||
{ }
|
||||
{
|
||||
if (fShellCorrectionVector) delete [] fShellCorrectionVector;
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
|
||||
G4IonisParamElm::G4IonisParamElm(G4IonisParamElm& right)
|
||||
{
|
||||
*this = right;
|
||||
*this = right;
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
@@ -87,21 +111,27 @@ const G4IonisParamElm& G4IonisParamElm::operator=(const G4IonisParamElm& right)
|
||||
fBlow = right.fBlow;
|
||||
fClow = right.fClow;
|
||||
fMeanExcitationEnergy = right.fMeanExcitationEnergy;
|
||||
fShellCorrectionVector = right.fShellCorrectionVector;
|
||||
if (fShellCorrectionVector) delete [] fShellCorrectionVector;
|
||||
fShellCorrectionVector = new G4double[3];
|
||||
fShellCorrectionVector[0] = right.fShellCorrectionVector[0];
|
||||
fShellCorrectionVector[1] = right.fShellCorrectionVector[1];
|
||||
fShellCorrectionVector[2] = right.fShellCorrectionVector[2];
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
|
||||
G4int G4IonisParamElm::operator==(const G4IonisParamElm &right) const
|
||||
G4int G4IonisParamElm::operator==(const G4IonisParamElm& right) const
|
||||
{
|
||||
return (this == (G4IonisParamElm *) &right);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
|
||||
G4int G4IonisParamElm::operator!=(const G4IonisParamElm &right) const
|
||||
G4int G4IonisParamElm::operator!=(const G4IonisParamElm& right) const
|
||||
{
|
||||
return (this != (G4IonisParamElm *) &right);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... ....oooOO0OOooo....
|
||||
|
||||
Reference in New Issue
Block a user