#include <G4hParametrisedLossModel.hh>
Inheritance 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 |
Definition at line 60 of file G4hParametrisedLossModel.hh.
G4hParametrisedLossModel::G4hParametrisedLossModel | ( | const G4String & | name | ) |
Definition at line 76 of file G4hParametrisedLossModel.cc.
00077 :G4VLowEnergyModel(name), modelName(name) 00078 { 00079 InitializeMe(); 00080 }
G4hParametrisedLossModel::~G4hParametrisedLossModel | ( | ) |
G4double G4hParametrisedLossModel::HighEnergyLimit | ( | const G4ParticleDefinition * | aParticle | ) | const [virtual] |
G4double G4hParametrisedLossModel::HighEnergyLimit | ( | const G4ParticleDefinition * | aParticle, | |
const G4Material * | material | |||
) | const [virtual] |
G4bool G4hParametrisedLossModel::IsInCharge | ( | const G4ParticleDefinition * | aParticle, | |
const G4Material * | material | |||
) | const [virtual] |
G4bool G4hParametrisedLossModel::IsInCharge | ( | const G4DynamicParticle * | particle, | |
const G4Material * | material | |||
) | const [virtual] |
G4double G4hParametrisedLossModel::LowEnergyLimit | ( | const G4ParticleDefinition * | aParticle | ) | const [virtual] |
G4double G4hParametrisedLossModel::LowEnergyLimit | ( | const G4ParticleDefinition * | aParticle, | |
const G4Material * | material | |||
) | const [virtual] |
G4String G4hParametrisedLossModel::ModelName | ( | ) | const [inline] |
G4double G4hParametrisedLossModel::TheValue | ( | const G4ParticleDefinition * | aParticle, | |
const G4Material * | material, | |||
G4double | kineticEnergy | |||
) | [virtual] |
Implements G4VLowEnergyModel.
Definition at line 177 of file G4hParametrisedLossModel.cc.
References G4ParticleDefinition::GetPDGMass().
00180 { 00181 G4double scaledEnergy = kineticEnergy 00182 * proton_mass_c2/(aParticle->GetPDGMass()); 00183 00184 G4double factor = theZieglerFactor; 00185 if (scaledEnergy < lowEnergyLimit) { 00186 if (modelName != "QAO") factor *= std::sqrt(scaledEnergy/lowEnergyLimit); 00187 scaledEnergy = lowEnergyLimit; 00188 } 00189 G4double eloss = StoppingPower(material,scaledEnergy) * factor; 00190 00191 return eloss; 00192 }
G4double G4hParametrisedLossModel::TheValue | ( | const G4DynamicParticle * | particle, | |
const G4Material * | material | |||
) | [virtual] |
Implements G4VLowEnergyModel.
Definition at line 160 of file G4hParametrisedLossModel.cc.
References G4DynamicParticle::GetKineticEnergy(), and G4DynamicParticle::GetMass().
00162 { 00163 G4double scaledEnergy = (particle->GetKineticEnergy()) 00164 * proton_mass_c2/(particle->GetMass()); 00165 G4double factor = theZieglerFactor; 00166 if (scaledEnergy < lowEnergyLimit) { 00167 if (modelName != "QAO") factor *= std::sqrt(scaledEnergy/lowEnergyLimit); 00168 scaledEnergy = lowEnergyLimit; 00169 } 00170 G4double eloss = StoppingPower(material,scaledEnergy) * factor; 00171 00172 return eloss; 00173 }