#include <G4IonDEDXScalingICRU73.hh>
Definition at line 62 of file G4IonDEDXScalingICRU73.hh.
G4IonDEDXScalingICRU73::G4IonDEDXScalingICRU73 |
( |
G4int |
minAtomicNumberIon = 19 , |
|
|
G4int |
maxAtomicNumberIon = 102 |
|
) |
| |
Definition at line 62 of file G4IonDEDXScalingICRU73.cc.
65 minAtomicNumber( minAtomicNumberIon ),
66 maxAtomicNumber( maxAtomicNumberIon ),
67 referencePrepared(
false ),
68 atomicNumberRefFe( 26 ),
69 massNumberRefFe( 56 ),
70 atomicNumberRefPow23Fe( 0 ),
73 atomicNumberRefAr( 18 ),
74 massNumberRefAr( 40 ),
75 atomicNumberRefPow23Ar( 0 ),
81 cacheAtomicNumber( 0 ),
82 cacheAtomicNumberPow23( 0 ),
G4IonDEDXScalingICRU73::~G4IonDEDXScalingICRU73 |
( |
| ) |
|
G4int G4IonDEDXScalingICRU73::AtomicNumberBaseIon |
( |
G4int |
atomicNumberIon, |
|
|
const G4Material * |
material |
|
) |
| |
|
virtual |
Reimplemented from G4VIonDEDXScalingAlgorithm.
Definition at line 203 of file G4IonDEDXScalingICRU73.cc.
207 UpdateCacheMaterial(material);
209 G4int atomicNumber = atomicNumberIon;
211 if(atomicNumberIon >= minAtomicNumber &&
212 atomicNumberIon <= maxAtomicNumber &&
213 atomicNumberIon != atomicNumberRefFe &&
214 atomicNumberIon != atomicNumberRefAr) {
216 if(!referencePrepared) CreateReferenceParticles();
218 if( useFe ) atomicNumber = atomicNumberRefFe;
219 else atomicNumber = atomicNumberRefAr;
Reimplemented from G4VIonDEDXScalingAlgorithm.
Definition at line 143 of file G4IonDEDXScalingICRU73.cc.
150 UpdateCacheParticle(particle);
151 UpdateCacheMaterial(material);
153 if(cacheAtomicNumber >= minAtomicNumber &&
154 cacheAtomicNumber <= maxAtomicNumber &&
155 cacheAtomicNumber != atomicNumberRefFe &&
156 cacheAtomicNumber != atomicNumberRefAr) {
158 if(!referencePrepared) CreateReferenceParticles();
162 G4double equilibriumCharge = EquilibriumCharge(cacheMass,
164 cacheAtomicNumberPow23,
167 G4double scaledKineticEnergy = kineticEnergy * (massRefFe / cacheMass);
169 G4double equilibriumChargeRefFe = EquilibriumCharge(massRefFe,
171 atomicNumberRefPow23Fe,
172 scaledKineticEnergy);
174 factor = equilibriumCharge * equilibriumCharge/
175 ( equilibriumChargeRefFe * equilibriumChargeRefFe );
180 G4double equilibriumCharge = EquilibriumCharge(cacheMass,
182 cacheAtomicNumberPow23,
185 G4double scaledKineticEnergy = kineticEnergy * (massRefAr / cacheMass);
187 G4double equilibriumChargeRefAr = EquilibriumCharge(massRefAr,
189 atomicNumberRefPow23Ar,
190 scaledKineticEnergy);
192 factor = equilibriumCharge * equilibriumCharge/
193 ( equilibriumChargeRefAr * equilibriumChargeRefAr );
Reimplemented from G4VIonDEDXScalingAlgorithm.
Definition at line 116 of file G4IonDEDXScalingICRU73.cc.
122 UpdateCacheParticle(particle);
123 UpdateCacheMaterial(material);
125 if(cacheAtomicNumber >= minAtomicNumber &&
126 cacheAtomicNumber <= maxAtomicNumber &&
127 cacheAtomicNumber != atomicNumberRefFe &&
128 cacheAtomicNumber != atomicNumberRefAr) {
130 if(!referencePrepared) CreateReferenceParticles();
133 factor = cacheMassNumber * (massRefFe / cacheMass) / massNumberRefFe;
135 factor = cacheMassNumber * (massRefAr / cacheMass) / massNumberRefAr;
The documentation for this class was generated from the following files: