67#ifndef G4IONPARAMETRISEDLOSSMODEL_HH
68#define G4IONPARAMETRISEDLOSSMODEL_HH
97 const G4String& name =
"ParamICRU73");
224 void UpdateDEDXCache(
232 void UpdateRangeCache(
237 inline void UpdateCache(
242 void BuildRangeVector(
270 typedef std::map<IonMatCouple, G4LPhysicsFreeVector*> RangeEnergyTable;
273 typedef std::map<IonMatCouple, G4LPhysicsFreeVector*> EnergyRangeTable;
352 LossTableList::iterator dedxCacheIter;
363#include "G4IonParametrisedLossModel.icc"
std::list< G4IonDEDXHandler * > LossTableList
std::pair< const G4ParticleDefinition *, const G4MaterialCutsCouple * > IonMatCouple
virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition *, G4double)
virtual G4double GetParticleCharge(const G4ParticleDefinition *, const G4Material *, G4double)
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double, G4double, G4double, G4double, G4double)
virtual ~G4IonParametrisedLossModel()
virtual G4double MinEnergyCut(const G4ParticleDefinition *, const G4MaterialCutsCouple *)
virtual G4double GetChargeSquareRatio(const G4ParticleDefinition *, const G4Material *, G4double)
LossTableList::iterator IsApplicable(const G4ParticleDefinition *, const G4Material *)
void DeactivateICRU73Scaling()
void PrintDEDXTableHandlers(const G4ParticleDefinition *, const G4Material *, G4double, G4double, G4int, G4bool)
G4double DeltaRayMeanEnergyTransferRate(const G4Material *, const G4ParticleDefinition *, G4double, G4double)
G4bool RemoveDEDXTable(const G4String &name)
G4double ComputeLossForStep(const G4MaterialCutsCouple *, const G4ParticleDefinition *, G4double, G4double)
virtual void CorrectionsAlongStep(const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double &, G4double &, G4double)
G4bool AddDEDXTable(const G4String &name, G4VIonDEDXTable *table, G4VIonDEDXScalingAlgorithm *algorithm=0)
virtual G4double ComputeDEDXPerVolume(const G4Material *, const G4ParticleDefinition *, G4double, G4double)
virtual G4double CrossSectionPerVolume(const G4Material *, const G4ParticleDefinition *, G4double, G4double, G4double)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double, G4double)
void SetEnergyLossLimit(G4double ionEnergyLossLimit)
void PrintDEDXTable(const G4ParticleDefinition *, const G4Material *, G4double, G4double, G4int, G4bool)