Geant4  10.00.p03
G4EnergyLossForExtrapolator Class Reference

#include <G4EnergyLossForExtrapolator.hh>

+ Collaboration diagram for G4EnergyLossForExtrapolator:

Public Member Functions

 G4EnergyLossForExtrapolator (G4int verb=1)
 
 ~G4EnergyLossForExtrapolator ()
 
G4double ComputeDEDX (G4double kinEnergy, const G4ParticleDefinition *)
 
G4double ComputeRange (G4double kinEnergy, const G4ParticleDefinition *)
 
G4double ComputeEnergy (G4double range, const G4ParticleDefinition *)
 
G4double EnergyAfterStep (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *)
 
G4double EnergyBeforeStep (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *)
 
G4double TrueStepLength (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *part)
 
G4double EnergyAfterStep (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName)
 
G4double EnergyBeforeStep (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName)
 
G4double AverageScatteringAngle (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *part)
 
G4double AverageScatteringAngle (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName)
 
G4double ComputeTrueStep (const G4Material *, const G4ParticleDefinition *part, G4double kinEnergy, G4double stepLength)
 
G4double EnergyDispersion (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *)
 
G4double EnergyDispersion (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName)
 
void SetVerbose (G4int val)
 
void SetMinKinEnergy (G4double)
 
void SetMaxKinEnergy (G4double)
 
void SetMaxEnergyTransfer (G4double)
 

Private Member Functions

void Initialisation ()
 
G4bool SetupKinematics (const G4ParticleDefinition *, const G4Material *, G4double kinEnergy)
 
G4PhysicsTablePrepareTable ()
 
const G4ParticleDefinitionFindParticle (const G4String &name)
 
void ComputeElectronDEDX (const G4ParticleDefinition *part, G4PhysicsTable *table)
 
void ComputeMuonDEDX (const G4ParticleDefinition *part, G4PhysicsTable *table)
 
void ComputeProtonDEDX (const G4ParticleDefinition *part, G4PhysicsTable *table)
 
void ComputeTrasportXS (const G4ParticleDefinition *part, G4PhysicsTable *table)
 
G4double ComputeValue (G4double x, const G4PhysicsTable *table)
 
G4EnergyLossForExtrapolatoroperator= (const G4EnergyLossForExtrapolator &right)
 
 G4EnergyLossForExtrapolator (const G4EnergyLossForExtrapolator &)
 

Private Attributes

const G4ParticleDefinitioncurrentParticle
 
const G4ParticleDefinitionelectron
 
const G4ParticleDefinitionpositron
 
const G4ParticleDefinitionmuonPlus
 
const G4ParticleDefinitionmuonMinus
 
const G4ParticleDefinitionproton
 
G4DataVector cuts
 
G4ProductionCutspcuts
 
std::vector< const
G4MaterialCutsCouple * > 
couples
 
G4String currentParticleName
 
G4PhysicsTablededxElectron
 
G4PhysicsTablededxPositron
 
G4PhysicsTablededxMuon
 
G4PhysicsTablededxProton
 
G4PhysicsTablerangeElectron
 
G4PhysicsTablerangePositron
 
G4PhysicsTablerangeMuon
 
G4PhysicsTablerangeProton
 
G4PhysicsTableinvRangeElectron
 
G4PhysicsTableinvRangePositron
 
G4PhysicsTableinvRangeMuon
 
G4PhysicsTableinvRangeProton
 
G4PhysicsTablemscElectron
 
const G4MaterialcurrentMaterial
 
G4int index
 
G4double electronDensity
 
G4double radLength
 
G4double mass
 
G4double charge2
 
G4double kineticEnergy
 
G4double gam
 
G4double bg2
 
G4double beta2
 
G4double tmax
 
G4double linLossLimit
 
G4double emin
 
G4double emax
 
G4double maxEnergyTransfer
 
G4int nbins
 
G4int nmat
 
G4int verbose
 
G4bool isInitialised
 

Detailed Description

Definition at line 68 of file G4EnergyLossForExtrapolator.hh.

Constructor & Destructor Documentation

