Changeset 1340 for trunk/source/processes/electromagnetic/lowenergy/include
- Timestamp:
- Nov 5, 2010, 3:45:55 PM (14 years ago)
- Location:
- trunk/source/processes/electromagnetic/lowenergy/include
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/electromagnetic/lowenergy/include/G4DNAScreenedRutherfordElasticModel.hh
r1337 r1340 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4DNAScreenedRutherfordElasticModel.hh,v 1. 2 2010/01/07 18:10:19sincerti Exp $27 // GEANT4 tag $Name: geant4-09-04-beta-01$26 // $Id: G4DNAScreenedRutherfordElasticModel.hh,v 1.3 2010/09/08 13:39:11 sincerti Exp $ 27 // GEANT4 tag $Name: emlowen-V09-03-54 $ 28 28 // 29 29 … … 67 67 G4double killBelowEnergy; 68 68 G4double lowEnergyLimit; 69 G4double lowEnergyLimitOfModel; 70 G4double intermediateEnergyLimit; 69 G4double intermediateEnergyLimit; 71 70 G4double highEnergyLimit; 72 71 G4bool isInitialised; -
trunk/source/processes/electromagnetic/lowenergy/include/G4Generator2BN.hh
r819 r1340 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4Generator2BN.hh,v 1.4 2010/10/14 14:00:29 vnivanch Exp $ 27 // GEANT4 tag $Name: emlowen-V09-03-54 $ 26 28 // 27 29 // ------------------------------------------------------------------- … … 63 65 public: 64 66 65 G4Generator2BN(const G4String& name );67 G4Generator2BN(const G4String& name = ""); 66 68 67 ~G4Generator2BN();69 virtual ~G4Generator2BN(); 68 70 69 71 G4double PolarAngle(const G4double initial_energy, -
trunk/source/processes/electromagnetic/lowenergy/include/G4Generator2BS.hh
r819 r1340 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4Generator2BS.hh,v 1.5 2010/10/14 14:00:29 vnivanch Exp $ 27 // GEANT4 tag $Name: emlowen-V09-03-54 $ 26 28 // 27 29 // ------------------------------------------------------------------- … … 39 41 // 40 42 // Modifications: 41 // 02 Jun 2003 First implementation acording with new design 43 // 02 Jun 2003 First implementation acording with new design 44 // 12 Oct 2010 V.Ivanchenko moved RejectionFunction inline 42 45 // 43 46 // 44 47 // Class Description: 45 48 // 46 // Concrete class for Bremsstrahlung Angular Distribution Generation - 2BS Distribution 47 // Further documentation available from http://www.ge.infn.it/geant4/lowE 49 // Concrete class for Bremsstrahlung Angular Distribution Generation 50 // 2BS Distribution 51 // 48 52 49 53 // ------------------------------------------------------------------- … … 57 61 #include "G4VBremAngularDistribution.hh" 58 62 63 class G4Pow; 64 59 65 class G4Generator2BS : public G4VBremAngularDistribution 60 66 { … … 62 68 public: 63 69 64 G4Generator2BS(const G4String& name );70 G4Generator2BS(const G4String& name=""); 65 71 66 ~G4Generator2BS();72 virtual ~G4Generator2BS(); 67 73 68 74 G4double PolarAngle(const G4double initial_energy, … … 74 80 protected: 75 81 76 G4double RejectionFunction(G4double value) const;82 inline G4double RejectionFunction(G4double value) const; 77 83 78 84 private: 85 79 86 G4double z; 80 87 G4double rejection_argument1, rejection_argument2, rejection_argument3; 81 88 G4double EnergyRatio; 82 89 90 G4Pow* g4pow; 91 83 92 // hide assignment operator 84 85 93 G4Generator2BS & operator=(const G4Generator2BS &right); 94 G4Generator2BS(const G4Generator2BS&); 86 95 87 96 }; 88 97 98 inline G4double G4Generator2BS::RejectionFunction(G4double value) const 99 { 100 G4double argument = (1+value)*(1+value); 101 return (4+std::log(rejection_argument3+(z/argument)))* 102 ((4*EnergyRatio*value/argument)-rejection_argument1)+rejection_argument2; 103 } 104 89 105 #endif 90 106 -
trunk/source/processes/electromagnetic/lowenergy/include/G4IonParametrisedLossModel.hh
r1228 r1340 24 24 // ******************************************************************** 25 25 // 26 // 26 // $Id: G4IonParametrisedLossModel.hh,v 1.8 2010/11/04 12:21:47 vnivanch Exp $ 27 // GEANT4 tag $Name: emlowen-V09-03-54 $ 27 28 // 28 29 // =========================================================================== … … 136 137 137 138 // Function, which computes the mean energy transfer rate to delta rays 138 G4double DeltaRayMeanEnergyTransferRate(139 inline G4double DeltaRayMeanEnergyTransferRate( 139 140 const G4Material*, // Target Material 140 141 const G4ParticleDefinition*, // Projectile … … 183 184 // Function checking the applicability of physics tables to ion-material 184 185 // combinations (Note: the energy range of tables is not checked) 185 LossTableList::iterator IsApplicable(186 inline LossTableList::iterator IsApplicable( 186 187 const G4ParticleDefinition*, // Projectile (ion) 187 188 const G4Material*); // Target material … … 208 209 209 210 // Function for setting energy loss limit for stopping power integration 210 void SetEnergyLossLimit(G4double ionEnergyLossLimit);211 inline void SetEnergyLossLimit(G4double ionEnergyLossLimit); 211 212 212 213 protected: 214 215 virtual 213 216 G4double MaxSecondaryEnergy(const G4ParticleDefinition*, 214 217 G4double); // Kinetic energy of projectile … … 231 234 232 235 // Function, which updates parameters concering particle properties 233 void UpdateCache(236 inline void UpdateCache( 234 237 const G4ParticleDefinition*); // Projectile (ion) 235 238 … … 287 290 288 291 // Pointer to particle change object, which is used to set e.g. the 289 // energy loss due to nuclear stopping 292 // energy loss and secondary delta-electron 293 // used indicating if model is initialized 290 294 G4ParticleChangeForLoss* particleChangeLoss; 291 292 // Flag indicating if model is initialized (i.e. if293 // G4ParticleChangeForLoss was created)294 G4bool modelIsInitialised;295 295 296 296 // ###################################################################### -
trunk/source/processes/electromagnetic/lowenergy/include/G4IonParametrisedLossModel.icc
r1196 r1340 24 24 // ******************************************************************** 25 25 // 26 // 26 // $Id: G4IonParametrisedLossModel.icc,v 1.7 2010/11/04 12:21:47 vnivanch Exp $ 27 // GEANT4 tag $Name: emlowen-V09-03-54 $ 27 28 // 28 29 // =========================================================================== … … 43 44 // Minor bug fix in ComputeDEDXPerVolume (AL) 44 45 // 20. 11. 2009 - Added set-method for energy loss limit (AL) 46 // 04. 11. 2010 - Moved virtual methods to the source (VI) 45 47 // 46 48 // Class description: … … 54 56 // 55 57 // =========================================================================== 56 57 58 58 59 inline G4double G4IonParametrisedLossModel::DeltaRayMeanEnergyTransferRate( … … 116 117 } 117 118 118 119 inline120 G4double G4IonParametrisedLossModel::MaxSecondaryEnergy(121 const G4ParticleDefinition* particle,122 G4double kineticEnergy) {123 124 // ############## Maximum energy of secondaries ##########################125 // Function computes maximum energy of secondary electrons which are126 // released by an ion127 //128 // See Geant4 physics reference manual (version 9.1), section 9.1.1129 //130 // Ref.: W.M. Yao et al, Jour. of Phys. G 33 (2006) 1.131 // C.Caso et al. (Part. Data Group), Europ. Phys. Jour. C 3 1 (1998).132 // B. Rossi, High energy particles, New York, NY: Prentice-Hall (1952).133 //134 // (Implementation adapted from G4BraggIonModel)135 136 if(particle != cacheParticle) UpdateCache(particle);137 138 G4double tau = kineticEnergy/cacheMass;139 G4double tmax = 2.0 * electron_mass_c2 * tau * (tau + 2.) /140 (1. + 2.0 * (tau + 1.) * cacheElecMassRatio +141 cacheElecMassRatio * cacheElecMassRatio);142 143 return tmax;144 }145 146 147 119 inline 148 120 void G4IonParametrisedLossModel::UpdateCache( … … 155 127 cacheChargeSquare = q * q; 156 128 } 157 158 159 inline160 G4double G4IonParametrisedLossModel::GetChargeSquareRatio(161 const G4ParticleDefinition* particle,162 const G4Material* material,163 G4double kineticEnergy) { // Kinetic energy164 165 G4double chargeSquareRatio = corrections ->166 EffectiveChargeSquareRatio(particle,167 material,168 kineticEnergy);169 corrFactor = chargeSquareRatio *170 corrections -> EffectiveChargeCorrection(particle,171 material,172 kineticEnergy);173 return corrFactor;174 }175 176 177 inline178 G4double G4IonParametrisedLossModel::GetParticleCharge(179 const G4ParticleDefinition* particle,180 const G4Material* material,181 G4double kineticEnergy) { // Kinetic energy182 183 return corrections -> GetParticleCharge(particle, material, kineticEnergy);184 }185 186 129 187 130 inline
Note: See TracChangeset
for help on using the changeset viewer.