Changeset 961 for trunk/source/processes/electromagnetic/lowenergy/src/G4CrossSectionExcitationBorn.cc
- Timestamp:
- Apr 6, 2009, 12:21:12 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/electromagnetic/lowenergy/src/G4CrossSectionExcitationBorn.cc
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationBorn.cc,v 1.2 2007/11/09 20:11:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // Reference: TNS Geant4-DNA paper 33 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 34 35 // History: 36 // ----------- 37 // Date Name Modification 38 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 39 // 40 // ------------------------------------------------------------------- 41 42 // Class description: 43 // Geant4-DNA Cross total cross section for electron elastic scattering in water 44 // Reference: TNS Geant4-DNA paper 45 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 46 // design foundation and implementation of the first set of models, 47 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 48 // Further documentation available from http://www.ge.infn.it/geant4/dna 49 50 // ------------------------------------------------------------------- 51 26 // $Id: G4CrossSectionExcitationBorn.cc,v 1.4 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 52 28 53 29 #include "G4CrossSectionExcitationBorn.hh" 54 #include "G4Track.hh"55 #include "G4DynamicParticle.hh"56 #include "G4ParticleDefinition.hh"57 #include "G4Electron.hh"58 #include "G4LogLogInterpolation.hh"59 30 60 #include "Randomize.hh" 31 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 61 32 62 33 G4CrossSectionExcitationBorn::G4CrossSectionExcitationBorn() 63 34 { 64 65 // ---- MGP ---- Limits to be checked: current values are just temporary for testing purpose 66 name = "ExcitationBorn"; 67 lowEnergyLimit = 1. * keV; 35 lowEnergyLimit = 500. * keV; 68 36 highEnergyLimit = 10 * MeV; 69 70 37 table = 0; 71 38 } 72 39 40 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 73 41 74 42 G4CrossSectionExcitationBorn::~G4CrossSectionExcitationBorn() … … 77 45 } 78 46 47 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 48 79 49 G4double G4CrossSectionExcitationBorn::CrossSection(const G4Track& track) 80 50 { 81 // Lazy initialisation: load cross section tables in memory the first time access to them is required 82 51 83 52 G4double sigma = 0.; 84 53 85 54 if (table == 0) 86 { 87 // Load tables 88 // ---- MGP ---- 89 table = new G4DNACrossSectionDataSet(new G4LogLogInterpolation, eV,(1e-22/3.343)*m*m ); 90 table->LoadData("dna/sigma_excitation_p_born"); 91 92 // ---- MGP ---- Temporary 93 table->PrintData(); 94 } 55 { 56 table = new G4DNACrossSectionDataSet(new G4LogLogInterpolation, eV,(1e-22/3.343)*m*m ); 57 table->LoadData("dna/sigma_excitation_p_born"); 58 } 95 59 96 60 const G4DynamicParticle* particle = track.GetDynamicParticle(); 97 61 G4double k = particle->GetKineticEnergy(); 98 62 99 if (k > lowEnergyLimit && k <highEnergyLimit)100 101 sigma = table->FindValue(k); // no electron interaction ---- MGP ---- What does this mean?102 63 if (k >= lowEnergyLimit && k <= highEnergyLimit) 64 { 65 sigma = table->FindValue(k); 66 } 103 67 return sigma; 104 68 }
Note: See TracChangeset
for help on using the changeset viewer.