- Timestamp:
- Apr 20, 2009, 4:53:50 PM (15 years ago)
- Location:
- trunk/source/processes/electromagnetic/highenergy/include
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/electromagnetic/highenergy/include/G4BetheBlochNoDeltaModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4BetheBlochNoDeltaModel.hh,v 1. 7 2006/06/29 19:32:14 gunterExp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4BetheBlochNoDeltaModel.hh,v 1.8 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 68 68 G4double cutEnergy); 69 69 70 virtual G4double C omputeCrossSectionPerElectron(71 const G4ParticleDefinition*,72 G4double kineticEnergy,73 G4double cutEnergy,74 G4double maxEnergy);70 virtual G4double CrossSectionPerVolume(const G4Material*, 71 const G4ParticleDefinition*, 72 G4double kineticEnergy, 73 G4double cutEnergy, 74 G4double maxEnergy); 75 75 76 76 private: … … 84 84 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 85 85 86 inline G4double G4BetheBlochNoDeltaModel::ComputeDEDXPerVolume(87 const G4Material* material,88 const G4ParticleDefinition* pd,89 G4double kinEnergy, G4double)90 {91 G4double dedx = G4BetheBlochModel::ComputeDEDXPerVolume(material, pd, kinEnergy, DBL_MAX);92 return dedx;93 }94 95 inline G4double G4BetheBlochNoDeltaModel::ComputeCrossSectionPerElectron(96 const G4ParticleDefinition*,97 G4double, G4double, G4double)98 {99 return 0.0;100 }101 102 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....103 104 86 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4BraggNoDeltaModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4BraggNoDeltaModel.hh,v 1. 6 2006/06/29 19:32:16 gunterExp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4BraggNoDeltaModel.hh,v 1.7 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 68 68 G4double cutEnergy); 69 69 70 virtual G4double C omputeCrossSectionPerElectron(70 virtual G4double CrossSectionPerVolume(const G4Material*, 71 71 const G4ParticleDefinition*, 72 72 G4double kineticEnergy, 73 73 G4double cutEnergy, 74 74 G4double maxEnergy); 75 76 75 private: 77 76 … … 84 83 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 85 84 86 inline G4double G4BraggNoDeltaModel::ComputeDEDXPerVolume(87 const G4Material* material,88 const G4ParticleDefinition* pd,89 G4double kinEnergy, G4double)90 {91 G4double dedx = G4BraggIonModel::ComputeDEDXPerVolume(material, pd, kinEnergy, DBL_MAX);92 return dedx;93 }94 95 inline G4double G4BraggNoDeltaModel::ComputeCrossSectionPerElectron(96 const G4ParticleDefinition*,97 G4double, G4double, G4double)98 {99 return 0.0;100 }101 102 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....103 104 85 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4ee2KChargedModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4ee2KChargedModel.hh,v 1. 1 2008/07/10 18:07:26vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4ee2KChargedModel.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 67 67 virtual ~G4ee2KChargedModel(); 68 68 69 G4double ThresholdEnergy() const;69 virtual G4double ThresholdEnergy() const; 70 70 71 G4double PeakEnergy() const;71 virtual G4double PeakEnergy() const; 72 72 73 G4double ComputeCrossSection(G4double) const;73 virtual G4double ComputeCrossSection(G4double) const; 74 74 75 G4PhysicsVector* PhysicsVector(G4double, G4double) const;75 virtual G4PhysicsVector* PhysicsVector(G4double, G4double) const; 76 76 77 77 virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*, … … 92 92 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 93 93 94 inline G4double G4ee2KChargedModel::ThresholdEnergy() const95 {96 return 2.0*massK;97 }98 99 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....100 101 inline G4double G4ee2KChargedModel::PeakEnergy() const102 {103 return massPhi;104 }105 106 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....107 108 inline G4double G4ee2KChargedModel::ComputeCrossSection(G4double e) const109 {110 G4double ee = std::min(HighEnergy(),e);111 return cross->CrossSection2Kcharged(ee);112 }113 114 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....115 116 94 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4ee2KNeutralModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4ee2KNeutralModel.hh,v 1. 1 2008/07/10 18:07:26vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4ee2KNeutralModel.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 67 67 virtual ~G4ee2KNeutralModel(); 68 68 69 G4double ThresholdEnergy() const;69 virtual G4double ThresholdEnergy() const; 70 70 71 G4double PeakEnergy() const;71 virtual G4double PeakEnergy() const; 72 72 73 G4double ComputeCrossSection(G4double) const;73 virtual G4double ComputeCrossSection(G4double) const; 74 74 75 G4PhysicsVector* PhysicsVector(G4double, G4double) const;75 virtual G4PhysicsVector* PhysicsVector(G4double, G4double) const; 76 76 77 77 virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*, … … 92 92 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 93 93 94 inline G4double G4ee2KNeutralModel::ThresholdEnergy() const95 {96 return 2.0*massK;97 }98 99 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....100 101 inline G4double G4ee2KNeutralModel::PeakEnergy() const102 {103 return massPhi;104 }105 106 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....107 108 inline G4double G4ee2KNeutralModel::ComputeCrossSection(G4double e) const109 {110 G4double ee = std::min(HighEnergy(),e);111 return cross->CrossSection2Kneutral(ee);112 }113 114 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....115 116 94 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4eeTo3PiModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eeTo3PiModel.hh,v 1. 1 2008/07/10 18:07:26vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4eeTo3PiModel.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 67 67 virtual ~G4eeTo3PiModel(); 68 68 69 G4double ThresholdEnergy() const;69 virtual G4double ThresholdEnergy() const; 70 70 71 G4double PeakEnergy() const;71 virtual G4double PeakEnergy() const; 72 72 73 G4double ComputeCrossSection(G4double) const;73 virtual G4double ComputeCrossSection(G4double) const; 74 74 75 G4PhysicsVector* PhysicsVector(G4double, G4double) const;75 virtual G4PhysicsVector* PhysicsVector(G4double, G4double) const; 76 76 77 77 virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*, … … 96 96 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 97 97 98 inline G4double G4eeTo3PiModel::ThresholdEnergy() const99 {100 return std::max(LowEnergy(),2.0*massPi + massPi0);101 }102 103 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....104 105 inline G4double G4eeTo3PiModel::PeakEnergy() const106 {107 G4double e = massOm;108 if(HighEnergy() > massPhi) e = massPhi;109 return e;110 }111 112 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....113 114 inline G4double G4eeTo3PiModel::ComputeCrossSection(G4double e) const115 {116 G4double ee = std::min(HighEnergy(),e);117 return cross->CrossSection3pi(ee);118 }119 120 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....121 122 98 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4eeToHadrons.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eeToHadrons.hh,v 1. 8 2007/05/23 08:50:41vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4eeToHadrons.hh,v 1.9 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 70 70 71 71 // Print out of the class parameters 72 v oid PrintInfo();72 virtual void PrintInfo(); 73 73 74 74 // Set the factor to artificially increase the crossSection (default 1) … … 77 77 protected: 78 78 79 v oid InitialiseProcess(const G4ParticleDefinition*);79 virtual void InitialiseProcess(const G4ParticleDefinition*); 80 80 81 81 private: … … 92 92 }; 93 93 94 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....95 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....96 97 inline G4bool G4eeToHadrons::IsApplicable(const G4ParticleDefinition& p)98 {99 return (&p == G4Positron::Positron());100 }101 102 94 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 103 95 -
trunk/source/processes/electromagnetic/highenergy/include/G4eeToHadronsMultiModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eeToHadronsMultiModel.hh,v 1. 6 2008/07/10 18:06:38vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4eeToHadronsMultiModel.hh,v 1.7 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 91 91 G4double maxEnergy = DBL_MAX); 92 92 93 virtual void PrintInfo(); 94 95 // Set the factor to artificially increase the crossSection (default 1) 96 void SetCrossSecFactor(G4double fac); 97 93 98 inline G4double ComputeCrossSectionPerElectron( 94 99 const G4ParticleDefinition*, … … 96 101 G4double cutEnergy = 0.0, 97 102 G4double maxEnergy = DBL_MAX); 98 99 void PrintInfo();100 101 // Set the factor to artificially increase the crossSection (default 1)102 void SetCrossSecFactor(G4double fac);103 103 104 104 private: -
trunk/source/processes/electromagnetic/highenergy/include/G4eeToPGammaModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eeToPGammaModel.hh,v 1. 1 2008/07/10 18:07:26vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4eeToPGammaModel.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 68 68 virtual ~G4eeToPGammaModel(); 69 69 70 G4double ThresholdEnergy() const;70 virtual G4double ThresholdEnergy() const; 71 71 72 G4double PeakEnergy() const;72 virtual G4double PeakEnergy() const; 73 73 74 G4double ComputeCrossSection(G4double) const;74 virtual G4double ComputeCrossSection(G4double) const; 75 75 76 G4PhysicsVector* PhysicsVector(G4double, G4double) const;76 virtual G4PhysicsVector* PhysicsVector(G4double, G4double) const; 77 77 78 78 virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*, … … 97 97 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 98 98 99 inline G4double G4eeToPGammaModel::ThresholdEnergy() const100 {101 return LowEnergy();102 }103 104 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....105 106 inline G4double G4eeToPGammaModel::PeakEnergy() const107 {108 return massR;109 }110 111 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....112 113 inline G4double G4eeToPGammaModel::ComputeCrossSection(G4double e) const114 {115 G4double ee = std::min(HighEnergy(),e);116 G4double xs;117 if(particle == pi0) xs = cross->CrossSectionPi0G(ee);118 else xs = cross->CrossSectionEtaG(ee);119 return xs;120 }121 122 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....123 124 99 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4eeToTwoPiModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eeToTwoPiModel.hh,v 1. 4 2008/07/10 18:06:39vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4eeToTwoPiModel.hh,v 1.5 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 67 67 virtual ~G4eeToTwoPiModel(); 68 68 69 G4double ThresholdEnergy() const;69 virtual G4double ThresholdEnergy() const; 70 70 71 G4double PeakEnergy() const;71 virtual G4double PeakEnergy() const; 72 72 73 G4double ComputeCrossSection(G4double) const;73 virtual G4double ComputeCrossSection(G4double) const; 74 74 75 G4PhysicsVector* PhysicsVector(G4double, G4double) const;75 virtual G4PhysicsVector* PhysicsVector(G4double, G4double) const; 76 76 77 77 virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*, … … 93 93 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 94 94 95 inline G4double G4eeToTwoPiModel::ThresholdEnergy() const96 {97 return 2.0*massPi;98 }99 100 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....101 102 inline G4double G4eeToTwoPiModel::PeakEnergy() const103 {104 return massRho;105 }106 107 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....108 109 inline G4double G4eeToTwoPiModel::ComputeCrossSection(G4double e) const110 {111 G4double ee = std::min(HighEnergy(),e);112 return cross->CrossSection2pi(ee);113 }114 115 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....116 117 95 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlung.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4hBremsstrahlung.hh,v 1. 1 2008/03/06 11:47:10vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4hBremsstrahlung.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 72 72 virtual ~G4hBremsstrahlung(); 73 73 74 G4bool IsApplicable(const G4ParticleDefinition& p);74 virtual G4bool IsApplicable(const G4ParticleDefinition& p); 75 75 76 G4double MinPrimaryEnergy(const G4ParticleDefinition* p,77 const G4Material*,78 G4double cut);76 virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p, 77 const G4Material*, 78 G4double cut); 79 79 80 80 // Print out of the class parameters 81 v oid PrintInfo();81 virtual void PrintInfo(); 82 82 83 83 protected: 84 84 85 v oid InitialiseEnergyLossProcess(const G4ParticleDefinition*,86 const G4ParticleDefinition*);85 virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition*, 86 const G4ParticleDefinition*); 87 87 88 88 private: … … 100 100 101 101 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 102 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....103 104 inline105 G4bool G4hBremsstrahlung::IsApplicable(const G4ParticleDefinition& p)106 {107 return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 110.0*MeV);108 }109 110 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....111 112 inline113 G4double G4hBremsstrahlung::MinPrimaryEnergy(const G4ParticleDefinition*,114 const G4Material*,115 G4double)116 {117 return lowestKinEnergy;118 }119 120 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....121 102 122 103 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4hPairProduction.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4hPairProduction.hh,v 1. 1 2008/03/06 11:47:11vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4hPairProduction.hh,v 1.2 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 69 69 virtual ~G4hPairProduction(); 70 70 71 G4bool IsApplicable(const G4ParticleDefinition& p);71 virtual G4bool IsApplicable(const G4ParticleDefinition& p); 72 72 73 G4double MinPrimaryEnergy(const G4ParticleDefinition* p,74 const G4Material*, G4double cut);73 virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p, 74 const G4Material*, G4double cut); 75 75 76 76 // Print out of the class parameters 77 v oid PrintInfo();77 virtual void PrintInfo(); 78 78 79 79 protected: 80 80 81 v oid InitialiseEnergyLossProcess(const G4ParticleDefinition*,82 const G4ParticleDefinition*);81 virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition*, 82 const G4ParticleDefinition*); 83 83 84 84 private: … … 98 98 99 99 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 100 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....101 102 inline103 G4bool G4hPairProduction::IsApplicable(const G4ParticleDefinition& p)104 {105 return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 110.0*MeV);106 }107 108 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....109 110 inline111 G4double G4hPairProduction::MinPrimaryEnergy(const G4ParticleDefinition*,112 const G4Material*,113 G4double)114 {115 return lowestKinEnergy;116 }117 118 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....119 100 120 101 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4hhIonisation.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4hhIonisation.hh,v 1. 5 2007/05/23 08:50:41vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4hhIonisation.hh,v 1.6 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 69 69 virtual ~G4hhIonisation(); 70 70 71 G4bool IsApplicable(const G4ParticleDefinition& p);71 virtual G4bool IsApplicable(const G4ParticleDefinition& p); 72 72 73 G4double MinPrimaryEnergy(const G4ParticleDefinition* p,74 const G4Material*, G4double cut);73 virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p, 74 const G4Material*, G4double cut); 75 75 76 76 // Print out of the class parameters … … 104 104 105 105 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 106 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....107 108 inline G4bool G4hhIonisation::IsApplicable(const G4ParticleDefinition& p)109 {110 return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 100.0*MeV &&111 !p.IsShortLived());112 }113 114 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....115 116 inline G4double G4hhIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,117 const G4Material*,118 G4double cut)119 {120 G4double x = 0.5*cut/electron_mass_c2;121 G4double y = electron_mass_c2/mass;122 G4double g = x*y + std::sqrt((1. + x)*(1. + x*y*y));123 return mass*(g - 1.0);124 }125 126 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....127 106 128 107 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4mplIonisation.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4mplIonisation.hh,v 1. 5 2007/05/23 08:50:41vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4mplIonisation.hh,v 1.6 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 72 72 virtual ~G4mplIonisation(); 73 73 74 G4bool IsApplicable(const G4ParticleDefinition& p);74 virtual G4bool IsApplicable(const G4ParticleDefinition& p); 75 75 76 76 // Print out of the class parameters … … 94 94 95 95 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 96 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....97 98 inline G4bool G4mplIonisation::IsApplicable(const G4ParticleDefinition& p)99 {100 return (p.GetParticleName() == "monopole");101 }102 103 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....104 96 105 97 #endif -
trunk/source/processes/electromagnetic/highenergy/include/G4mplIonisationModel.hh
r991 r1005 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4mplIonisationModel.hh,v 1. 6 2007/11/13 18:36:29vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-02 $26 // $Id: G4mplIonisationModel.hh,v 1.7 2009/02/20 16:38:33 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 120 120 121 121 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... 122 123 inline void G4mplIonisationModel::SampleSecondaries(std::vector<G4DynamicParticle*>*,124 const G4MaterialCutsCouple*,125 const G4DynamicParticle*,126 G4double,127 G4double)128 {}129 130 inline G4double G4mplIonisationModel::Dispersion(131 const G4Material* material,132 const G4DynamicParticle* dp,133 G4double& tmax,134 G4double& length)135 {136 G4double siga = 0.0;137 G4double tau = dp->GetKineticEnergy()/mass;138 if(tau > 0.0) {139 G4double electronDensity = material->GetElectronDensity();140 G4double gam = tau + 1.0;141 G4double invbeta2 = (gam*gam)/(tau * (tau+2.0));142 siga = (invbeta2 - 0.5) * twopi_mc2_rcl2 * tmax * length143 * electronDensity * chargeSquare;144 }145 return siga;146 }147 148 149 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
Note: See TracChangeset
for help on using the changeset viewer.