Geant4  10.01
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 ()
 
void BuildTables ()
 
G4bool SetupKinematics (const G4ParticleDefinition *, const G4Material *, G4double kinEnergy)
 
const G4ParticleDefinitionFindParticle (const G4String &name)
 
G4double ComputeValue (G4double x, const G4PhysicsTable *table, size_t idx)
 
const G4PhysicsTableGetPhysicsTable (ExtTableType type) const
 
G4EnergyLossForExtrapolatoroperator= (const G4EnergyLossForExtrapolator &right)
 
 G4EnergyLossForExtrapolator (const G4EnergyLossForExtrapolator &)
 

Private Attributes

const G4ParticleDefinitioncurrentParticle
 
const G4ParticleDefinitionelectron
 
const G4ParticleDefinitionpositron
 
const G4ParticleDefinitionmuonPlus
 
const G4ParticleDefinitionmuonMinus
 
const G4ParticleDefinitionproton
 
G4String currentParticleName
 
size_t idxDedxElectron
 
size_t idxDedxPositron
 
size_t idxDedxMuon
 
size_t idxDedxProton
 
size_t idxRangeElectron
 
size_t idxRangePositron
 
size_t idxRangeMuon
 
size_t idxRangeProton
 
size_t idxInvRangeElectron
 
size_t idxInvRangePositron
 
size_t idxInvRangeMuon
 
size_t idxInvRangeProton
 
size_t idxMscElectron
 
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
 

Static Private Attributes

static G4TablesForExtrapolatortables = 0
 

Detailed Description

Definition at line 67 of file G4EnergyLossForExtrapolator.hh.

Constructor & Destructor Documentation

G4EnergyLossForExtrapolator::~G4EnergyLossForExtrapolator ( )

Definition at line 346 of file G4EnergyLossForExtrapolator.cc.

References tables.

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 248 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 227 of file G4EnergyLossForExtrapolator.hh.

References AverageScatteringAngle(), and FindParticle().

+ Here is the call graph for this function:

void G4EnergyLossForExtrapolator::BuildTables ( )
private

Definition at line 330 of file G4EnergyLossForExtrapolator.cc.

References emax, emin, G4cout, G4endl, nbins, nmat, tables, and verbose.

Referenced by Initialisation().

+ Here is the caller graph for this function:

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

Definition at line 240 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), electron, fDedxElectron, fDedxMuon, fDedxPositron, fDedxProton, GetPhysicsTable(), idxDedxElectron, idxDedxMuon, idxDedxPositron, idxDedxProton, 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:

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

Definition at line 282 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), electron, fInvRangeElectron, fInvRangeMuon, fInvRangePositron, fInvRangeProton, GetPhysicsTable(), idxInvRangeElectron, idxInvRangeMuon, idxInvRangePositron, idxInvRangeProton, 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:

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

Definition at line 260 of file G4EnergyLossForExtrapolator.cc.

References charge2, ComputeValue(), electron, fRangeElectron, fRangeMuon, fRangePositron, fRangeProton, GetPhysicsTable(), idxRangeElectron, idxRangeMuon, idxRangePositron, idxRangeProton, mass, muonMinus, muonPlus, and positron.

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

+ 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 267 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,
size_t  idx 
)
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 95 of file G4EnergyLossForExtrapolator.cc.

References ComputeDEDX(), ComputeEnergy(), ComputeRange(), Initialisation(), linLossLimit, nmat, 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 205 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 120 of file G4EnergyLossForExtrapolator.cc.

References ComputeDEDX(), ComputeEnergy(), ComputeRange(), Initialisation(), linLossLimit, nmat, 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 216 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 279 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 238 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 221 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:

const G4PhysicsTable * G4EnergyLossForExtrapolator::GetPhysicsTable ( ExtTableType  type) const
inlineprivate

Definition at line 197 of file G4EnergyLossForExtrapolator.hh.

References G4TablesForExtrapolator::GetPhysicsTable(), and tables.

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

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EnergyLossForExtrapolator::Initialisation ( )
private

Definition at line 305 of file G4EnergyLossForExtrapolator.cc.

