Geant4  10.01.p03
G4EmCalculator Class Reference

#include <G4EmCalculator.hh>

+ Inheritance diagram for G4EmCalculator:
+ Collaboration diagram for G4EmCalculator:

Public Member Functions

 G4EmCalculator ()
 
 ~G4EmCalculator ()
 
G4double GetDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
 
G4double GetDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetRangeFromRestricteDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
 
G4double GetRangeFromRestricteDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetCSDARange (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
 
G4double GetCSDARange (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetRange (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
 
G4double GetRange (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetKinEnergy (G4double range, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
 
G4double GetKinEnergy (G4double range, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetCrossSectionPerVolume (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, const G4Region *r=0)
 
G4double GetCrossSectionPerVolume (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, const G4String &s="world")
 
G4double GetShellIonisationCrossSectionPerAtom (const G4String &part, G4int Z, G4AtomicShellEnumerator shell, G4double kinEnergy)
 
G4double GetMeanFreePath (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, const G4Region *r=0)
 
G4double GetMeanFreePath (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, const G4String &s="world")
 
void PrintDEDXTable (const G4ParticleDefinition *)
 
void PrintRangeTable (const G4ParticleDefinition *)
 
void PrintInverseRangeTable (const G4ParticleDefinition *)
 
G4double ComputeDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=DBL_MAX)
 
G4double ComputeDEDX (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeElectronicDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *mat, G4double cut=DBL_MAX)
 
G4double ComputeElectronicDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeNuclearDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *)
 
G4double ComputeNuclearDEDX (G4double kinEnergy, const G4String &part, const G4String &mat)
 
G4double ComputeTotalDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, G4double cut=DBL_MAX)
 
G4double ComputeTotalDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeCrossSectionPerVolume (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=0.0)
 
G4double ComputeCrossSectionPerVolume (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, G4double cut=0.0)
 
G4double ComputeCrossSectionPerAtom (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, G4double Z, G4double A, G4double cut=0.0)
 
G4double ComputeCrossSectionPerAtom (G4double kinEnergy, const G4String &part, const G4String &processName, const G4Element *, G4double cut=0.0)
 
G4double ComputeGammaAttenuationLength (G4double kinEnergy, const G4Material *)
 
G4double ComputeShellIonisationCrossSectionPerAtom (const G4String &part, G4int Z, G4AtomicShellEnumerator shell, G4double kinEnergy, const G4Material *mat=0)
 
G4double ComputeMeanFreePath (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=0.0)
 
G4double ComputeMeanFreePath (G4double kinEnergy, const G4String &, const G4String &, const G4String &processName, G4double cut=0.0)
 
G4double ComputeEnergyCutFromRangeCut (G4double range, const G4ParticleDefinition *, const G4Material *)
 
G4double ComputeEnergyCutFromRangeCut (G4double range, const G4String &, const G4String &)
 
const G4ParticleDefinitionFindParticle (const G4String &)
 
const G4ParticleDefinitionFindIon (G4int Z, G4int A)
 
const G4MaterialFindMaterial (const G4String &)
 
const G4RegionFindRegion (const G4String &)
 
const G4MaterialCutsCoupleFindCouple (const G4Material *, const G4Region *r=0)
 
G4VProcessFindProcess (const G4ParticleDefinition *part, const G4String &processName)
 
void SetVerbose (G4int val)
 

Private Member Functions

G4bool UpdateParticle (const G4ParticleDefinition *, G4double kinEnergy)
 
G4bool UpdateCouple (const G4Material *, G4double cut)
 
void FindLambdaTable (const G4ParticleDefinition *, const G4String &processName, G4double kinEnergy)
 
G4bool FindEmModel (const G4ParticleDefinition *, const G4String &processName, G4double kinEnergy)
 
G4VEnergyLossProcessFindEnergyLossProcess (const G4ParticleDefinition *)
 
G4VEnergyLossProcessFindEnLossProcess (const G4ParticleDefinition *, const G4String &processName)
 
G4VEmProcessFindDiscreteProcess (const G4ParticleDefinition *, const G4String &processName)
 
G4VMultipleScatteringFindMscProcess (const G4ParticleDefinition *, const G4String &processName)
 
G4bool ActiveForParticle (const G4ParticleDefinition *part, G4VProcess *proc)
 
G4EmCalculatoroperator= (const G4EmCalculator &right)
 
 G4EmCalculator (const G4EmCalculator &)
 

Private Attributes

std::vector< const G4Material * > localMaterials
 
std::vector< const
G4MaterialCutsCouple * > 
localCouples
 
G4LossTableManagermanager
 
G4IonTableionTable
 
G4EmCorrectionscorr
 
G4DataVector localCuts
 
G4int nLocalMaterials
 
G4int verbose
 
G4int currentCoupleIndex
 
const G4MaterialCutsCouplecurrentCouple
 
const G4MaterialcurrentMaterial
 
const G4ParticleDefinitioncurrentParticle
 
const G4ParticleDefinitionlambdaParticle
 
const G4ParticleDefinitionbaseParticle
 
const G4PhysicsTablecurrentLambda
 
G4VEmModelcurrentModel
 
G4VEmModelloweModel
 
G4VEnergyLossProcesscurrentProcess
 
const G4ParticleDefinitiontheGenericIon
 
G4ionEffectiveChargeionEffCharge
 
G4DynamicParticle dynParticle
 
G4String currentName
 
G4String lambdaName
 
G4double currentCut
 
G4double chargeSquare
 
G4double massRatio
 
G4double mass
 
G4bool isIon
 
G4bool isApplicable
 
G4String currentParticleName
 
G4String currentMaterialName
 
G4String currentProcessName
 

Detailed Description

Definition at line 80 of file G4EmCalculator.hh.

Constructor & Destructor Documentation

G4EmCalculator::~G4EmCalculator ( )

Definition at line 122 of file G4EmCalculator.cc.

References ionEffCharge, localCouples, and nLocalMaterials.

G4EmCalculator::G4EmCalculator ( const G4EmCalculator )
private

Member Function Documentation

G4bool G4EmCalculator::ActiveForParticle ( const G4ParticleDefinition part,
G4VProcess proc 
)
private

Definition at line 1282 of file G4EmCalculator.cc.

References G4ProcessManager::GetProcessActivation(), G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), n, and G4ProcessVector::size().

Referenced by ComputeElectronicDEDX(), FindDiscreteProcess(), FindEnLossProcess(), and FindMscProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeCrossSectionPerAtom ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
G4double  Z,
G4double  A,
G4double  cut = 0.0 
)

Definition at line 705 of file G4EmCalculator.cc.

References barn, baseParticle, chargeSquare, G4VEmModel::ComputeCrossSectionPerAtom(), currentModel, FindEmModel(), g, G4cout, G4endl, G4lrint(), G4ParticleDefinition::GetParticleName(), G4VEmModel::InitialiseForElement(), massRatio, MeV, mole, UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), and ComputeCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeCrossSectionPerAtom ( G4double  kinEnergy,
const G4String part,
const G4String processName,
const G4Element elm,
G4double  cut = 0.0 
)

