Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4hBetheBlochModel Class Reference

#include <G4hBetheBlochModel.hh>

+ Inheritance diagram for G4hBetheBlochModel:

Public Member Functions

 G4hBetheBlochModel (const G4String &name)
 
 ~G4hBetheBlochModel ()
 
G4double TheValue (const G4DynamicParticle *particle, const G4Material *material)
 
G4double TheValue (const G4ParticleDefinition *aParticle, const G4Material *material, G4double kineticEnergy)
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle) const
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle) const
 
G4bool IsInCharge (const G4DynamicParticle *particle, const G4Material *material) const
 
G4bool IsInCharge (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
- Public Member Functions inherited from G4VLowEnergyModel
 G4VLowEnergyModel (const G4String &name)
 
virtual ~G4VLowEnergyModel ()
 
virtual G4double TheValue (const G4DynamicParticle *particle, const G4Material *material)=0
 
virtual G4double TheValue (const G4ParticleDefinition *aParticle, const G4Material *material, G4double kineticEnergy)=0
 
virtual G4double HighEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
virtual G4double LowEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
virtual G4double HighEnergyLimit (const G4ParticleDefinition *aParticle) const =0
 
virtual G4double LowEnergyLimit (const G4ParticleDefinition *aParticle) const =0
 
virtual G4bool IsInCharge (const G4DynamicParticle *particle, const G4Material *material) const =0
 
virtual G4bool IsInCharge (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
G4VLowEnergyModeloperator= (const G4VLowEnergyModel &right)=delete
 
 G4VLowEnergyModel (const G4VLowEnergyModel &)=delete
 

Detailed Description

Definition at line 59 of file G4hBetheBlochModel.hh.

Constructor & Destructor Documentation

◆ G4hBetheBlochModel()

G4hBetheBlochModel::G4hBetheBlochModel ( const G4String name)
explicit

Definition at line 63 of file G4hBetheBlochModel.cc.

64 : G4VLowEnergyModel(name),
65 twoln10(2.*std::log(10.)),
66 bg2lim(0.0169),
67 taulim(8.4146e-3),
68 lowEnergyLimit(1.*MeV),
69 highEnergyLimit(100.*GeV)
70{;}

◆ ~G4hBetheBlochModel()

G4hBetheBlochModel::~G4hBetheBlochModel ( )

Definition at line 74 of file G4hBetheBlochModel.cc.

75{;}

Member Function Documentation

◆ HighEnergyLimit() [1/2]

G4double G4hBetheBlochModel::HighEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 124 of file G4hBetheBlochModel.cc.

126{
127 return highEnergyLimit ;
128}

◆ HighEnergyLimit() [2/2]

G4double G4hBetheBlochModel::HighEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 104 of file G4hBetheBlochModel.cc.

107{
108 return highEnergyLimit ;
109}

◆ IsInCharge() [1/2]

G4bool G4hBetheBlochModel::IsInCharge ( const G4DynamicParticle particle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 140 of file G4hBetheBlochModel.cc.

142{
143 return true ;
144}

◆ IsInCharge() [2/2]

G4bool G4hBetheBlochModel::IsInCharge ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 148 of file G4hBetheBlochModel.cc.

150{
151 return true ;
152}

◆ LowEnergyLimit() [1/2]

G4double G4hBetheBlochModel::LowEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 132 of file G4hBetheBlochModel.cc.

134{
135 return lowEnergyLimit ;
136}

◆ LowEnergyLimit() [2/2]

G4double G4hBetheBlochModel::LowEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 113 of file G4hBetheBlochModel.cc.

116{
117 G4double taul = (material->GetIonisation()->GetTaul())*
118 (aParticle->GetPDGMass()) ;
119 return taul ;
120}
double G4double
Definition: G4Types.hh:83
G4double GetTaul() const
G4IonisParamMat * GetIonisation() const
Definition: G4Material.hh:221

◆ TheValue() [1/2]

G4double G4hBetheBlochModel::TheValue ( const G4DynamicParticle particle,
const G4Material material 
)
virtual

Implements G4VLowEnergyModel.

Definition at line 79 of file G4hBetheBlochModel.cc.

81{
82 G4double energy = particle->GetKineticEnergy() ;
83 G4double particleMass = particle->GetMass() ;
84
85 G4double eloss = BetheBlochFormula(material,energy,particleMass) ;
86
87 return eloss ;
88}
G4double GetMass() const
G4double GetKineticEnergy() const
G4double energy(const ThreeVector &p, const G4double m)

◆ TheValue() [2/2]

G4double G4hBetheBlochModel::TheValue ( const G4ParticleDefinition aParticle,
const G4Material material,
G4double  kineticEnergy 
)
virtual

Implements G4VLowEnergyModel.

Definition at line 92 of file G4hBetheBlochModel.cc.

95{
96 G4double particleMass = aParticle->GetPDGMass() ;
97 G4double eloss = BetheBlochFormula(material,kineticEnergy,particleMass) ;
98
99 return eloss ;
100}

The documentation for this class was generated from the following files: