Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4hParametrisedLossModel Class Reference

#include <G4hParametrisedLossModel.hh>

Inheritance diagram for G4hParametrisedLossModel:
Collaboration diagram for G4hParametrisedLossModel:

Public Member Functions

 G4hParametrisedLossModel (const G4String &name)
 
 ~G4hParametrisedLossModel ()
 
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
 
G4String ModelName () const
 
- Public Member Functions inherited from G4VLowEnergyModel
 G4VLowEnergyModel (const G4String &name)
 
virtual ~G4VLowEnergyModel ()
 

Detailed Description

Definition at line 60 of file G4hParametrisedLossModel.hh.

Constructor & Destructor Documentation

G4hParametrisedLossModel::G4hParametrisedLossModel ( const G4String name)

Definition at line 74 of file G4hParametrisedLossModel.cc.

75  :G4VLowEnergyModel(name), modelName(name)
76 {
77  InitializeMe();
78 }
G4VLowEnergyModel(const G4String &name)
G4hParametrisedLossModel::~G4hParametrisedLossModel ( )

Definition at line 127 of file G4hParametrisedLossModel.cc.

128 {
129  delete eStopingPowerTable;
130 }

Member Function Documentation

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

Implements G4VLowEnergyModel.

Definition at line 178 of file G4hParametrisedLossModel.cc.

180 {
181  return highEnergyLimit;
182 }
G4double G4hParametrisedLossModel::HighEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 192 of file G4hParametrisedLossModel.cc.

193 {
194  return highEnergyLimit;
195 }
G4bool G4hParametrisedLossModel::IsInCharge ( const G4DynamicParticle particle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 199 of file G4hParametrisedLossModel.cc.

201 {
202  return true;
203 }
G4bool G4hParametrisedLossModel::IsInCharge ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 207 of file G4hParametrisedLossModel.cc.

209 {
210  return true;
211 }
G4double G4hParametrisedLossModel::LowEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 170 of file G4hParametrisedLossModel.cc.

172 {
173  return lowEnergyLimit;
174 }
G4double G4hParametrisedLossModel::LowEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 185 of file G4hParametrisedLossModel.cc.

186 {
187  return lowEnergyLimit;
188 }
G4String G4hParametrisedLossModel::ModelName ( ) const
inline

Definition at line 92 of file G4hParametrisedLossModel.hh.

92 {return modelName;};
G4double G4hParametrisedLossModel::TheValue ( const G4DynamicParticle particle,
const G4Material material 
)
virtual

Implements G4VLowEnergyModel.

Definition at line 134 of file G4hParametrisedLossModel.cc.

136 {
137  G4double scaledEnergy = (particle->GetKineticEnergy())
138  * proton_mass_c2/(particle->GetMass());
139  G4double factor = theZieglerFactor;
140  if (scaledEnergy < lowEnergyLimit) {
141  if (modelName != "QAO") factor *= std::sqrt(scaledEnergy/lowEnergyLimit);
142  scaledEnergy = lowEnergyLimit;
143  }
144  G4double eloss = StoppingPower(material,scaledEnergy) * factor;
145 
146  return eloss;
147 }
static constexpr double proton_mass_c2
G4double GetKineticEnergy() const
G4double GetMass() const
double G4double
Definition: G4Types.hh:76

Here is the call graph for this function:

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

Implements G4VLowEnergyModel.

Definition at line 151 of file G4hParametrisedLossModel.cc.

154 {
155  G4double scaledEnergy = kineticEnergy
156  * proton_mass_c2/(aParticle->GetPDGMass());
157 
158  G4double factor = theZieglerFactor;
159  if (scaledEnergy < lowEnergyLimit) {
160  if (modelName != "QAO") factor *= std::sqrt(scaledEnergy/lowEnergyLimit);
161  scaledEnergy = lowEnergyLimit;
162  }
163  G4double eloss = StoppingPower(material,scaledEnergy) * factor;
164 
165  return eloss;
166 }
static constexpr double proton_mass_c2
G4double GetPDGMass() const
double G4double
Definition: G4Types.hh:76

Here is the call graph for this function:


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