Definition at line 739 of file G4EmCalculator.cc.

References ComputeCrossSectionPerAtom(), FindParticle(), G4Element::GetN(), and G4Element::GetZ().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeCrossSectionPerVolume ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
const G4Material mat,
G4double  cut = 0.0 
)

Definition at line 656 of file G4EmCalculator.cc.

References baseParticle, chargeSquare, cm, G4VEmModel::CrossSectionPerVolume(), currentMaterial, currentMaterialName, currentModel, FindEmModel(), G4cout, G4endl, G4Material::GetName(), G4ParticleDefinition::GetParticleName(), keV, massRatio, MeV, UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), ComputeCrossSectionPerVolume(), ComputeGammaAttenuationLength(), ComputeMeanFreePath(), and GetCrossSectionPerVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeCrossSectionPerVolume ( G4double  kinEnergy,
const G4String part,
const G4String proc,
const G4String mat,
G4double  cut = 0.0 
)

Definition at line 691 of file G4EmCalculator.cc.

References ComputeCrossSectionPerVolume(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeDEDX ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
const G4Material mat,
G4double  cut = DBL_MAX 
)

Definition at line 448 of file G4EmCalculator.cc.

References baseParticle, chargeSquare, cm2, G4VEmModel::ComputeDEDXPerVolume(), G4VEmModel::CorrectionsAlongStep(), currentMaterial, currentMaterialName, currentModel, dynParticle, FindCouple(), FindEmModel(), G4cout, G4endl, G4VEmModel::GetChargeSquareRatio(), G4Material::GetDensity(), G4Material::GetName(), G4VEmModel::GetName(), G4ParticleDefinition::GetParticleName(), gram, isIon, loweModel, G4VEmModel::LowEnergyLimit(), massRatio, MeV, mm, G4DynamicParticle::SetKineticEnergy(), UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), ComputeDEDX(), ComputeElectronicDEDX(), and RunAction::CriticalEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeDEDX ( G4double  kinEnergy,
const G4String part,
const G4String proc,
const G4String mat,
G4double  cut = DBL_MAX 
)

