Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4VhElectronicStoppingPower.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// -------------------------------------------------------------------
28//
29// GEANT4 Class file
30//
31//
32// File name: G4VhElectronicStoppingPower
33//
34// Author: V.Ivanchenko ([email protected])
35//
36// Creation date: 20 July 2000
37//
38// Modifications:
39// 20/07/2000 V.Ivanchenko First implementation
40//
41// Class Description:
42//
43// Low energy hadrons/ions electronic stopping power parametrisation
44//
45// Class Description: End
46//
47// -------------------------------------------------------------------
48//
49//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
50
52#include "G4SystemOfUnits.hh"
53#include "G4UnitsTable.hh"
54#include "G4Exp.hh"
55
56//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
57
59 theHeMassAMU(4.0026)
60{;}
61
62//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
63
65{;}
66
67//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
68
70 const G4double z,
71 const G4double kineticEnergyHe) const
72{
73 // The aproximation of He effective charge from:
74 // J.F.Ziegler, J.P. Biersack, U. Littmark
75 // The Stopping and Range of Ions in Matter,
76 // Vol.1, Pergamon Press, 1985
77
78 static const G4double c[6] = {0.2865, 0.1266, -0.001429,
79 0.02402,-0.01135, 0.001475} ;
80
81 G4double e = std::log( std::max( 1.0, kineticEnergyHe/(keV*GetHeMassAMU()))) ;
82 G4double x = c[0] ;
83 G4double y = 1.0 ;
84 for (G4int i=1; i<6; i++) {
85 y *= e ;
86 x += y * c[i] ;
87 }
88
89 G4double w = 7.6 - e ;
90 w = 1.0 + (0.007 + 0.00005*z) * G4Exp( -w*w ) ;
91 w = 4.0 * (1.0 - G4Exp(-x)) * w * w ;
92 return w;
93}
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Definition: G4Exp.hh:179
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
G4double HeEffChargeSquare(const G4double z, const G4double kineticEnergyHe) const