G4EnergyLossForExtrapolator::~G4EnergyLossForExtrapolator ( )
G4EnergyLossForExtrapolator::G4EnergyLossForExtrapolator ( const G4EnergyLossForExtrapolator )
private

Member Function Documentation

G4double G4EnergyLossForExtrapolator::AverageScatteringAngle ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4ParticleDefinition part 
)
inline

Definition at line 250 of file G4EnergyLossForExtrapolator.hh.

References beta2, charge2, G4Log(), gam, mass, G4INCL::Math::max(), MeV, radLength, and SetupKinematics().

Referenced by AverageScatteringAngle(), and ComputeTrueStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::AverageScatteringAngle ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4String particleName 
)
inline

Definition at line 228 of file G4EnergyLossForExtrapolator.hh.

References AverageScatteringAngle(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EnergyLossForExtrapolator::ComputeDEDX ( G4double  kinEnergy,
const G4ParticleDefinition part 
)

Definition at line 360 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), dedxElectron, dedxMuon, dedxPositron, dedxProton, electron, mass, muonMinus, muonPlus, and positron.

Referenced by EnergyAfterStep(), and EnergyBeforeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::ComputeElectronDEDX ( const G4ParticleDefinition part,
G4PhysicsTable table 
)
private

Definition at line 415 of file G4EnergyLossForExtrapolator.cc.

References charge2, cm, cm2, G4VEmModel::ComputeDEDX(), couples, currentParticle, cuts, G4PhysicsVector::Energy(), g, G4cout, G4endl, G4Material::GetDensity(), G4Material::GetMaterialTable(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4eBremsstrahlungRelModel::Initialise(), G4MollerBhabhaModel::Initialise(), mass, MeV, nbins, nmat, G4PhysicsVector::PutValue(), and verbose.

Referenced by Initialisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::ComputeEnergy ( G4double  range,
const G4ParticleDefinition part 
)

Definition at line 397 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), electron, invRangeElectron, invRangeMuon, invRangePositron, invRangeProton, mass, muonMinus, muonPlus, and positron.

Referenced by EnergyAfterStep(), and EnergyBeforeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::ComputeMuonDEDX ( const G4ParticleDefinition part,
G4PhysicsTable table 
)
private

Definition at line 465 of file G4EnergyLossForExtrapolator.cc.

References charge2, cm, cm2, G4VEmModel::ComputeDEDX(), couples, currentParticle, cuts, G4PhysicsVector::Energy(), g, G4cout, G4endl, G4Material::GetDensity(), G4Material::GetMaterialTable(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGMass(), G4MuBremsstrahlungModel::Initialise(), G4BetheBlochModel::Initialise(), G4MuPairProductionModel::Initialise(), mass, MeV, nbins, nmat, G4PhysicsVector::PutValue(), and verbose.

Referenced by Initialisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::ComputeProtonDEDX ( const G4ParticleDefinition part,
G4PhysicsTable table 
)
private

Definition at line 517 of file G4EnergyLossForExtrapolator.cc.

References charge2, cm, cm2, G4VEmModel::ComputeDEDX(), couples, currentParticle, cuts, G4PhysicsVector::Energy(), g, G4cout, G4endl, G4Material::GetDensity(), G4Material::GetMaterialTable(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGMass(), G4BetheBlochModel::Initialise(), mass, MeV, nbins, nmat, G4PhysicsVector::PutValue(), and verbose.

Referenced by Initialisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::ComputeRange ( G4double  kinEnergy,
const G4ParticleDefinition part 
)

Definition at line 378 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), electron, mass, muonMinus, muonPlus, positron, rangeElectron, rangeMuon, rangePositron, and rangeProton.

Referenced by EnergyAfterStep(), EnergyBeforeStep(), and TrueStepLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::ComputeTrasportXS ( const G4ParticleDefinition part,
G4PhysicsTable table 
)
private

Definition at line 562 of file G4EnergyLossForExtrapolator.cc.

References charge2, couples, G4VEmModel::CrossSectionPerVolume(), currentParticle, cuts, G4PhysicsVector::Energy(), G4cout, G4endl, G4Material::GetMaterialTable(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGMass(), G4WentzelVIModel::Initialise(), mass, MeV, mm, nbins, nmat, G4INCL::Math::pi, G4PhysicsVector::PutValue(), G4VEmModel::SetCurrentCouple(), G4VEmModel::SetPolarAngleLimit(), and verbose.

Referenced by Initialisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::ComputeTrueStep ( const G4Material mat,
const G4ParticleDefinition part,
G4double  kinEnergy,
G4double  stepLength 
)
inline

Definition at line 268 of file G4EnergyLossForExtrapolator.hh.

References AverageScatteringAngle().

Referenced by EnergyDispersion(), and TrueStepLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::ComputeValue ( G4double  x,
const G4PhysicsTable table 
)
inlineprivate

Definition at line 296 of file G4EnergyLossForExtrapolator.hh.

References index.

Referenced by ComputeDEDX(), ComputeEnergy(), ComputeRange(), and TrueStepLength().

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyAfterStep ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4ParticleDefinition part 
)

Definition at line 124 of file G4EnergyLossForExtrapolator.cc.

References ComputeDEDX(), ComputeEnergy(), ComputeRange(), Initialisation(), isInitialised, linLossLimit, SetupKinematics(), and TrueStepLength().

Referenced by G4ErrorEnergyLoss::AlongStepDoIt(), EnergyAfterStep(), and G4ErrorEnergyLoss::GetContinuousStepLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyAfterStep ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4String particleName 
)
inline

Definition at line 206 of file G4EnergyLossForExtrapolator.hh.

References EnergyAfterStep(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyBeforeStep ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4ParticleDefinition part 
)

Definition at line 149 of file G4EnergyLossForExtrapolator.cc.

References ComputeDEDX(), ComputeEnergy(), ComputeRange(), Initialisation(), isInitialised, linLossLimit, SetupKinematics(), and TrueStepLength().

Referenced by G4ErrorEnergyLoss::AlongStepDoIt(), EnergyBeforeStep(), and G4ErrorEnergyLoss::GetContinuousStepLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyBeforeStep ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4String particleName 
)
inline

Definition at line 217 of file G4EnergyLossForExtrapolator.hh.

References EnergyBeforeStep(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyDispersion ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4ParticleDefinition part 
)
inline

Definition at line 280 of file G4EnergyLossForExtrapolator.hh.

References beta2, charge2, ComputeTrueStep(), electronDensity, SetupKinematics(), and tmax.

Referenced by EnergyDispersion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EnergyLossForExtrapolator::EnergyDispersion ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4String particleName 
)
inline

Definition at line 239 of file G4EnergyLossForExtrapolator.hh.

References EnergyDispersion(), and FindParticle().

+ Here is the call graph for this function:

const G4ParticleDefinition * G4EnergyLossForExtrapolator::FindParticle ( const G4String name)
private

Definition at line 342 of file G4EnergyLossForExtrapolator.cc.

References currentParticle, currentParticleName, G4ParticleTable::FindParticle(), G4cout, G4endl, and G4ParticleTable::GetParticleTable().

Referenced by AverageScatteringAngle(), EnergyAfterStep(), EnergyBeforeStep(), and EnergyDispersion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4EnergyLossForExtrapolator& G4EnergyLossForExtrapolator::operator= ( const G4EnergyLossForExtrapolator right)
private
G4PhysicsTable * G4EnergyLossForExtrapolator::PrepareTable ( )
private

Definition at line 326 of file G4EnergyLossForExtrapolator.cc.

References emax, emin, G4LossTableManager::Instance(), nbins, nmat, G4PhysicsTable::push_back(), and G4PhysicsVector::SetSpline().

Referenced by Initialisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::SetMaxEnergyTransfer ( G4double  val)
inline

Definition at line 328 of file G4EnergyLossForExtrapolator.hh.

References maxEnergyTransfer.

void G4EnergyLossForExtrapolator::SetMaxKinEnergy ( G4double  val)
inline

Definition at line 321 of file G4EnergyLossForExtrapolator.hh.

References emax.

void G4EnergyLossForExtrapolator::SetMinKinEnergy ( G4double  val)
inline

Definition at line 314 of file G4EnergyLossForExtrapolator.hh.

References emin.

G4bool G4EnergyLossForExtrapolator::SetupKinematics ( const G4ParticleDefinition part,
const G4Material mat,
G4double  kinEnergy 
)
private