Definition at line 615 of file G4EmCalculator.cc.

References ComputeDEDX(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeElectronicDEDX ( G4double  kinEnergy,
const G4ParticleDefinition part,
const G4Material mat,
G4double  cut = DBL_MAX 
)

Definition at line 551 of file G4EmCalculator.cc.

References ActiveForParticle(), ComputeDEDX(), currentMaterial, currentMaterialName, G4LossTableManager::GetEnergyLossProcessVector(), G4Material::GetName(), G4LossTableManager::Instance(), n, and UpdateParticle().

Referenced by ComputeElectronicDEDX(), and ComputeTotalDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeElectronicDEDX ( G4double  kinEnergy,
const G4String part,
const G4String mat,
G4double  cut = DBL_MAX 
)

Definition at line 585 of file G4EmCalculator.cc.

References ComputeElectronicDEDX(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeEnergyCutFromRangeCut ( G4double  range,
const G4ParticleDefinition part,
const G4Material mat 
)

Definition at line 820 of file G4EmCalculator.cc.

References G4ProductionCutsTable::GetProductionCutsTable().

Referenced by ComputeEnergyCutFromRangeCut().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeEnergyCutFromRangeCut ( G4double  range,
const G4String particle,
const G4String material 
)

Definition at line 831 of file G4EmCalculator.cc.

References ComputeEnergyCutFromRangeCut(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeGammaAttenuationLength ( G4double  kinEnergy,
const G4Material mat 
)

Definition at line 753 of file G4EmCalculator.cc.

References ComputeCrossSectionPerVolume(), and G4Gamma::Gamma().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeMeanFreePath ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
const G4Material mat,
G4double  cut = 0.0 
)

Definition at line 787 of file G4EmCalculator.cc.

References ComputeCrossSectionPerVolume(), DBL_MAX, G4cout, G4endl, G4Material::GetName(), G4ParticleDefinition::GetParticleName(), MeV, mm, and verbose.

Referenced by ComputeMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeMeanFreePath ( G4double  kinEnergy,
const G4String particle,
const G4String processName,
const G4String processName,
G4double  cut = 0.0 
)

Definition at line 808 of file G4EmCalculator.cc.

References ComputeMeanFreePath(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeNuclearDEDX ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4Material mat 
)

Definition at line 627 of file G4EmCalculator.cc.

References cm2, corr, G4cout, G4endl, G4Material::GetDensity(), G4ParticleDefinition::GetParticleName(), gram, MeV, mm, G4EmCorrections::NuclearDEDX(), and verbose.

Referenced by ComputeNuclearDEDX(), and ComputeTotalDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeNuclearDEDX ( G4double  kinEnergy,
const G4String part,
const G4String mat 
)

Definition at line 646 of file G4EmCalculator.cc.

References ComputeNuclearDEDX(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeShellIonisationCrossSectionPerAtom ( const G4String part,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinEnergy,
const G4Material mat = 0 
)

Definition at line 768 of file G4EmCalculator.cc.

References G4LossTableManager::AtomDeexcitation(), G4VAtomDeexcitation::ComputeShellIonisationCrossSectionPerAtom(), FindParticle(), and manager.

+ Here is the call graph for this function:

G4double G4EmCalculator::ComputeTotalDEDX ( G4double  kinEnergy,
const G4ParticleDefinition part,
const G4Material mat,
G4double  cut = DBL_MAX 
)

Definition at line 593 of file G4EmCalculator.cc.

References ComputeElectronicDEDX(), ComputeNuclearDEDX(), mass, and MeV.

Referenced by ComputeTotalDEDX(), RunAction::GetEnergyFromCSDARange(), HadrontherapyInteractionParameters::GetStopping(), IORTInteractionParameters::GetStopping(), HadrontherapyInteractionParameters::GetStoppingTable(), and IORTInteractionParameters::GetStoppingTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::ComputeTotalDEDX ( G4double  kinEnergy,
const G4String part,
const G4String mat,
G4double  cut = DBL_MAX 
)

Definition at line 605 of file G4EmCalculator.cc.

References ComputeTotalDEDX(), FindMaterial(), and FindParticle().

+ Here is the call graph for this function:

const G4MaterialCutsCouple * G4EmCalculator::FindCouple ( const G4Material material,
const G4Region r = 0 
)

Definition at line 958 of file G4EmCalculator.cc.

References currentMaterial, currentMaterialName, FatalException, G4Exception(), G4RegionStore::GetInstance(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4Region::GetName(), G4Material::GetName(), G4Region::GetProductionCuts(), and G4ProductionCutsTable::GetProductionCutsTable().

Referenced by ComputeDEDX(), export_G4EmCalculator(), GetCrossSectionPerVolume(), GetCSDARange(), GetDEDX(), GetKinEnergy(), GetRange(), and GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEmProcess * G4EmCalculator::FindDiscreteProcess ( const G4ParticleDefinition part,
const G4String processName 
)
private

Definition at line 1220 of file G4EmCalculator.cc.

References ActiveForParticle(), G4LossTableManager::GetEmProcessVector(), G4LossTableManager::Instance(), and n.

Referenced by FindEmModel(), and FindLambdaTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4EmCalculator::FindEmModel ( const G4ParticleDefinition p,
const G4String processName,
G4double  kinEnergy 
)
private

Definition at line 1090 of file G4EmCalculator.cc.

References currentMaterial, currentModel, currentName, eV, FindDiscreteProcess(), FindEnLossProcess(), FindMscProcess(), G4cout, G4endl, G4VEmModel::GetName(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetParticleType(), G4VProcess::GetProcessName(), G4VEmModel::InitialiseForMaterial(), isApplicable, isIon, loweModel, G4VEmModel::LowEnergyLimit(), massRatio, MeV, G4VMultipleScattering::SelectModel(), G4VEmProcess::SelectModelForMaterial(), G4VEnergyLossProcess::SelectModelForMaterial(), theGenericIon, and verbose.

Referenced by ComputeCrossSectionPerAtom(), ComputeCrossSectionPerVolume(), ComputeDEDX(), and GetDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEnergyLossProcess * G4EmCalculator::FindEnergyLossProcess ( const G4ParticleDefinition p)
private

Definition at line 1176 of file G4EmCalculator.cc.

References currentParticleName, G4LossTableManager::GetEnergyLossProcess(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetParticleType(), G4LossTableManager::Instance(), and theGenericIon.

Referenced by PrintDEDXTable(), PrintInverseRangeTable(), PrintRangeTable(), and UpdateParticle().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEnergyLossProcess * G4EmCalculator::FindEnLossProcess ( const G4ParticleDefinition part,
const G4String processName 
)
private

Definition at line 1198 of file G4EmCalculator.cc.

References ActiveForParticle(), G4LossTableManager::GetEnergyLossProcessVector(), G4LossTableManager::Instance(), and n.

Referenced by FindEmModel(), and FindLambdaTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4ParticleDefinition * G4EmCalculator::FindIon ( G4int  Z,
G4int  A 
)

Definition at line 922 of file G4EmCalculator.cc.

References G4IonTable::GetIon(), and ionTable.

+ Here is the call graph for this function:

void G4EmCalculator::FindLambdaTable ( const G4ParticleDefinition p,
const G4String processName,
G4double  kinEnergy 
)
private

Definition at line 1024 of file G4EmCalculator.cc.

References currentLambda, currentModel, currentName, FindDiscreteProcess(), FindEnLossProcess(), FindMscProcess(), G4cout, G4endl, isApplicable, isIon, lambdaName, lambdaParticle, G4VEmProcess::LambdaTable(), G4VEnergyLossProcess::LambdaTable(), loweModel, G4VMultipleScattering::SelectModel(), theGenericIon, and verbose.

Referenced by GetCrossSectionPerVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4Material * G4EmCalculator::FindMaterial ( const G4String name)

Definition at line 930 of file G4EmCalculator.cc.

References currentMaterial, currentMaterialName, G4cout, G4endl, G4Material::GetMaterial(), and name.

Referenced by ComputeCrossSectionPerVolume(), ComputeDEDX(), ComputeElectronicDEDX(), ComputeEnergyCutFromRangeCut(), ComputeMeanFreePath(), ComputeNuclearDEDX(), ComputeTotalDEDX(), export_G4EmCalculator(), GetCrossSectionPerVolume(), GetCSDARange(), GetDEDX(), GetKinEnergy(), GetMeanFreePath(), GetRange(), and GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VMultipleScattering * G4EmCalculator::FindMscProcess ( const G4ParticleDefinition part,
const G4String processName 
)
private

Definition at line 1242 of file G4EmCalculator.cc.

References ActiveForParticle(), G4LossTableManager::GetMultipleScatteringVector(), G4LossTableManager::Instance(), and n.

Referenced by FindEmModel(), and FindLambdaTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4ParticleDefinition * G4EmCalculator::FindParticle ( const G4String name)
G4VProcess * G4EmCalculator::FindProcess ( const G4ParticleDefinition part,
const G4String processName 
)

Definition at line 1263 of file G4EmCalculator.cc.

References G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), and G4ProcessVector::size().

+ Here is the call graph for this function:

const G4Region * G4EmCalculator::FindRegion ( const G4String reg)

Definition at line 945 of file G4EmCalculator.cc.

References G4RegionStore::GetInstance(), and G4RegionStore::GetRegion().

Referenced by export_G4EmCalculator(), GetCrossSectionPerVolume(), GetCSDARange(), GetDEDX(), GetKinEnergy(), GetMeanFreePath(), GetRange(), and GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetCrossSectionPerVolume ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 321 of file G4EmCalculator.cc.

References chargeSquare, cm, ComputeCrossSectionPerVolume(), currentLambda, FindCouple(), FindLambdaTable(), G4cout, G4endl, G4MaterialCutsCouple::GetIndex(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), massRatio, MeV, UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), GetCrossSectionPerVolume(), and GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetCrossSectionPerVolume ( G4double  kinEnergy,
const G4String part,
const G4String proc,
const G4String mat,
const G4String s = "world" 
)

Definition at line 358 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetCrossSectionPerVolume().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetCSDARange ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 204 of file G4EmCalculator.cc.

References FindCouple(), G4cout, G4endl, G4Exception(), G4LossTableManager::GetCSDARange(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4LossTableManager::Instance(), JustWarning, manager, MeV, mm, UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), GetCSDARange(), and RunAction::GetEnergyFromCSDARange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetCSDARange ( G4double  kinEnergy,
const G4String part,
const G4String mat,
const G4String s = "world" 
)

Definition at line 268 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetCSDARange().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetDEDX ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 132 of file G4EmCalculator.cc.

References cm2, G4VEmModel::CorrectionsAlongStep(), currentModel, currentProcessName, dynParticle, FindCouple(), FindEmModel(), G4cout, G4endl, G4VEmModel::GetChargeSquareRatio(), G4LossTableManager::GetDEDX(), G4Material::GetDensity(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), gram, isIon, manager, MeV, mm, G4DynamicParticle::SetKineticEnergy(), UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), GetDEDX(), RunAction::GetEnergyFromRestrictedRange(), and G4EnergySplitter::SplitEnergyInVolumes().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetDEDX ( G4double  kinEnergy,
const G4String part,
const G4String mat,
const G4String s = "world" 
)

Definition at line 173 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetDEDX().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetKinEnergy ( G4double  range,
const G4ParticleDefinition p,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 290 of file G4EmCalculator.cc.

References FindCouple(), G4cout, G4endl, G4LossTableManager::GetEnergy(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), GeV, manager, MeV, mm, UpdateParticle(), and verbose.

Referenced by GetKinEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetKinEnergy ( G4double  range,
const G4String part,
const G4String mat,
const G4String s = "world" 
)

Definition at line 312 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetKinEnergy().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetMeanFreePath ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4String processName,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 387 of file G4EmCalculator.cc.

References DBL_MAX, G4cout, G4endl, GetCrossSectionPerVolume(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), MeV, mm, and verbose.

Referenced by RunAction::BeginOfRunAction(), and GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetMeanFreePath ( G4double  kinEnergy,
const G4String part,
const G4String proc,
const G4String mat,
const G4String s = "world" 
)

Definition at line 408 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetMeanFreePath().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetRange ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 235 of file G4EmCalculator.cc.

References FindCouple(), G4cout, G4endl, G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4LossTableManager::GetRange(), manager, MeV, mm, UpdateParticle(), and verbose.

Referenced by GetRange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetRange ( G4double  kinEnergy,
const G4String part,
const G4String mat,
const G4String s = "world" 
)

Definition at line 279 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetRange().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetRangeFromRestricteDEDX ( G4double  kinEnergy,
const G4ParticleDefinition p,
const G4Material mat,
const G4Region r = 0 
)

Definition at line 182 of file G4EmCalculator.cc.

References FindCouple(), G4cout, G4endl, G4Material::GetName(), G4ParticleDefinition::GetParticleName(), G4LossTableManager::GetRangeFromRestricteDEDX(), manager, MeV, mm, UpdateParticle(), and verbose.

Referenced by RunAction::BeginOfRunAction(), RunAction::GetEnergyFromRestrictedRange(), and GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4EmCalculator::GetRangeFromRestricteDEDX ( G4double  kinEnergy,
const G4String part,
const G4String mat,
const G4String s = "world" 
)

Definition at line 257 of file G4EmCalculator.cc.

References FindMaterial(), FindParticle(), FindRegion(), and GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

G4double G4EmCalculator::GetShellIonisationCrossSectionPerAtom ( const G4String part,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinEnergy 
)

Definition at line 370 of file G4EmCalculator.cc.

References G4LossTableManager::AtomDeexcitation(), FindParticle(), G4VAtomDeexcitation::GetShellIonisationCrossSectionPerAtom(), and manager.

+ Here is the call graph for this function:

G4EmCalculator& G4EmCalculator::operator= ( const G4EmCalculator right)
private
void G4EmCalculator::PrintDEDXTable ( const G4ParticleDefinition p)

Definition at line 420 of file G4EmCalculator.cc.

References G4VEnergyLossProcess::DEDXTable(), FindEnergyLossProcess(), G4cout, G4endl, and G4ParticleDefinition::GetParticleName().

Referenced by export_G4EmCalculator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EmCalculator::PrintInverseRangeTable ( const G4ParticleDefinition p)

Definition at line 438 of file G4EmCalculator.cc.

References FindEnergyLossProcess(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), and G4VEnergyLossProcess::InverseRangeTable().

Referenced by export_G4EmCalculator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EmCalculator::PrintRangeTable ( const G4ParticleDefinition p)

Definition at line 429 of file G4EmCalculator.cc.

References FindEnergyLossProcess(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), and G4VEnergyLossProcess::RangeTableForLoss().

Referenced by export_G4EmCalculator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4EmCalculator::SetVerbose ( G4int  val)

Definition at line 1300 of file G4EmCalculator.cc.

References verbose.

Referenced by export_G4EmCalculator().

+ Here is the caller graph for this function:

G4bool G4EmCalculator::UpdateCouple ( const G4Material material,
G4double  cut 
)
private

Definition at line 998 of file G4EmCalculator.cc.

References currentCouple, currentCoupleIndex, currentCut, currentMaterial, currentMaterialName, G4MaterialCutsCouple::GetIndex(), G4Material::GetName(), localCouples, localCuts, localMaterials, and nLocalMaterials.

+ Here is the call graph for this function:

Member Data Documentation

const G4ParticleDefinition* G4EmCalculator::baseParticle
private
G4EmCorrections* G4EmCalculator::corr
private

Definition at line 286 of file G4EmCalculator.hh.

Referenced by ComputeNuclearDEDX(), G4EmCalculator(), and UpdateParticle().

const G4MaterialCutsCouple* G4EmCalculator::currentCouple
private

Definition at line 294 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), and UpdateCouple().

G4int G4EmCalculator::currentCoupleIndex
private

Definition at line 293 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), and UpdateCouple().

G4double G4EmCalculator::currentCut
private

Definition at line 310 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), and UpdateCouple().

const G4PhysicsTable* G4EmCalculator::currentLambda
private

Definition at line 299 of file G4EmCalculator.hh.

Referenced by FindLambdaTable(), G4EmCalculator(), and GetCrossSectionPerVolume().

G4String G4EmCalculator::currentMaterialName
private
G4String G4EmCalculator::currentName
private

Definition at line 308 of file G4EmCalculator.hh.

Referenced by FindEmModel(), FindLambdaTable(), and G4EmCalculator().

const G4ParticleDefinition* G4EmCalculator::currentParticle
private

Definition at line 296 of file G4EmCalculator.hh.

Referenced by FindParticle(), G4EmCalculator(), and UpdateParticle().

G4String G4EmCalculator::currentParticleName
private
G4VEnergyLossProcess* G4EmCalculator::currentProcess
private

Definition at line 302 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), and UpdateParticle().

G4String G4EmCalculator::currentProcessName
private

Definition at line 319 of file G4EmCalculator.hh.

Referenced by GetDEDX(), and UpdateParticle().

G4DynamicParticle G4EmCalculator::dynParticle
private

Definition at line 306 of file G4EmCalculator.hh.

Referenced by ComputeDEDX(), GetDEDX(), and UpdateParticle().

G4ionEffectiveCharge* G4EmCalculator::ionEffCharge
private

Definition at line 305 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), and ~G4EmCalculator().

G4IonTable* G4EmCalculator::ionTable
private

Definition at line 285 of file G4EmCalculator.hh.

Referenced by FindIon(), and G4EmCalculator().

G4bool G4EmCalculator::isApplicable
private

Definition at line 315 of file G4EmCalculator.hh.

Referenced by FindEmModel(), FindLambdaTable(), and G4EmCalculator().

G4bool G4EmCalculator::isIon
private
G4String G4EmCalculator::lambdaName
private

Definition at line 309 of file G4EmCalculator.hh.

Referenced by FindLambdaTable(), and G4EmCalculator().

const G4ParticleDefinition* G4EmCalculator::lambdaParticle
private

Definition at line 297 of file G4EmCalculator.hh.

Referenced by FindLambdaTable(), and G4EmCalculator().

std::vector<const G4MaterialCutsCouple*> G4EmCalculator::localCouples
private

Definition at line 282 of file G4EmCalculator.hh.

Referenced by UpdateCouple(), and ~G4EmCalculator().

G4DataVector G4EmCalculator::localCuts
private

Definition at line 287 of file G4EmCalculator.hh.

Referenced by UpdateCouple().

std::vector<const G4Material*> G4EmCalculator::localMaterials
private

Definition at line 281 of file G4EmCalculator.hh.

Referenced by UpdateCouple().

G4VEmModel* G4EmCalculator::loweModel
private

Definition at line 301 of file G4EmCalculator.hh.

Referenced by ComputeDEDX(), FindEmModel(), FindLambdaTable(), and G4EmCalculator().

G4double G4EmCalculator::mass
private

Definition at line 313 of file G4EmCalculator.hh.

Referenced by ComputeTotalDEDX(), G4EmCalculator(), and UpdateParticle().

G4int G4EmCalculator::nLocalMaterials
private

Definition at line 288 of file G4EmCalculator.hh.

Referenced by G4EmCalculator(), UpdateCouple(), and ~G4EmCalculator().

const G4ParticleDefinition* G4EmCalculator::theGenericIon
private

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