Geant4
10.01.p02
|
#include <G4IonParametrisedLossModel.hh>
Protected Member Functions | |
virtual G4double | MaxSecondaryEnergy (const G4ParticleDefinition *, G4double) |
Protected Member Functions inherited from G4VEmModel | |
G4ParticleChangeForLoss * | GetParticleChangeForLoss () |
G4ParticleChangeForGamma * | GetParticleChangeForGamma () |
const G4MaterialCutsCouple * | CurrentCouple () const |
void | SetCurrentElement (const G4Element *) |
Private Types | |
typedef std::map< IonMatCouple, G4LPhysicsFreeVector * > | RangeEnergyTable |
typedef std::map< IonMatCouple, G4LPhysicsFreeVector * > | EnergyRangeTable |
Private Member Functions | |
void | UpdateDEDXCache (const G4ParticleDefinition *, const G4Material *, G4double cutEnergy) |
void | UpdateRangeCache (const G4ParticleDefinition *, const G4MaterialCutsCouple *) |
void | UpdateCache (const G4ParticleDefinition *) |
void | BuildRangeVector (const G4ParticleDefinition *, const G4MaterialCutsCouple *) |
G4IonParametrisedLossModel & | operator= (const G4IonParametrisedLossModel &right) |
G4IonParametrisedLossModel (const G4IonParametrisedLossModel &) | |
Additional Inherited Members | |
Protected Attributes inherited from G4VEmModel | |
CLHEP::HepRandomEngine * | rndmEngineMod |
G4ElementData * | fElementData |
G4VParticleChange * | pParticleChange |
G4PhysicsTable * | xSectionTable |
const std::vector< G4double > * | theDensityFactor |
const std::vector< G4int > * | theDensityIdx |
size_t | idxTable |
Static Protected Attributes inherited from G4VEmModel | |
static const G4double | inveplus = 1.0/CLHEP::eplus |
Definition at line 93 of file G4IonParametrisedLossModel.hh.
|
private |
Definition at line 273 of file G4IonParametrisedLossModel.hh.
|
private |
Definition at line 270 of file G4IonParametrisedLossModel.hh.
G4IonParametrisedLossModel::G4IonParametrisedLossModel | ( | const G4ParticleDefinition * | particle = 0 , |
const G4String & | name = "ParamICRU73" |
||
) |
Definition at line 104 of file G4IonParametrisedLossModel.cc.
References AddDEDXTable(), betheBlochModel, braggIonModel, cacheChargeSquare, cacheElecMassRatio, cacheMass, cacheParticle, corrections, dedxCacheEnergyCut, dedxCacheGenIonMassRatio, dedxCacheIter, dedxCacheMaterial, dedxCacheParticle, dedxCacheTransitionEnergy, dedxCacheTransitionFactor, G4GenericIon::Definition(), genericIon, genericIonPDGMass, G4VEmModel::HighEnergyLimit(), G4LossTableManager::Instance(), lossTableList, lowerEnergyEdgeIntegr, MeV, rangeCacheEnergyRange, rangeCacheMatCutsCouple, rangeCacheParticle, rangeCacheRangeEnergy, G4VEmModel::SetAngularDistribution(), G4VEmModel::SetHighEnergyLimit(), TeV, and upperEnergyEdgeIntegr.
|
virtual |
Definition at line 164 of file G4IonParametrisedLossModel.cc.
References E, lossTableList, and r.
|
private |
G4bool G4IonParametrisedLossModel::AddDEDXTable | ( | const G4String & | name, |
G4VIonDEDXTable * | table, | ||
G4VIonDEDXScalingAlgorithm * | algorithm = 0 |
||
) |
Definition at line 1242 of file G4IonParametrisedLossModel.cc.
References G4cerr, G4endl, G4VEmModel::GetName(), and lossTableList.
Referenced by DeactivateICRU73Scaling(), and G4IonParametrisedLossModel().
|
private |
Definition at line 1064 of file G4IonParametrisedLossModel.cc.
References ComputeDEDXPerVolume(), cutEnergies, DBL_MAX, E, G4INCL::KinematicsUtils::energy(), G4cout, G4endl, genericIonPDGMass, lowerEnergyEdgeIntegr, MeV, mm, nmbBins, nmbSubBins, r, upperEnergyEdgeIntegr, and G4VEmModel::Value().
Referenced by UpdateRangeCache().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 373 of file G4IonParametrisedLossModel.cc.
References cacheChargeSquare, cacheMass, G4INCL::KinematicsUtils::energy(), G4cout, G4endl, MaxSecondaryEnergy(), MeV, G4INCL::Math::min(), and right.
Referenced by CrossSectionPerVolume().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 457 of file G4IonParametrisedLossModel.cc.
References betheBlochModel, braggIonModel, corrections, dedxCacheGenIonMassRatio, dedxCacheIter, dedxCacheTransitionEnergy, dedxCacheTransitionFactor, DeltaRayMeanEnergyTransferRate(), factor, genericIon, genericIonPDGMass, GetChargeSquareRatio(), lossTableList, G4VEmModel::LowEnergyLimit(), and UpdateDEDXCache().
Referenced by BuildRangeVector(), CorrectionsAlongStep(), PrintDEDXTable(), and UpdateDEDXCache().
G4double G4IonParametrisedLossModel::ComputeLossForStep | ( | const G4MaterialCutsCouple * | matCutsCouple, |
const G4ParticleDefinition * | particle, | ||
G4double | kineticEnergy, | ||
G4double | stepLength | ||
) |
Definition at line 1183 of file G4IonParametrisedLossModel.cc.
References G4INCL::KinematicsUtils::energy(), G4cout, G4endl, mm, rangeCacheEnergyRange, rangeCacheRangeEnergy, UpdateRangeCache(), and G4VEmModel::Value().
Referenced by CorrectionsAlongStep().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 917 of file G4IonParametrisedLossModel.cc.
References betheBlochModel, ComputeDEDXPerVolume(), ComputeLossForStep(), corrections, corrFactor, cutEnergies, DBL_MAX, dedxCacheGenIonMassRatio, dedxCacheIter, dedxCacheTransitionEnergy, G4INCL::KinematicsUtils::energy(), energyLossLimit, G4cout, G4endl, G4VEmModel::GetModelOfFluctuations(), lossTableList, G4VEmModel::LowEnergyLimit(), MeV, right, and UpdateDEDXCache().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 438 of file G4IonParametrisedLossModel.cc.
References ComputeCrossSectionPerAtom().
void G4IonParametrisedLossModel::DeactivateICRU73Scaling | ( | ) |
Definition at line 1324 of file G4IonParametrisedLossModel.cc.
References AddDEDXTable(), and RemoveDEDXTable().
|
inline |
Referenced by ComputeDEDXPerVolume(), and UpdateDEDXCache().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 227 of file G4IonParametrisedLossModel.cc.
References corrections, and corrFactor.
Referenced by ComputeDEDXPerVolume(), and UpdateDEDXCache().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 245 of file G4IonParametrisedLossModel.cc.
References corrections.
|
virtual |
Implements G4VEmModel.
Definition at line 255 of file G4IonParametrisedLossModel.cc.
References betheBlochModel, braggIonModel, cacheChargeSquare, cacheElecMassRatio, cacheMass, cacheParticle, cutEnergies, dedxCacheEnergyCut, dedxCacheGenIonMassRatio, dedxCacheIter, dedxCacheMaterial, dedxCacheParticle, dedxCacheTransitionEnergy, dedxCacheTransitionFactor, E, G4cout, G4endl, G4VEmModel::GetName(), G4VEmModel::GetParticleChangeForLoss(), G4ProductionCutsTable::GetProductionCutsTable(), lossTableList, particleChangeLoss, r, rangeCacheEnergyRange, rangeCacheMatCutsCouple, rangeCacheParticle, rangeCacheRangeEnergy, and G4VEmModel::SetParticleChange().
|
inline |
Referenced by PrintDEDXTableHandlers(), UpdateDEDXCache(), and UpdateRangeCache().
|
protectedvirtual |
Reimplemented from G4VEmModel.
Definition at line 199 of file G4IonParametrisedLossModel.cc.
References cacheElecMassRatio, cacheMass, cacheParticle, and UpdateCache().
Referenced by ComputeCrossSectionPerAtom().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 189 of file G4IonParametrisedLossModel.cc.
|
private |
void G4IonParametrisedLossModel::PrintDEDXTable | ( | const G4ParticleDefinition * | particle, |
const G4Material * | material, | ||
G4double | lowerBoundary, | ||
G4double | upperBoundary, | ||
G4int | numBins, | ||
G4bool | logScaleEnergy | ||
) |
Definition at line 606 of file G4IonParametrisedLossModel.cc.
References cm, cm2, cm3, ComputeDEDXPerVolume(), DBL_MAX, G4INCL::KinematicsUtils::energy(), g, G4cout, G4endl, G4VEmModel::GetName(), MeV, nmbBins, and right.
Referenced by PrintDEDXTableHandlers().
void G4IonParametrisedLossModel::PrintDEDXTableHandlers | ( | const G4ParticleDefinition * | particle, |
const G4Material * | material, | ||
G4double | lowerBoundary, | ||
G4double | upperBoundary, | ||
G4int | numBins, | ||
G4bool | logScaleEnergy | ||
) |
Definition at line 670 of file G4IonParametrisedLossModel.cc.
References IsApplicable(), lossTableList, and PrintDEDXTable().
Definition at line 1285 of file G4IonParametrisedLossModel.cc.
References E, G4VEmModel::GetName(), lossTableList, r, and second.
Referenced by DeactivateICRU73Scaling().
|
virtual |
Implements G4VEmModel.
Definition at line 694 of file G4IonParametrisedLossModel.cc.
References cacheMass, G4InuclParticleNames::electron, G4Electron::Electron(), G4INCL::KinematicsUtils::energy(), G4cout, G4endl, G4UniformRand, G4VEmModel::GetAngularDistribution(), G4MaterialCutsCouple::GetMaterial(), G4DynamicParticle::GetMomentum(), G4DynamicParticle::GetMomentumDirection(), G4VEmModel::MaxSecondaryKinEnergy(), G4INCL::Math::min(), particleChangeLoss, G4VEmModel::SelectRandomAtomNumber(), G4ParticleChangeForLoss::SetProposedKineticEnergy(), and G4ParticleChangeForLoss::SetProposedMomentumDirection().
|
inline |
|
inlineprivate |
|
private |
Definition at line 829 of file G4IonParametrisedLossModel.cc.
References betheBlochModel, ComputeDEDXPerVolume(), corrections, dedxCacheEnergyCut, dedxCacheGenIonMassRatio, dedxCacheIter, dedxCacheMaterial, dedxCacheParticle, dedxCacheTransitionEnergy, dedxCacheTransitionFactor, DeltaRayMeanEnergyTransferRate(), genericIon, genericIonPDGMass, GetChargeSquareRatio(), IsApplicable(), and lossTableList.
Referenced by ComputeDEDXPerVolume(), and CorrectionsAlongStep().
|
private |
Definition at line 790 of file G4IonParametrisedLossModel.cc.
References BuildRangeVector(), E, IsApplicable(), lossTableList, r, rangeCacheEnergyRange, rangeCacheMatCutsCouple, rangeCacheParticle, and rangeCacheRangeEnergy.
Referenced by ComputeLossForStep().
|
private |
Definition at line 260 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 259 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), G4IonParametrisedLossModel(), and Initialise().
|
private |
Definition at line 340 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeCrossSectionPerAtom(), G4IonParametrisedLossModel(), and Initialise().
|
private |
Definition at line 339 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and MaxSecondaryEnergy().
|
private |
Definition at line 338 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeCrossSectionPerAtom(), G4IonParametrisedLossModel(), Initialise(), MaxSecondaryEnergy(), and SampleSecondaries().
|
private |
Definition at line 337 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and MaxSecondaryEnergy().
|
private |
Definition at line 305 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), GetChargeSquareRatio(), GetParticleCharge(), and UpdateDEDXCache().
|
private |
Definition at line 309 of file G4IonParametrisedLossModel.hh.
Referenced by CorrectionsAlongStep(), and GetChargeSquareRatio().
|
private |
Definition at line 324 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), CorrectionsAlongStep(), and Initialise().
|
private |
Definition at line 351 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 358 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 352 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 350 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 349 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 353 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 356 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), G4IonParametrisedLossModel(), Initialise(), and UpdateDEDXCache().
|
private |
Definition at line 274 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), Initialise(), RemoveDEDXTable(), UpdateRangeCache(), and ~G4IonParametrisedLossModel().
|
private |
Definition at line 315 of file G4IonParametrisedLossModel.hh.
Referenced by CorrectionsAlongStep().
|
private |
Definition at line 327 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeDEDXPerVolume(), G4IonParametrisedLossModel(), and UpdateDEDXCache().
|
private |
Definition at line 328 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), ComputeDEDXPerVolume(), G4IonParametrisedLossModel(), and UpdateDEDXCache().
|
private |
Definition at line 263 of file G4IonParametrisedLossModel.hh.
Referenced by AddDEDXTable(), ComputeDEDXPerVolume(), CorrectionsAlongStep(), G4IonParametrisedLossModel(), Initialise(), PrintDEDXTableHandlers(), RemoveDEDXTable(), UpdateDEDXCache(), UpdateRangeCache(), and ~G4IonParametrisedLossModel().
|
private |
Definition at line 281 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), and G4IonParametrisedLossModel().
|
private |
Definition at line 284 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), and PrintDEDXTable().
|
private |
Definition at line 285 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector().
|
private |
Definition at line 295 of file G4IonParametrisedLossModel.hh.
Referenced by Initialise(), and SampleSecondaries().
|
private |
Definition at line 271 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), Initialise(), RemoveDEDXTable(), UpdateRangeCache(), and ~G4IonParametrisedLossModel().
|
private |
Definition at line 345 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeLossForStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateRangeCache().
|
private |
Definition at line 344 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and UpdateRangeCache().
|
private |
Definition at line 343 of file G4IonParametrisedLossModel.hh.
Referenced by G4IonParametrisedLossModel(), Initialise(), and UpdateRangeCache().
|
private |
Definition at line 346 of file G4IonParametrisedLossModel.hh.
Referenced by ComputeLossForStep(), G4IonParametrisedLossModel(), Initialise(), and UpdateRangeCache().
|
private |
Definition at line 282 of file G4IonParametrisedLossModel.hh.
Referenced by BuildRangeVector(), and G4IonParametrisedLossModel().