References BuildTables(), currentMaterial, currentParticle, currentParticleName, G4Electron::Electron(), electron, G4cout, G4endl, G4Material::GetNumberOfMaterials(), kineticEnergy, G4MuonMinus::MuonMinus(), muonMinus, G4MuonPlus::MuonPlus(), muonPlus, nmat, G4Positron::Positron(), positron, G4Proton::Proton(), proton, and verbose.

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

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4EnergyLossForExtrapolator& G4EnergyLossForExtrapolator::operator= ( const G4EnergyLossForExtrapolator right)
private
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 173 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(), 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 146 of file G4EnergyLossForExtrapolator.cc.

References ComputeRange(), ComputeTrueStep(), ComputeValue(), electron, fMscElectron, G4Log(), GetPhysicsTable(), idxMscElectron, Initialisation(), nmat, 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 180 of file G4EnergyLossForExtrapolator.hh.

Referenced by G4EnergyLossForExtrapolator(), and SetupKinematics().

const G4Material* G4EnergyLossForExtrapolator::currentMaterial
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::currentParticle
private
G4String G4EnergyLossForExtrapolator::currentParticleName
private

Definition at line 155 of file G4EnergyLossForExtrapolator.hh.

Referenced by FindParticle(), and Initialisation().

const G4ParticleDefinition* G4EnergyLossForExtrapolator::electron
private
G4double G4EnergyLossForExtrapolator::electronDensity
private
G4double G4EnergyLossForExtrapolator::emax
private
G4double G4EnergyLossForExtrapolator::emin
private
G4double G4EnergyLossForExtrapolator::gam
private
size_t G4EnergyLossForExtrapolator::idxDedxElectron
private

Definition at line 157 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeDEDX(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxDedxMuon
private

Definition at line 159 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeDEDX(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxDedxPositron
private

Definition at line 158 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeDEDX(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxDedxProton
private

Definition at line 160 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeDEDX(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxInvRangeElectron
private

Definition at line 165 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeEnergy(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxInvRangeMuon
private

Definition at line 167 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeEnergy(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxInvRangePositron
private

Definition at line 166 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeEnergy(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxInvRangeProton
private

Definition at line 168 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeEnergy(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxMscElectron
private

Definition at line 169 of file G4EnergyLossForExtrapolator.hh.

Referenced by G4EnergyLossForExtrapolator(), and TrueStepLength().

size_t G4EnergyLossForExtrapolator::idxRangeElectron
private

Definition at line 161 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeRange(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxRangeMuon
private

Definition at line 163 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeRange(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxRangePositron
private

Definition at line 162 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeRange(), and G4EnergyLossForExtrapolator().

size_t G4EnergyLossForExtrapolator::idxRangeProton
private

Definition at line 164 of file G4EnergyLossForExtrapolator.hh.

Referenced by ComputeRange(), and G4EnergyLossForExtrapolator().

G4int G4EnergyLossForExtrapolator::index
private
G4double G4EnergyLossForExtrapolator::kineticEnergy
private
G4double G4EnergyLossForExtrapolator::linLossLimit
private
G4double G4EnergyLossForExtrapolator::mass
private
G4double G4EnergyLossForExtrapolator::maxEnergyTransfer
private

Definition at line 187 of file G4EnergyLossForExtrapolator.hh.

Referenced by SetMaxEnergyTransfer(), and SetupKinematics().

const G4ParticleDefinition* G4EnergyLossForExtrapolator::muonMinus
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::muonPlus
private
G4int G4EnergyLossForExtrapolator::nbins
private

Definition at line 189 of file G4EnergyLossForExtrapolator.hh.

Referenced by BuildTables(), and G4EnergyLossForExtrapolator().

const G4ParticleDefinition* G4EnergyLossForExtrapolator::positron
private
const G4ParticleDefinition* G4EnergyLossForExtrapolator::proton
private

Definition at line 153 of file G4EnergyLossForExtrapolator.hh.

Referenced by G4EnergyLossForExtrapolator(), and Initialisation().

G4double G4EnergyLossForExtrapolator::radLength
private
G4TablesForExtrapolator * G4EnergyLossForExtrapolator::tables = 0
staticprivate
G4double G4EnergyLossForExtrapolator::tmax
private
G4int G4EnergyLossForExtrapolator::verbose
private

Definition at line 191 of file G4EnergyLossForExtrapolator.hh.

Referenced by BuildTables(), Initialisation(), and SetVerbose().


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