Definition at line 198 of file G4EnergyLossForExtrapolator.cc.

References beta2, bg2, charge2, currentMaterial, currentParticle, electron, electronDensity, eplus, G4cout, G4endl, gam, G4Material::GetElectronDensity(), G4Material::GetIndex(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4Material::GetRadlen(), index, Initialisation(), isInitialised, keV, kineticEnergy, mass, maxEnergyTransfer, nmat, positron, radLength, and tmax.

Referenced by AverageScatteringAngle(), EnergyAfterStep(), EnergyBeforeStep(), EnergyDispersion(), and TrueStepLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::SetVerbose ( G4int  val)
inline

Definition at line 307 of file G4EnergyLossForExtrapolator.hh.

References verbose.

G4double G4EnergyLossForExtrapolator::TrueStepLength ( G4double  kinEnergy,
G4double  step,
const G4Material mat,
const G4ParticleDefinition part 
)

Definition at line 174 of file G4EnergyLossForExtrapolator.cc.

References ComputeRange(), ComputeTrueStep(), ComputeValue(), electron, G4Log(), Initialisation(), isInitialised, mscElectron, positron, and SetupKinematics().

Referenced by EnergyAfterStep(), EnergyBeforeStep(), and G4EnergySplitter::SplitEnergyInVolumes().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4EnergyLossForExtrapolator::beta2
private
G4double G4EnergyLossForExtrapolator::bg2
private

Definition at line 188 of file G4EnergyLossForExtrapolator.hh.

Referenced by G4EnergyLossForExtrapolator(), and SetupKinematics().

std::vector<const G4MaterialCutsCouple*> G4EnergyLossForExtrapolator::couples
private
const G4Material* G4EnergyLossForExtrapolator::currentMaterial
private
G4String G4EnergyLossForExtrapolator::currentParticleName
private

Definition at line 164 of file G4EnergyLossForExtrapolator.hh.

Referenced by FindParticle(), and Initialisation().

G4DataVector G4EnergyLossForExtrapolator::cuts
private
G4PhysicsTable* G4EnergyLossForExtrapolator::dedxElectron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::dedxMuon
private
G4PhysicsTable* G4EnergyLossForExtrapolator::dedxPositron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::dedxProton
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::electron
private
G4double G4EnergyLossForExtrapolator::electronDensity
private
G4double G4EnergyLossForExtrapolator::emax
private
G4double G4EnergyLossForExtrapolator::emin
private
G4double G4EnergyLossForExtrapolator::gam
private
G4int G4EnergyLossForExtrapolator::index
private
G4PhysicsTable* G4EnergyLossForExtrapolator::invRangeElectron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::invRangeMuon
private
G4PhysicsTable* G4EnergyLossForExtrapolator::invRangePositron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::invRangeProton
private
G4bool G4EnergyLossForExtrapolator::isInitialised
private
G4double G4EnergyLossForExtrapolator::kineticEnergy
private
G4double G4EnergyLossForExtrapolator::linLossLimit
private
G4double G4EnergyLossForExtrapolator::maxEnergyTransfer
private

Definition at line 195 of file G4EnergyLossForExtrapolator.hh.

Referenced by SetMaxEnergyTransfer(), and SetupKinematics().

G4PhysicsTable* G4EnergyLossForExtrapolator::mscElectron
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::muonMinus
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::muonPlus
private
G4int G4EnergyLossForExtrapolator::nbins
private
G4ProductionCuts* G4EnergyLossForExtrapolator::pcuts
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::positron
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::proton
private

Definition at line 157 of file G4EnergyLossForExtrapolator.hh.

Referenced by G4EnergyLossForExtrapolator(), and Initialisation().

G4double G4EnergyLossForExtrapolator::radLength
private
G4PhysicsTable* G4EnergyLossForExtrapolator::rangeElectron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::rangeMuon
private
G4PhysicsTable* G4EnergyLossForExtrapolator::rangePositron
private
G4PhysicsTable* G4EnergyLossForExtrapolator::rangeProton
private
G4double G4EnergyLossForExtrapolator::tmax
private
G4int G4EnergyLossForExtrapolator::verbose
private

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