Geant4  10.01.p03
G4VEnergyLossProcess Class Referenceabstract

#include <G4VEnergyLossProcess.hh>

+ Inheritance diagram for G4VEnergyLossProcess:
+ Collaboration diagram for G4VEnergyLossProcess:

Public Member Functions

 G4VEnergyLossProcess (const G4String &name="EnergyLoss", G4ProcessType type=fElectromagnetic)
 
virtual ~G4VEnergyLossProcess ()
 
virtual G4bool IsApplicable (const G4ParticleDefinition &p)=0
 
virtual void PrintInfo ()=0
 
void PreparePhysicsTable (const G4ParticleDefinition &)
 
void BuildPhysicsTable (const G4ParticleDefinition &)
 
G4PhysicsTableBuildDEDXTable (G4EmTableType tType=fRestricted)
 
G4PhysicsTableBuildLambdaTable (G4EmTableType tType=fRestricted)
 
void PrintInfoDefinition (const G4ParticleDefinition &part)
 
void StartTracking (G4Track *)
 
G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety, G4GPILSelection *selection)
 
G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
G4VParticleChangeAlongStepDoIt (const G4Track &, const G4Step &)
 
G4double SampleSubCutSecondaries (std::vector< G4Track * > &, const G4Step &, G4VEmModel *model, G4int matIdx)
 
G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &)
 
G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &directory, G4bool ascii=false)
 
G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &directory, G4bool ascii)
 
G4double GetDEDXDispersion (const G4MaterialCutsCouple *couple, const G4DynamicParticle *dp, G4double length)
 
G4double CrossSectionPerVolume (G4double kineticEnergy, const G4MaterialCutsCouple *couple)
 
G4double MeanFreePath (const G4Track &track)
 
G4double ContinuousStepLimit (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety)
 
G4VEmModelSelectModelForMaterial (G4double kinEnergy, size_t &idx) const
 
void AddEmModel (G4int, G4VEmModel *, G4VEmFluctuationModel *fluc=0, const G4Region *region=0)
 
void UpdateEmModel (const G4String &, G4double, G4double)
 
void SetEmModel (G4VEmModel *, G4int index=1)
 
G4VEmModelEmModel (G4int index=1) const
 
G4VEmModelGetModelByIndex (G4int idx=0, G4bool ver=false) const
 
G4int NumberOfModels () const
 
void SetFluctModel (G4VEmFluctuationModel *)
 
G4VEmFluctuationModelFluctModel ()
 
void SetBaseParticle (const G4ParticleDefinition *p)
 
const G4ParticleDefinitionParticle () const
 
const G4ParticleDefinitionBaseParticle () const
 
const G4ParticleDefinitionSecondaryParticle () const
 
void ActivateSubCutoff (G4bool val, const G4Region *region=0)
 
void SetCrossSectionBiasingFactor (G4double f, G4bool flag=true)
 
void ActivateForcedInteraction (G4double length=0.0, const G4String &region="", G4bool flag=true)
 
void ActivateSecondaryBiasing (const G4String &region, G4double factor, G4double energyLimit)
 
void AddCollaborativeProcess (G4VEnergyLossProcess *)
 
void SetLossFluctuations (G4bool val)
 
void SetIntegral (G4bool val)
 
G4bool IsIntegral () const
 
void SetIonisation (G4bool val)
 
G4bool IsIonisationProcess () const
 
void SetLinearLossLimit (G4double val)
 
void SetStepFunction (G4double v1, G4double v2)
 
void SetLowestEnergyLimit (G4double)
 
G4int NumberOfSubCutoffRegions () const
 
void SetDEDXTable (G4PhysicsTable *p, G4EmTableType tType)
 
void SetCSDARangeTable (G4PhysicsTable *pRange)
 
void SetRangeTableForLoss (G4PhysicsTable *p)
 
void SetSecondaryRangeTable (G4PhysicsTable *p)
 
void SetInverseRangeTable (G4PhysicsTable *p)
 
void SetLambdaTable (G4PhysicsTable *p)
 
void SetSubLambdaTable (G4PhysicsTable *p)
 
void SetDEDXBinning (G4int nbins)
 
void SetMinKinEnergy (G4double e)
 
G4double MinKinEnergy () const
 
void SetMaxKinEnergy (G4double e)
 
G4double MaxKinEnergy () const
 
G4double CrossSectionBiasingFactor () const
 
G4double GetDEDX (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4double GetDEDXForSubsec (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4double GetRange (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4double GetCSDARange (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4double GetRangeForLoss (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4double GetKineticEnergy (G4double &range, const G4MaterialCutsCouple *)
 
G4double GetLambda (G4double &kineticEnergy, const G4MaterialCutsCouple *)
 
G4bool TablesAreBuilt () const
 
G4PhysicsTableDEDXTable () const
 
G4PhysicsTableDEDXTableForSubsec () const
 
G4PhysicsTableDEDXunRestrictedTable () const
 
G4PhysicsTableIonisationTable () const
 
G4PhysicsTableIonisationTableForSubsec () const
 
G4PhysicsTableCSDARangeTable () const
 
G4PhysicsTableSecondaryRangeTable () const
 
G4PhysicsTableRangeTableForLoss () const
 
G4PhysicsTableInverseRangeTable () const
 
G4PhysicsTableLambdaTable () const
 
G4PhysicsTableSubLambdaTable () const
 
const G4ElementGetCurrentElement () const
 
void SetDynamicMassCharge (G4double massratio, G4double charge2ratio)
 
- Public Member Functions inherited from G4VContinuousDiscreteProcess
 G4VContinuousDiscreteProcess (const G4String &, G4ProcessType aType=fNotDefined)
 
 G4VContinuousDiscreteProcess (G4VContinuousDiscreteProcess &)
 
virtual ~G4VContinuousDiscreteProcess ()
 
virtual G4double AtRestGetPhysicalInteractionLength (const G4Track &, G4ForceCondition *)
 
virtual G4VParticleChangeAtRestDoIt (const G4Track &, const G4Step &)
 
- Public Member Functions inherited from G4VProcess
 G4VProcess (const G4String &aName="NoName", G4ProcessType aType=fNotDefined)
 
 G4VProcess (const G4VProcess &right)
 
virtual ~G4VProcess ()
 
G4int operator== (const G4VProcess &right) const
 
G4int operator!= (const G4VProcess &right) const
 
G4double GetCurrentInteractionLength () const
 
void SetPILfactor (G4double value)
 
G4double GetPILfactor () const
 
G4double AlongStepGPIL (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
 
G4double AtRestGPIL (const G4Track &track, G4ForceCondition *condition)
 
G4double PostStepGPIL (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
const G4StringGetPhysicsTableFileName (const G4ParticleDefinition *, const G4String &directory, const G4String &tableName, G4bool ascii=false)
 
const G4StringGetProcessName () const
 
G4ProcessType GetProcessType () const
 
void SetProcessType (G4ProcessType)
 
G4int GetProcessSubType () const
 
void SetProcessSubType (G4int)
 
virtual void EndTracking ()
 
virtual void SetProcessManager (const G4ProcessManager *)
 
virtual const G4ProcessManagerGetProcessManager ()
 
virtual void ResetNumberOfInteractionLengthLeft ()
 
G4double GetNumberOfInteractionLengthLeft () const
 
G4double GetTotalNumberOfInteractionLengthTraversed () const
 
G4bool isAtRestDoItIsEnabled () const
 
G4bool isAlongStepDoItIsEnabled () const
 
G4bool isPostStepDoItIsEnabled () const
 
virtual void DumpInfo () const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
virtual void SetMasterProcess (G4VProcess *masterP)
 
const G4VProcessGetMasterProcess () const
 
virtual void BuildWorkerPhysicsTable (const G4ParticleDefinition &part)
 
virtual void PrepareWorkerPhysicsTable (const G4ParticleDefinition &)
 

Protected Member Functions

virtual void InitialiseEnergyLossProcess (const G4ParticleDefinition *, const G4ParticleDefinition *)=0
 
virtual G4double MinPrimaryEnergy (const G4ParticleDefinition *, const G4Material *, G4double cut)
 
G4double GetMeanFreePath (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
G4double GetContinuousStepLimit (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety)
 
G4PhysicsVectorLambdaPhysicsVector (const G4MaterialCutsCouple *, G4double cut)
 
size_t CurrentMaterialCutsCoupleIndex () const
 
void SelectModel (G4double kinEnergy)
 
void SetParticle (const G4ParticleDefinition *p)
 
void SetSecondaryParticle (const G4ParticleDefinition *p)
 
- Protected Member Functions inherited from G4VContinuousDiscreteProcess
void SetGPILSelection (G4GPILSelection selection)
 
G4GPILSelection GetGPILSelection () const
 
- Protected Member Functions inherited from G4VProcess
void SubtractNumberOfInteractionLengthLeft (G4double previousStepSize)
 
void ClearNumberOfInteractionLengthLeft ()
 

Protected Attributes

G4ParticleChangeForLoss fParticleChange
 
- Protected Attributes inherited from G4VProcess
const G4ProcessManageraProcessManager
 
G4VParticleChangepParticleChange
 
G4ParticleChange aParticleChange
 
G4double theNumberOfInteractionLengthLeft
 
G4double currentInteractionLength
 
G4double theInitialNumberOfInteractionLength
 
G4String theProcessName
 
G4String thePhysicsTableFileName
 
G4ProcessType theProcessType
 
G4int theProcessSubType
 
G4double thePILfactor
 
G4bool enableAtRestDoIt
 
G4bool enableAlongStepDoIt
 
G4bool enablePostStepDoIt
 
G4int verboseLevel
 

Private Member Functions

void Clean ()
 
G4bool StoreTable (const G4ParticleDefinition *p, G4PhysicsTable *, G4bool ascii, const G4String &directory, const G4String &tname)
 
G4bool RetrieveTable (const G4ParticleDefinition *p, G4PhysicsTable *, G4bool ascii, const G4String &directory, const G4String &tname, G4bool mandatory)
 
void FillSecondariesAlongStep (G4double &eloss, G4double &weight)
 
void PrintWarning (G4String, G4double val)
 
void DefineMaterial (const G4MaterialCutsCouple *couple)
 
G4double GetDEDXForScaledEnergy (G4double scaledKinEnergy)
 
G4double GetSubDEDXForScaledEnergy (G4double scaledKinEnergy)
 
G4double GetIonisationForScaledEnergy (G4double scaledKinEnergy)
 
G4double GetSubIonisationForScaledEnergy (G4double scaledKinEnergy)
 
G4double GetScaledRangeForScaledEnergy (G4double scaledKinEnergy)
 
G4double GetLimitScaledRangeForScaledEnergy (G4double scaledKinEnergy)
 
G4double ScaledKinEnergyForLoss (G4double range)
 
G4double GetLambdaForScaledEnergy (G4double scaledKinEnergy)
 
void ComputeLambdaForScaledEnergy (G4double scaledKinEnergy)
 
 G4VEnergyLossProcess (G4VEnergyLossProcess &)
 
G4VEnergyLossProcessoperator= (const G4VEnergyLossProcess &right)
 

Private Attributes

G4LossTableManagerlManager
 
G4EmModelManagermodelManager
 
G4EmBiasingManagerbiasManager
 
G4SafetyHelpersafetyHelper
 
G4EmParameterstheParameters
 
const G4ParticleDefinitionsecondaryParticle
 
const G4ParticleDefinitiontheElectron
 
const G4ParticleDefinitionthePositron
 
const G4ParticleDefinitiontheGamma
 
const G4ParticleDefinitiontheGenericIon
 
std::vector< G4VEmModel * > emModels
 
G4VEmFluctuationModelfluctModel
 
G4VAtomDeexcitationatomDeexcitation
 
G4VSubCutProducersubcutProducer
 
std::vector< const G4Region * > scoffRegions
 
G4int nSCoffRegions
 
G4boolidxSCoffRegions
 
std::vector
< G4VEnergyLossProcess * > 
scProcesses
 
G4int nProcesses
 
G4PhysicsTabletheDEDXTable
 
G4PhysicsTabletheDEDXSubTable
 
G4PhysicsTabletheDEDXunRestrictedTable
 
G4PhysicsTabletheIonisationTable
 
G4PhysicsTabletheIonisationSubTable
 
G4PhysicsTabletheRangeTableForLoss
 
G4PhysicsTabletheCSDARangeTable
 
G4PhysicsTabletheSecondaryRangeTable
 
G4PhysicsTabletheInverseRangeTable
 
G4PhysicsTabletheLambdaTable
 
G4PhysicsTabletheSubLambdaTable
 
size_t idxDEDX
 
size_t idxDEDXSub
 
size_t idxDEDXunRestricted
 
size_t idxIonisation
 
size_t idxIonisationSub
 
size_t idxRange
 
size_t idxCSDA
 
size_t idxSecRange
 
size_t idxInverseRange
 
size_t idxLambda
 
size_t idxSubLambda
 
std::vector< G4doubletheDEDXAtMaxEnergy
 
std::vector< G4doubletheRangeAtMaxEnergy
 
std::vector< G4doubletheEnergyOfCrossSectionMax
 
std::vector< G4doubletheCrossSectionMax
 
const std::vector< G4double > * theDensityFactor
 
const std::vector< G4int > * theDensityIdx
 
const G4DataVectortheCuts
 
const G4DataVectortheSubCuts
 
const G4ParticleDefinitionbaseParticle
 
G4int nBins
 
G4int nBinsCSDA
 
G4double lowestKinEnergy
 
G4double minKinEnergy
 
G4double maxKinEnergy
 
G4double maxKinEnergyCSDA
 
G4double linLossLimit
 
G4double dRoverRange
 
G4double finalRange
 
G4double lambdaFactor
 
G4double biasFactor
 
G4bool lossFluctuationFlag
 
G4bool rndmStepFlag
 
G4bool tablesAreBuilt
 
G4bool integral
 
G4bool isIon
 
G4bool isIonisation
 
G4bool useSubCutoff
 
G4bool useDeexcitation
 
G4bool biasFlag
 
G4bool weightFlag
 
G4bool isMaster
 
G4bool actLinLossLimit
 
G4bool actLossFluc
 
G4bool actBinning
 
G4bool actMinKinEnergy
 
G4bool actMaxKinEnergy
 
std::vector< G4DynamicParticle * > secParticles
 
std::vector< G4Track * > scTracks
 
const G4ParticleDefinitionparticle
 
G4VEmModelcurrentModel
 
const G4MaterialcurrentMaterial
 
const G4MaterialCutsCouplecurrentCouple
 
size_t currentCoupleIndex
 
size_t basedCoupleIndex
 
size_t lastIdx
 
G4int nWarnings
 
G4double massRatio
 
G4double fFactor
 
G4double reduceFactor
 
G4double chargeSqRatio
 
G4double preStepLambda
 
G4double fRange
 
G4double computedRange
 
G4double preStepKinEnergy
 
G4double preStepScaledEnergy
 
G4double preStepRangeEnergy
 
G4double mfpKinEnergy
 
G4GPILSelection aGPILSelection
 
G4int secID
 
G4int subsecID
 
G4int biasID
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VProcess
static const G4StringGetProcessTypeName (G4ProcessType)
 

Detailed Description

Definition at line 124 of file G4VEnergyLossProcess.hh.

Constructor & Destructor Documentation

G4VEnergyLossProcess::G4VEnergyLossProcess ( const G4String name = "EnergyLoss",
G4ProcessType  type = fElectromagnetic 
)

Definition at line 166 of file G4VEnergyLossProcess.cc.

References actBinning, actLinLossLimit, actLossFluc, actMaxKinEnergy, actMinKinEnergy, aGPILSelection, atomDeexcitation, basedCoupleIndex, biasFactor, biasFlag, biasID, biasManager, CandidateForSelection, chargeSqRatio, computedRange, currentCoupleIndex, currentMaterial, currentModel, DBL_MAX, G4Electron::Electron(), eV, fFactor, fluctModel, fParticleChange, fRange, G4Gamma::Gamma(), G4TransportationManager::GetSafetyHelper(), G4TransportationManager::GetTransportationManager(), GeV, idxCSDA, idxDEDX, idxDEDXSub, idxDEDXunRestricted, idxInverseRange, idxIonisation, idxIonisationSub, idxLambda, idxRange, idxSecRange, idxSubLambda, G4EmParameters::Instance(), G4LossTableManager::Instance(), isMaster, keV, lambdaFactor, lastIdx, linLossLimit, lManager, lowestKinEnergy, massRatio, maxKinEnergy, maxKinEnergyCSDA, minKinEnergy, mm, modelManager, nBins, nBinsCSDA, G4Positron::Positron(), G4VProcess::pParticleChange, preStepKinEnergy, preStepLambda, preStepRangeEnergy, preStepScaledEnergy, reduceFactor, G4LossTableManager::Register(), safetyHelper, scTracks, secID, secParticles, G4VParticleChange::SetSecondaryWeightByProcess(), SetStepFunction(), G4VProcess::SetVerboseLevel(), subcutProducer, subsecID, TeV, theCuts, theElectron, theGamma, theGenericIon, theParameters, thePositron, theSubCuts, and weightFlag.

+ Here is the call graph for this function:

G4VEnergyLossProcess::~G4VEnergyLossProcess ( )
virtual
G4VEnergyLossProcess::G4VEnergyLossProcess ( G4VEnergyLossProcess )
private

Member Function Documentation

void G4VEnergyLossProcess::ActivateForcedInteraction ( G4double  length = 0.0,
const G4String region = "",
G4bool  flag = true 
)

Definition at line 2281 of file G4VEnergyLossProcess.cc.

References G4EmBiasingManager::ActivateForcedInteraction(), biasManager, G4cout, G4endl, G4VProcess::GetProcessName(), mm, G4VProcess::verboseLevel, and weightFlag.

Referenced by G4EmProcessOptions::ActivateForcedInteraction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::ActivateSecondaryBiasing ( const G4String region,
G4double  factor,
G4double  energyLimit 
)

Definition at line 2301 of file G4VEnergyLossProcess.cc.

References G4EmBiasingManager::ActivateSecondaryBiasing(), biasManager, G4Electron::Electron(), G4cout, G4endl, G4VProcess::GetProcessName(), MeV, secondaryParticle, and G4VProcess::verboseLevel.

Referenced by G4EmProcessOptions::ActivateSecondaryBiasing().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::ActivateSubCutoff ( G4bool  val,
const G4Region region = 0 
)

Definition at line 1042 of file G4VEnergyLossProcess.cc.

References G4RegionStore::GetInstance(), G4RegionStore::GetRegion(), nSCoffRegions, reg, and scoffRegions.

Referenced by G4LossTableManager::Register().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::AddCollaborativeProcess ( G4VEnergyLossProcess p)

Definition at line 2029 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4VProcess::GetProcessName(), nProcesses, scProcesses, and G4VProcess::verboseLevel.

Referenced by G4LossTableManager::BuildTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::AddEmModel ( G4int  order,
G4VEmModel p,
G4VEmFluctuationModel fluc = 0,
const G4Region region = 0 
)

Definition at line 393 of file G4VEnergyLossProcess.cc.

References G4EmModelManager::AddEmModel(), modelManager, G4VProcess::pParticleChange, and G4VEmModel::SetParticleChange().

Referenced by Em10PhysicsList::ConstructEM(), G4EmLowEPPhysics::ConstructProcess(), G4EmLivermorePolarizedPhysics::ConstructProcess(), ExExChPhysListEmStandardSS::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), PhysListEmStandardSS::ConstructProcess(), PhysListEmLivermore::ConstructProcess(), PhysListEmPenelope::ConstructProcess(), G4ePolarizedBremsstrahlung::InitialiseEnergyLossProcess(), G4hPairProduction::InitialiseEnergyLossProcess(), G4alphaIonisation::InitialiseEnergyLossProcess(), G4hBremsstrahlung::InitialiseEnergyLossProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), G4ePolarizedIonisation::InitialiseEnergyLossProcess(), G4MuPairProduction::InitialiseEnergyLossProcess(), G4eIonisation::InitialiseEnergyLossProcess(), G4eBremsstrahlung::InitialiseEnergyLossProcess(), G4ionIonisation::InitialiseEnergyLossProcess(), G4MuBremsstrahlung::InitialiseEnergyLossProcess(), G4MuIonisation::InitialiseEnergyLossProcess(), G4hIonisation::InitialiseEnergyLossProcess(), G4EmConfigurator::PrepareModels(), and G4EmConfigurator::SetModelForRegion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VParticleChange * G4VEnergyLossProcess::AlongStepDoIt ( const G4Track track,
const G4Step step 
)
virtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1240 of file G4VEnergyLossProcess.cc.

References G4VAtomDeexcitation::AlongStepDeexcitation(), atomDeexcitation, biasFactor, G4SafetyHelper::ComputeSafety(), G4VEmModel::CorrectionsAlongStep(), currentCouple, currentCoupleIndex, currentMaterial, currentModel, fGeomBoundary, FillSecondariesAlongStep(), fParticleChange, fRange, GetDEDXForScaledEnergy(), G4Track::GetDynamicParticle(), G4VEmModel::GetModelOfFluctuations(), G4VParticleChange::GetParentWeight(), G4VEmModel::GetParticleCharge(), G4Track::GetParticleDefinition(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4ProductionCuts::GetProductionCut(), G4MaterialCutsCouple::GetProductionCuts(), G4StepPoint::GetSafety(), G4Step::GetStepLength(), G4StepPoint::GetStepStatus(), GetSubDEDXForScaledEnergy(), idxSCoffRegions, G4ParticleChangeForLoss::InitializeForAlongStep(), G4VEmModel::IsActive(), isIon, isIonisation, linLossLimit, lossFluctuationFlag, lowestKinEnergy, massRatio, G4INCL::Math::max(), G4VEmModel::MaxSecondaryKinEnergy(), G4INCL::Math::min(), preStepKinEnergy, preStepScaledEnergy, G4VParticleChange::ProposeLocalEnergyDeposit(), G4VParticleChange::ProposeWeight(), reduceFactor, safetyHelper, G4VEmFluctuationModel::SampleFluctuations(), G4VSubCutProducer::SampleSecondaries(), SampleSubCutSecondaries(), ScaledKinEnergyForLoss(), scTracks, G4ParticleChangeForLoss::SetProposedCharge(), G4ParticleChangeForLoss::SetProposedKineticEnergy(), subcutProducer, useDeexcitation, useSubCutoff, and weightFlag.

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::AlongStepGetPhysicalInteractionLength ( const G4Track ,
G4double  previousStepSize,
G4double  currentMinimumStep,
G4double currentSafety,
G4GPILSelection selection 
)
virtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1107 of file G4VEnergyLossProcess.cc.

References aGPILSelection, currentCouple, currentModel, DBL_MAX, dRoverRange, finalRange, fRange, G4ProductionCuts::GetProductionCut(), G4MaterialCutsCouple::GetProductionCuts(), GetScaledRangeForScaledEnergy(), G4VEmModel::IsActive(), isIonisation, G4INCL::Math::min(), preStepScaledEnergy, reduceFactor, and rndmStepFlag.

Referenced by ContinuousStepLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4ParticleDefinition * G4VEnergyLossProcess::BaseParticle ( ) const
inline

Definition at line 928 of file G4VEnergyLossProcess.hh.

References baseParticle.

Referenced by G4LossTableManager::BuildPhysicsTable(), G4LossTableManager::LocalPhysicsTables(), G4LossTableManager::RegisterExtraParticle(), and G4EmCalculator::UpdateParticle().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::BuildPhysicsTable ( const G4ParticleDefinition part)
virtual

Reimplemented from G4VProcess.

Definition at line 684 of file G4VEnergyLossProcess.cc.

References G4LossTableManager::AtomDeexcitation(), atomDeexcitation, baseParticle, G4LossTableManager::BuildPhysicsTable(), CSDARangeTable(), DEDXTable(), DEDXTableForSubsec(), DEDXunRestrictedTable(), fIsIonisation, fIsSubIonisation, fParticleChange, fRestricted, fSubRestricted, fTotal, G4cout, G4endl, G4LossTableBuilder::GetCoupleIndexes(), G4LossTableBuilder::GetDensityFactors(), G4VProcess::GetMasterProcess(), GetModelByIndex(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4LossTableManager::GetTableBuilder(), G4LossTableBuilder::InitialiseBaseMaterials(), G4SafetyHelper::InitialiseHelper(), G4VEmModel::InitialiseLocal(), InverseRangeTable(), IonisationTable(), IonisationTableForSubsec(), isIon, isIonisation, IsIonisationProcess(), isMaster, G4VAtomDeexcitation::IsPIXEActive(), LambdaTable(), lManager, G4LossTableManager::LocalPhysicsTables(), lowestKinEnergy, modelManager, nSCoffRegions, G4EmModelManager::NumberOfModels(), particle, PrintInfoDefinition(), RangeTableForLoss(), safetyHelper, SecondaryRangeTable(), SetCSDARangeTable(), SetDEDXTable(), SetInverseRangeTable(), SetLambdaTable(), G4ParticleChangeForLoss::SetLowEnergyLimit(), SetRangeTableForLoss(), SetSecondaryRangeTable(), SetSubLambdaTable(), G4LossTableManager::SubCutProducer(), subcutProducer, SubLambdaTable(), tablesAreBuilt, theDensityFactor, theDensityIdx, useDeexcitation, and G4VProcess::verboseLevel.

Referenced by G4ePolarizedIonisation::BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::Clean ( )
private

Definition at line 362 of file G4VEnergyLossProcess.cc.

References idxCSDA, idxDEDX, idxDEDXSub, idxDEDXunRestricted, idxInverseRange, idxIonisation, idxIonisationSub, idxLambda, idxRange, idxSCoffRegions, idxSecRange, idxSubLambda, nProcesses, scProcesses, and tablesAreBuilt.

Referenced by PreparePhysicsTable(), and ~G4VEnergyLossProcess().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::ComputeLambdaForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 861 of file G4VEnergyLossProcess.hh.

References currentCoupleIndex, e1, fFactor, GetLambdaForScaledEnergy(), lambdaFactor, mfpKinEnergy, preStepLambda, theCrossSectionMax, and theEnergyOfCrossSectionMax.

Referenced by PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::ContinuousStepLimit ( const G4Track track,
G4double  previousStepSize,
G4double  currentMinimumStep,
G4double currentSafety 
)

Definition at line 1986 of file G4VEnergyLossProcess.cc.

References AlongStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::CrossSectionBiasingFactor ( ) const
inline

Definition at line 992 of file G4VEnergyLossProcess.hh.

References biasFactor.

G4double G4VEnergyLossProcess::CrossSectionPerVolume ( G4double  kineticEnergy,
const G4MaterialCutsCouple couple 
)

Definition at line 1954 of file G4VEnergyLossProcess.cc.

References biasFactor, G4VEmModel::CrossSectionPerVolume(), currentCoupleIndex, currentMaterial, currentModel, DefineMaterial(), GetLambdaForScaledEnergy(), massRatio, particle, SelectModel(), theCuts, and theLambdaTable.

+ Here is the call graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::CSDARangeTable ( ) const
inline

Definition at line 1041 of file G4VEnergyLossProcess.hh.

References theCSDARangeTable.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

size_t G4VEnergyLossProcess::CurrentMaterialCutsCoupleIndex ( ) const
inlineprotected

Definition at line 613 of file G4VEnergyLossProcess.hh.

References currentCoupleIndex.

Referenced by G4ePolarizedIonisation::GetMeanFreePath(), and G4ePolarizedIonisation::PostStepGetPhysicalInteractionLength().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::DEDXTable ( ) const
inline

Definition at line 1006 of file G4VEnergyLossProcess.hh.

References theDEDXTable.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), G4LossTableManager::LocalPhysicsTables(), and G4EmCalculator::PrintDEDXTable().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::DEDXTableForSubsec ( ) const
inline

Definition at line 1013 of file G4VEnergyLossProcess.hh.

References theDEDXSubTable.

Referenced by BuildPhysicsTable(), and G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::DEDXunRestrictedTable ( ) const
inline

Definition at line 1020 of file G4VEnergyLossProcess.hh.

References theDEDXunRestrictedTable.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::DefineMaterial ( const G4MaterialCutsCouple couple)
inlineprivate

Definition at line 637 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, biasFactor, chargeSqRatio, currentCouple, currentCoupleIndex, currentMaterial, DBL_MAX, fFactor, G4MaterialCutsCouple::GetIndex(), G4MaterialCutsCouple::GetMaterial(), idxLambda, idxSubLambda, massRatio, mfpKinEnergy, and reduceFactor.

Referenced by CrossSectionPerVolume(), GetCSDARange(), GetDEDX(), GetDEDXDispersion(), GetDEDXForSubsec(), GetKineticEnergy(), GetLambda(), GetRange(), GetRangeForLoss(), MeanFreePath(), and PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::FillSecondariesAlongStep ( G4double eloss,
G4double weight 
)
private

Definition at line 1501 of file G4VEnergyLossProcess.cc.

References G4VParticleChange::AddSecondary(), G4EmBiasingManager::ApplySecondaryBiasing(), biasID, biasManager, currentCoupleIndex, fParticleChange, n, G4VProcess::pParticleChange, scTracks, G4EmBiasingManager::SecondaryBiasingRegion(), G4Track::SetCreatorModelIndex(), G4VParticleChange::SetNumberOfSecondaries(), and G4Track::SetWeight().

Referenced by AlongStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEmFluctuationModel * G4VEnergyLossProcess::FluctModel ( )
inline

Definition at line 891 of file G4VEnergyLossProcess.hh.

References fluctModel.

Referenced by G4alphaIonisation::InitialiseEnergyLossProcess(), G4ePolarizedIonisation::InitialiseEnergyLossProcess(), G4eIonisation::InitialiseEnergyLossProcess(), G4ionIonisation::InitialiseEnergyLossProcess(), G4MuIonisation::InitialiseEnergyLossProcess(), and G4hIonisation::InitialiseEnergyLossProcess().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetContinuousStepLimit ( const G4Track track,
G4double  previousStepSize,
G4double  currentMinimumStep,
G4double currentSafety 
)
protectedvirtual

Implements G4VContinuousDiscreteProcess.

Definition at line 2008 of file G4VEnergyLossProcess.cc.

References DBL_MAX.

G4double G4VEnergyLossProcess::GetCSDARange ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 809 of file G4VEnergyLossProcess.hh.

References DBL_MAX, DefineMaterial(), GetLimitScaledRangeForScaledEnergy(), massRatio, reduceFactor, and theCSDARangeTable.

Referenced by G4LossTableManager::GetCSDARange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4Element * G4VEnergyLossProcess::GetCurrentElement ( ) const

Definition at line 2254 of file G4VEnergyLossProcess.cc.

References currentModel, and G4VEmModel::GetCurrentElement().

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::GetDEDX ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 772 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), GetDEDXForScaledEnergy(), and massRatio.

Referenced by G4ContinuousGainOfEnergy::AlongStepDoIt(), G4VMscModel::GetDEDX(), and G4LossTableManager::GetDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetDEDXDispersion ( const G4MaterialCutsCouple couple,
const G4DynamicParticle dp,
G4double  length 
)

Definition at line 1936 of file G4VEnergyLossProcess.cc.

References currentCoupleIndex, currentMaterial, currentModel, DefineMaterial(), G4VEmFluctuationModel::Dispersion(), G4DynamicParticle::GetKineticEnergy(), G4VEmModel::GetModelOfFluctuations(), massRatio, G4VEmModel::MaxSecondaryKinEnergy(), G4INCL::Math::min(), SelectModel(), and theCuts.

Referenced by G4LossTableManager::GetDEDXDispersion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetDEDXForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 664 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxDEDX, and minKinEnergy.

Referenced by AlongStepDoIt(), and GetDEDX().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetDEDXForSubsec ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 782 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), GetSubDEDXForScaledEnergy(), and massRatio.

Referenced by G4LossTableManager::GetSubDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetIonisationForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 688 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxIonisation, and minKinEnergy.

G4double G4VEnergyLossProcess::GetKineticEnergy ( G4double range,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 838 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), massRatio, reduceFactor, and ScaledKinEnergyForLoss().

Referenced by G4ContinuousGainOfEnergy::AlongStepDoIt(), G4VMscModel::GetEnergy(), and G4LossTableManager::GetEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetLambda ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 848 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), GetLambdaForScaledEnergy(), massRatio, and theLambdaTable.

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::GetLambdaForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 764 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, and idxLambda.

Referenced by ComputeLambdaForScaledEnergy(), CrossSectionPerVolume(), GetLambda(), MeanFreePath(), PostStepDoIt(), and PostStepGetPhysicalInteractionLength().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetLimitScaledRangeForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 731 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, idxCSDA, maxKinEnergyCSDA, minKinEnergy, theDEDXAtMaxEnergy, and theRangeAtMaxEnergy.

Referenced by GetCSDARange(), and GetRange().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetMeanFreePath ( const G4Track track,
G4double  previousStepSize,
G4ForceCondition condition 
)
protectedvirtual

Implements G4VContinuousDiscreteProcess.

Definition at line 1996 of file G4VEnergyLossProcess.cc.

References MeanFreePath(), and NotForced.

Referenced by G4ePolarizedIonisation::GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEmModel * G4VEnergyLossProcess::GetModelByIndex ( G4int  idx = 0,
G4bool  ver = false 
) const

Definition at line 429 of file G4VEnergyLossProcess.cc.

References G4EmModelManager::GetModel(), and modelManager.

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetRange ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 792 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), fRange, GetLimitScaledRangeForScaledEnergy(), GetScaledRangeForScaledEnergy(), massRatio, reduceFactor, theCSDARangeTable, and theRangeTableForLoss.

Referenced by G4ContinuousGainOfEnergy::AlongStepDoIt(), G4ContinuousGainOfEnergy::GetContinuousStepLimit(), and G4LossTableManager::GetRange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetRangeForLoss ( G4double kineticEnergy,
const G4MaterialCutsCouple couple 
)
inline

Definition at line 823 of file G4VEnergyLossProcess.hh.

References DefineMaterial(), GetScaledRangeForScaledEnergy(), massRatio, and reduceFactor.

Referenced by G4EmBiasingManager::ApplyRangeCut(), G4VMscModel::GetRange(), and G4LossTableManager::GetRangeFromRestricteDEDX().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetScaledRangeForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 709 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, computedRange, idxRange, lastIdx, minKinEnergy, and preStepRangeEnergy.

Referenced by AlongStepGetPhysicalInteractionLength(), GetRange(), and GetRangeForLoss().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetSubDEDXForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 678 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxDEDXSub, and minKinEnergy.

Referenced by AlongStepDoIt(), and GetDEDXForSubsec().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::GetSubIonisationForScaledEnergy ( G4double  scaledKinEnergy)
inlineprivate

Definition at line 699 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxIonisationSub, and minKinEnergy.

virtual void G4VEnergyLossProcess::InitialiseEnergyLossProcess ( const G4ParticleDefinition ,
const G4ParticleDefinition  
)
protectedpure virtual

Implemented in G4MuIonisation, G4hIonisation, G4MuBremsstrahlung, G4ionIonisation, G4eBremsstrahlung, G4eIonisation, G4MuPairProduction, G4ePolarizedIonisation, G4hhIonisation, G4mplIonisation, G4hBremsstrahlung, G4alphaIonisation, G4hPairProduction, and G4ePolarizedBremsstrahlung.

Referenced by PreparePhysicsTable().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::InverseRangeTable ( ) const
inline

Definition at line 1062 of file G4VEnergyLossProcess.hh.

References theInverseRangeTable.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), G4LossTableManager::CopyTables(), G4LossTableManager::LocalPhysicsTables(), and G4EmCalculator::PrintInverseRangeTable().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::IonisationTable ( ) const
inline

Definition at line 1027 of file G4VEnergyLossProcess.hh.

References theIonisationTable.

Referenced by BuildPhysicsTable(), and G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::IonisationTableForSubsec ( ) const
inline

Definition at line 1034 of file G4VEnergyLossProcess.hh.

References theIonisationSubTable.

Referenced by BuildPhysicsTable(), and G4LossTableManager::BuildTables().

+ Here is the caller graph for this function:

G4bool G4VEnergyLossProcess::IsIntegral ( ) const
inline

Definition at line 957 of file G4VEnergyLossProcess.hh.

References integral.

G4bool G4VEnergyLossProcess::IsIonisationProcess ( ) const
inline

Definition at line 964 of file G4VEnergyLossProcess.hh.

References isIonisation.

Referenced by G4LossTableManager::BuildPhysicsTable(), BuildPhysicsTable(), G4LossTableManager::BuildTables(), G4LossTableManager::CopyTables(), and G4LossTableManager::LocalPhysicsTables().

+ Here is the caller graph for this function:

G4PhysicsVector * G4VEnergyLossProcess::LambdaPhysicsVector ( const G4MaterialCutsCouple ,
G4double  cut 
)
protected

Definition at line 2018 of file G4VEnergyLossProcess.cc.

References maxKinEnergy, minKinEnergy, nBins, G4PhysicsVector::SetSpline(), G4EmParameters::Spline(), and theParameters.

Referenced by G4ePolarizedIonisation::BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::LambdaTable ( ) const
inline

Definition at line 1069 of file G4VEnergyLossProcess.hh.

References theLambdaTable.

Referenced by BuildPhysicsTable(), G4LossTableManager::CopyTables(), and G4EmCalculator::FindLambdaTable().

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::MaxKinEnergy ( ) const
inline

Definition at line 985 of file G4VEnergyLossProcess.hh.

References maxKinEnergy.

G4double G4VEnergyLossProcess::MeanFreePath ( const G4Track track)

Definition at line 1975 of file G4VEnergyLossProcess.cc.

References DBL_MAX, DefineMaterial(), G4Track::GetKineticEnergy(), GetLambdaForScaledEnergy(), G4Track::GetMaterialCutsCouple(), massRatio, and preStepLambda.

Referenced by GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::MinKinEnergy ( ) const
inline

Definition at line 978 of file G4VEnergyLossProcess.hh.

References minKinEnergy.

G4double G4VEnergyLossProcess::MinPrimaryEnergy ( const G4ParticleDefinition ,
const G4Material ,
G4double  cut 
)
protectedvirtual

Reimplemented in G4ionIonisation, G4eIonisation, G4MuIonisation, G4hIonisation, G4MuBremsstrahlung, G4ePolarizedIonisation, G4MuPairProduction, G4alphaIonisation, and G4hhIonisation.

Definition at line 384 of file G4VEnergyLossProcess.cc.

Referenced by BuildLambdaTable().

+ Here is the caller graph for this function:

G4int G4VEnergyLossProcess::NumberOfModels ( ) const

Definition at line 436 of file G4VEnergyLossProcess.cc.

References modelManager, and G4EmModelManager::NumberOfModels().

+ Here is the call graph for this function:

G4int G4VEnergyLossProcess::NumberOfSubCutoffRegions ( ) const
inline

Definition at line 971 of file G4VEnergyLossProcess.hh.

References nSCoffRegions.

Referenced by G4LossTableManager::BuildTables().

+ Here is the caller graph for this function:

G4VEnergyLossProcess& G4VEnergyLossProcess::operator= ( const G4VEnergyLossProcess right)
private
const G4ParticleDefinition * G4VEnergyLossProcess::Particle ( ) const
inline

Definition at line 921 of file G4VEnergyLossProcess.hh.

References particle.

Referenced by G4LossTableManager::BuildPhysicsTable(), and G4LossTableManager::LocalPhysicsTables().

+ Here is the caller graph for this function:

G4VParticleChange * G4VEnergyLossProcess::PostStepDoIt ( const G4Track track,
const G4Step step 
)
virtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1611 of file G4VEnergyLossProcess.cc.

References G4VParticleChange::AddSecondary(), G4EmBiasingManager::ApplySecondaryBiasing(), biasFactor, biasFlag, biasID, biasManager, currentCouple, currentCoupleIndex, G4VProcess::currentInteractionLength, currentModel, DBL_MAX, fAlive, G4EmBiasingManager::ForcedInteractionRegion(), fParticleChange, fStopAndKill, fStopButAlive, G4UniformRand, G4ProcessManager::GetAtRestProcessVector(), G4Track::GetDynamicParticle(), G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), GetLambdaForScaledEnergy(), G4VParticleChange::GetLocalEnergyDeposit(), G4VParticleChange::GetParentWeight(), G4Track::GetPosition(), G4Step::GetPostStepPoint(), G4ParticleDefinition::GetProcessManager(), G4ParticleChangeForLoss::GetProposedKineticEnergy(), G4StepPoint::GetSafety(), G4Track::GetTouchableHandle(), G4VParticleChange::GetTrackStatus(), G4ParticleChangeForLoss::InitializeForPostStep(), integral, G4VEmModel::IsActive(), lowestKinEnergy, massRatio, mfpKinEnergy, particle, G4VProcess::pParticleChange, preStepLambda, G4VParticleChange::ProposeLocalEnergyDeposit(), G4VParticleChange::ProposeTrackStatus(), G4VParticleChange::ProposeWeight(), G4VEmModel::SampleSecondaries(), secID, G4EmBiasingManager::SecondaryBiasingRegion(), secParticles, SelectModel(), G4Track::SetCreatorModelIndex(), G4VParticleChange::SetNumberOfSecondaries(), G4Track::SetTouchableHandle(), G4Track::SetWeight(), G4ProcessVector::size(), G4VProcess::theNumberOfInteractionLengthLeft, and weightFlag.

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::PostStepGetPhysicalInteractionLength ( const G4Track track,
G4double  previousStepSize,
G4ForceCondition condition 
)
virtual
void G4VEnergyLossProcess::PreparePhysicsTable ( const G4ParticleDefinition part)
virtual

Reimplemented from G4VProcess.

Definition at line 444 of file G4VEnergyLossProcess.cc.

References actBinning, actLinLossLimit, actLossFluc, actMaxKinEnergy, actMinKinEnergy, baseParticle, biasFlag, biasID, biasManager, G4LossTableManager::BuildCSDARange(), chargeSqRatio, Clean(), G4PhysicsTable::clearAndDestroy(), currentCouple, DBL_MAX, fFactor, G4ParticleTable::FindParticle(), fRange, G4cout, G4endl, G4lrint(), G4ProcessManager::GetAlongStepProcessVector(), G4VProcess::GetMasterProcess(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4EmModelManager::GetModel(), G4Region::GetName(), G4ParticleDefinition::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetParticleType(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetProcessManager(), G4VProcess::GetProcessName(), G4MaterialCutsCouple::GetProductionCuts(), G4ProductionCutsTable::GetProductionCutsTable(), G4LossTableManager::GetTableBuilder(), G4ProductionCutsTable::GetTableSize(), G4VEmModel::HighEnergyLimit(), idxSCoffRegions, G4EmBiasingManager::Initialise(), G4EmModelManager::Initialise(), G4LossTableBuilder::InitialiseBaseMaterials(), InitialiseEnergyLossProcess(), isIon, isIonisation, isMaster, G4EmParameters::LambdaFactor(), lambdaFactor, lastIdx, G4EmParameters::LinearLossLimit(), linLossLimit, lManager, G4EmParameters::LossFluctuation(), lossFluctuationFlag, massRatio, G4EmParameters::MaxEnergyForCSDARange(), G4EmParameters::MaxKinEnergy(), maxKinEnergy, maxKinEnergyCSDA, mfpKinEnergy, G4EmParameters::MinKinEnergy(), minKinEnergy, G4EmParameters::MinSubRange(), modelManager, n, nBins, nBinsCSDA, nSCoffRegions, G4EmParameters::NumberOfBins(), G4EmParameters::NumberOfBinsPerDecade(), G4EmModelManager::NumberOfModels(), particle, G4PhysicsTableHelper::PreparePhysicsTable(), G4LossTableManager::PreparePhysicsTable(), preStepKinEnergy, preStepLambda, preStepRangeEnergy, reduceFactor, reg, G4PhysicsModelCatalog::Register(), G4LossTableManager::RegisterExtraParticle(), rndmStepFlag, scoffRegions, secID, secondaryParticle, G4VEmModel::SetAngularGeneratorFlag(), G4VEmModel::SetHighEnergyLimit(), G4VEmModel::SetMasterThread(), G4VProcess::SetVerboseLevel(), G4ProcessVector::size(), G4EmModelManager::SubCutoff(), G4LossTableManager::SubCutProducer(), subsecID, theCrossSectionMax, theCSDARangeTable, theCuts, theDEDXAtMaxEnergy, theDEDXSubTable, theDEDXTable, theDEDXunRestrictedTable, theEnergyOfCrossSectionMax, theGenericIon, theInverseRangeTable, theIonisationSubTable, theIonisationTable, theLambdaTable, theParameters, theRangeAtMaxEnergy, theRangeTableForLoss, theSubCuts, theSubLambdaTable, G4EmParameters::UseAngularGeneratorForIonisation(), G4EmParameters::UseCutAsFinalRange(), useSubCutoff, G4EmParameters::Verbose(), G4VProcess::verboseLevel, and G4EmParameters::WorkerVerbose().

virtual void G4VEnergyLossProcess::PrintInfo ( )
pure virtual

Implemented in G4MuIonisation, G4hIonisation, G4MuBremsstrahlung, G4eBremsstrahlung, G4eIonisation, G4ionIonisation, G4MuPairProduction, G4ePolarizedIonisation, G4hhIonisation, G4mplIonisation, and G4alphaIonisation.

Referenced by PrintInfoDefinition().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::PrintInfoDefinition ( const G4ParticleDefinition part)

Definition at line 964 of file G4VEnergyLossProcess.cc.

References dRoverRange, G4EmModelManager::DumpModelList(), finalRange, G4BestUnit, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4VProcess::GetProcessSubType(), integral, isIonisation, linLossLimit, lossFluctuationFlag, maxKinEnergy, maxKinEnergyCSDA, minKinEnergy, mm, modelManager, nBins, nBinsCSDA, nSCoffRegions, G4EmParameters::NumberOfBinsPerDecade(), PrintInfo(), G4EmParameters::Spline(), theCSDARangeTable, theDEDXSubTable, theDEDXTable, theDEDXunRestrictedTable, theInverseRangeTable, theLambdaTable, theParameters, theRangeTableForLoss, theSubLambdaTable, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::PrintWarning ( G4String  tit,
G4double  val 
)
private

Definition at line 2401 of file G4VEnergyLossProcess.cc.

References G4Exception(), G4VProcess::GetProcessName(), GeV, JustWarning, keV, maxKinEnergy, minKinEnergy, and nBins.

Referenced by SetDEDXBinning(), SetLinearLossLimit(), SetLowestEnergyLimit(), SetMaxKinEnergy(), SetMinKinEnergy(), and SetStepFunction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::RangeTableForLoss ( ) const
inline

Definition at line 1055 of file G4VEnergyLossProcess.hh.

References theRangeTableForLoss.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), G4LossTableManager::CopyTables(), G4LossTableManager::LocalPhysicsTables(), and G4EmCalculator::PrintRangeTable().

+ Here is the caller graph for this function:

G4bool G4VEnergyLossProcess::RetrievePhysicsTable ( const G4ParticleDefinition part,
const G4String directory,
G4bool  ascii 
)
virtual

Reimplemented from G4VProcess.

Definition at line 1809 of file G4VEnergyLossProcess.cc.

References baseParticle, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), isMaster, nSCoffRegions, particle, RetrieveTable(), tablesAreBuilt, theCSDARangeTable, theDEDXSubTable, theDEDXTable, theDEDXunRestrictedTable, theInverseRangeTable, theIonisationSubTable, theLambdaTable, theRangeTableForLoss, theSubLambdaTable, and G4VProcess::verboseLevel.

+ Here is the call graph for this function:

G4bool G4VEnergyLossProcess::RetrieveTable ( const G4ParticleDefinition p,
G4PhysicsTable aTable,
G4bool  ascii,
const G4String directory,
const G4String tname,
G4bool  mandatory 
)
private

Definition at line 1895 of file G4VEnergyLossProcess.cc.

References G4PhysicsTable::ExistPhysicsTable(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetPhysicsTableFileName(), G4PhysicsTable::length(), n, G4PhysicsTableHelper::RetrievePhysicsTable(), G4EmParameters::Spline(), theParameters, and G4VProcess::verboseLevel.

Referenced by RetrievePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::SampleSubCutSecondaries ( std::vector< G4Track * > &  tracks,
const G4Step step,
G4VEmModel model,
G4int  matIdx 
)

Definition at line 1533 of file G4VEnergyLossProcess.cc.

References chargeSqRatio, G4Log(), G4UniformRand, G4Track::GetDynamicParticle(), G4StepPoint::GetGlobalTime(), G4DynamicParticle::GetKineticEnergy(), G4Track::GetKineticEnergy(), G4Track::GetMaterialCutsCouple(), G4Track::GetParticleDefinition(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4Step::GetStepLength(), G4Track::GetTouchableHandle(), G4Step::GetTrack(), idxSubLambda, massRatio, perMillion, G4VEmModel::SampleSecondaries(), secParticles, G4Track::SetCreatorModelIndex(), G4Track::SetTouchableHandle(), subsecID, and thePositron.

Referenced by AlongStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VEnergyLossProcess::ScaledKinEnergyForLoss ( G4double  range)
inlineprivate

Definition at line 746 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, G4PhysicsVector::Energy(), idxInverseRange, minKinEnergy, and G4PhysicsVector::Value().

Referenced by AlongStepDoIt(), and GetKineticEnergy().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4ParticleDefinition * G4VEnergyLossProcess::SecondaryParticle ( ) const
inline

Definition at line 936 of file G4VEnergyLossProcess.hh.

References secondaryParticle.

Referenced by G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::SecondaryRangeTable ( ) const
inline

Definition at line 1048 of file G4VEnergyLossProcess.hh.

References theSecondaryRangeTable.

Referenced by BuildPhysicsTable().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SelectModel ( G4double  kinEnergy)
inlineprotected

Definition at line 620 of file G4VEnergyLossProcess.hh.

References currentCouple, currentCoupleIndex, currentModel, modelManager, G4EmModelManager::SelectModel(), and G4VEmModel::SetCurrentCouple().

Referenced by CrossSectionPerVolume(), GetDEDXDispersion(), PostStepDoIt(), and PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VEmModel * G4VEnergyLossProcess::SelectModelForMaterial ( G4double  kinEnergy,
size_t &  idx 
) const
inline

Definition at line 628 of file G4VEnergyLossProcess.hh.

References modelManager, and G4EmModelManager::SelectModel().

Referenced by G4EmCalculator::FindEmModel(), and G4ContinuousGainOfEnergy::GetContinuousStepLimit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetBaseParticle ( const G4ParticleDefinition p)
inline

Definition at line 914 of file G4VEnergyLossProcess.hh.

References baseParticle.

Referenced by G4alphaIonisation::InitialiseEnergyLossProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), G4ionIonisation::InitialiseEnergyLossProcess(), and G4hIonisation::InitialiseEnergyLossProcess().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetCrossSectionBiasingFactor ( G4double  f,
G4bool  flag = true 
)

Definition at line 2263 of file G4VEnergyLossProcess.cc.

References biasFactor, G4cout, G4endl, G4VProcess::GetProcessName(), G4VProcess::verboseLevel, and weightFlag.

Referenced by G4EmProcessOptions::SetProcessBiasingFactor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetCSDARangeTable ( G4PhysicsTable pRange)

Definition at line 2118 of file G4VEnergyLossProcess.cc.

References idxCSDA, G4PhysicsTable::length(), maxKinEnergyCSDA, n, theCSDARangeTable, theRangeAtMaxEnergy, and G4PhysicsVector::Value().

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetDEDXBinning ( G4int  nbins)

Definition at line 2367 of file G4VEnergyLossProcess.cc.

References actBinning, n, nBins, and PrintWarning().

Referenced by G4MonopolePhysics::ConstructProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), and G4hhIonisation::InitialiseEnergyLossProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetDEDXTable ( G4PhysicsTable p,
G4EmTableType  tType 
)

Definition at line 2056 of file G4VEnergyLossProcess.cc.

References fIsIonisation, fIsSubIonisation, fRestricted, fSubRestricted, fTotal, G4cout, G4endl, G4LossTableBuilder::GetCoupleIndexes(), G4LossTableBuilder::GetDensityFactors(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4LossTableManager::GetTableBuilder(), idxDEDXunRestricted, isMaster, G4PhysicsTable::length(), lManager, maxKinEnergyCSDA, n, particle, theDEDXAtMaxEnergy, theDEDXSubTable, theDEDXTable, theDEDXunRestrictedTable, theDensityFactor, theDensityIdx, theIonisationSubTable, theIonisationTable, and G4PhysicsVector::Value().

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetDynamicMassCharge ( G4double  massratio,
G4double  charge2ratio 
)
inline

Definition at line 653 of file G4VEnergyLossProcess.hh.

References biasFactor, chargeSqRatio, currentCoupleIndex, fFactor, massRatio, and reduceFactor.

Referenced by G4ContinuousGainOfEnergy::AlongStepDoIt(), G4ContinuousGainOfEnergy::GetContinuousStepLimit(), G4ContinuousGainOfEnergy::SetDynamicMassCharge(), and G4EmCalculator::UpdateParticle().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetEmModel ( G4VEmModel p,
G4int  index = 1 
)

Definition at line 411 of file G4VEnergyLossProcess.cc.

References emModels, and n.

Referenced by DMXPhysicsList::ConstructEM(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), PhysListEmStandardNR::ConstructProcess(), PhysListEmStandardSS::ConstructProcess(), PhysListEmStandardGS::ConstructProcess(), EmStandardPhysics::ConstructProcess(), PhysListEmStandardWVI::ConstructProcess(), PhysListEmStandard_GS::ConstructProcess(), PhysListEmStandard_WVI::ConstructProcess(), PhysListEmStandard_option0::ConstructProcess(), PhysListEmStandard_option3::ConstructProcess(), PhysListEmStandard_SS::ConstructProcess(), GammaRayTelEMlowePhysics::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4hPairProduction::InitialiseEnergyLossProcess(), G4hBremsstrahlung::InitialiseEnergyLossProcess(), G4alphaIonisation::InitialiseEnergyLossProcess(), G4ePolarizedIonisation::InitialiseEnergyLossProcess(), G4MuPairProduction::InitialiseEnergyLossProcess(), G4eIonisation::InitialiseEnergyLossProcess(), G4eBremsstrahlung::InitialiseEnergyLossProcess(), G4ionIonisation::InitialiseEnergyLossProcess(), G4MuBremsstrahlung::InitialiseEnergyLossProcess(), G4MuIonisation::InitialiseEnergyLossProcess(), and G4hIonisation::InitialiseEnergyLossProcess().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetFluctModel ( G4VEmFluctuationModel p)
inline
void G4VEnergyLossProcess::SetIntegral ( G4bool  val)
inline

Definition at line 950 of file G4VEnergyLossProcess.hh.

References integral.

Referenced by G4LossTableManager::Register(), and G4LossTableManager::SetParameters().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetInverseRangeTable ( G4PhysicsTable p)

Definition at line 2168 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), particle, theInverseRangeTable, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetIonisation ( G4bool  val)
void G4VEnergyLossProcess::SetLambdaTable ( G4PhysicsTable p)

Definition at line 2180 of file G4VEnergyLossProcess.cc.

References DBL_MAX, G4PhysicsVector::Energy(), G4cout, G4endl, G4LossTableBuilder::GetCoupleIndexes(), G4LossTableBuilder::GetDensityFactors(), G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), G4LossTableManager::GetTableBuilder(), G4PhysicsVector::GetVectorLength(), G4PhysicsTable::length(), lManager, MeV, n, particle, smax, tablesAreBuilt, theCrossSectionMax, theDensityFactor, theDensityIdx, theEnergyOfCrossSectionMax, theLambdaTable, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetLinearLossLimit ( G4double  val)

Definition at line 2335 of file G4VEnergyLossProcess.cc.

References actLinLossLimit, linLossLimit, and PrintWarning().

Referenced by G4alphaIonisation::G4alphaIonisation(), and G4ionIonisation::G4ionIonisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetLossFluctuations ( G4bool  val)
inline

Definition at line 943 of file G4VEnergyLossProcess.hh.

References lossFluctuationFlag.

Referenced by G4AdjointPhysicsList::ConstructEM(), and G4AdjointPhysicsList::SetLossFluctuationFlag().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetLowestEnergyLimit ( G4double  val)

Definition at line 2359 of file G4VEnergyLossProcess.cc.

References lowestKinEnergy, and PrintWarning().

Referenced by G4EmUserPhysics::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetMaxKinEnergy ( G4double  e)

Definition at line 2390 of file G4VEnergyLossProcess.cc.

References actMaxKinEnergy, maxKinEnergy, maxKinEnergyCSDA, minKinEnergy, and PrintWarning().

Referenced by G4MonopolePhysics::ConstructProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), and G4hhIonisation::InitialiseEnergyLossProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetMinKinEnergy ( G4double  e)

Definition at line 2380 of file G4VEnergyLossProcess.cc.

References actMinKinEnergy, maxKinEnergy, minKinEnergy, and PrintWarning().

Referenced by G4MonopolePhysics::ConstructProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), and G4hhIonisation::InitialiseEnergyLossProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetParticle ( const G4ParticleDefinition p)
inlineprotected

Definition at line 898 of file G4VEnergyLossProcess.hh.

References particle.

void G4VEnergyLossProcess::SetRangeTableForLoss ( G4PhysicsTable p)

Definition at line 2144 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), particle, theRangeTableForLoss, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetSecondaryRangeTable ( G4PhysicsTable p)

Definition at line 2156 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), particle, theSecondaryRangeTable, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetSubLambdaTable ( G4PhysicsTable p)

Definition at line 2242 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), particle, theSubLambdaTable, and G4VProcess::verboseLevel.

Referenced by BuildPhysicsTable(), G4LossTableManager::BuildTables(), and G4LossTableManager::CopyTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::StartTracking ( G4Track track)
virtual

Reimplemented from G4VProcess.

Definition at line 1068 of file G4VEnergyLossProcess.cc.

References baseParticle, biasFlag, biasManager, chargeSqRatio, G4VProcess::currentInteractionLength, DBL_MAX, G4Track::GetDefinition(), G4Track::GetParentID(), G4ParticleDefinition::GetPDGMass(), isIon, massRatio, mfpKinEnergy, preStepRangeEnergy, G4EmBiasingManager::ResetForcedInteraction(), theGenericIon, and G4VProcess::theNumberOfInteractionLengthLeft.

+ Here is the call graph for this function:

G4bool G4VEnergyLossProcess::StorePhysicsTable ( const G4ParticleDefinition part,
const G4String directory,
G4bool  ascii = false 
)
virtual

Reimplemented from G4VProcess.

Definition at line 1746 of file G4VEnergyLossProcess.cc.

References baseParticle, G4cout, G4endl, G4ParticleDefinition::GetParticleName(), G4VProcess::GetProcessName(), isIonisation, isMaster, particle, StoreTable(), theCSDARangeTable, theDEDXSubTable, theDEDXTable, theDEDXunRestrictedTable, theInverseRangeTable, theIonisationSubTable, theIonisationTable, theLambdaTable, theRangeTableForLoss, theSubLambdaTable, and G4VProcess::verboseLevel.

+ Here is the call graph for this function:

G4bool G4VEnergyLossProcess::StoreTable ( const G4ParticleDefinition p,
G4PhysicsTable aTable,
G4bool  ascii,
const G4String directory,
const G4String tname 
)
private

Definition at line 1875 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4VProcess::GetPhysicsTableFileName(), name, and G4PhysicsTable::StorePhysicsTable().

Referenced by StorePhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::SubLambdaTable ( ) const
inline

Definition at line 1076 of file G4VEnergyLossProcess.hh.

References theSubLambdaTable.

Referenced by BuildPhysicsTable(), and G4LossTableManager::CopyTables().

+ Here is the caller graph for this function:

G4bool G4VEnergyLossProcess::TablesAreBuilt ( ) const
inline

Definition at line 999 of file G4VEnergyLossProcess.hh.

References tablesAreBuilt.

void G4VEnergyLossProcess::UpdateEmModel ( const G4String nam,
G4double  emin,
G4double  emax 
)

Definition at line 403 of file G4VEnergyLossProcess.cc.

References modelManager, and G4EmModelManager::UpdateEmModel().

+ Here is the call graph for this function:

Member Data Documentation

G4bool G4VEnergyLossProcess::actBinning
private
G4bool G4VEnergyLossProcess::actLinLossLimit
private
G4bool G4VEnergyLossProcess::actLossFluc
private

Definition at line 564 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess(), and PreparePhysicsTable().

G4bool G4VEnergyLossProcess::actMaxKinEnergy
private
G4bool G4VEnergyLossProcess::actMinKinEnergy
private
G4GPILSelection G4VEnergyLossProcess::aGPILSelection
private
G4VAtomDeexcitation* G4VEnergyLossProcess::atomDeexcitation
private

Definition at line 490 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), BuildPhysicsTable(), and G4VEnergyLossProcess().

G4bool G4VEnergyLossProcess::biasFlag
private
G4int G4VEnergyLossProcess::biasID
private
G4double G4VEnergyLossProcess::computedRange
private

Definition at line 598 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess(), and GetScaledRangeForScaledEnergy().

const G4MaterialCutsCouple* G4VEnergyLossProcess::currentCouple
private
const G4Material* G4VEnergyLossProcess::currentMaterial
private
G4double G4VEnergyLossProcess::dRoverRange
private
std::vector<G4VEmModel*> G4VEnergyLossProcess::emModels
private

Definition at line 488 of file G4VEnergyLossProcess.hh.

Referenced by EmModel(), and SetEmModel().

G4double G4VEnergyLossProcess::finalRange
private
G4VEmFluctuationModel* G4VEnergyLossProcess::fluctModel
private

Definition at line 489 of file G4VEnergyLossProcess.hh.

Referenced by FluctModel(), G4VEnergyLossProcess(), and SetFluctModel().

G4ParticleChangeForLoss G4VEnergyLossProcess::fParticleChange
protected
G4double G4VEnergyLossProcess::fRange
private
size_t G4VEnergyLossProcess::idxCSDA
private
size_t G4VEnergyLossProcess::idxDEDX
private

Definition at line 512 of file G4VEnergyLossProcess.hh.

Referenced by Clean(), G4VEnergyLossProcess(), and GetDEDXForScaledEnergy().

size_t G4VEnergyLossProcess::idxDEDXSub
private

Definition at line 513 of file G4VEnergyLossProcess.hh.

Referenced by Clean(), G4VEnergyLossProcess(), and GetSubDEDXForScaledEnergy().

size_t G4VEnergyLossProcess::idxDEDXunRestricted
private

Definition at line 514 of file G4VEnergyLossProcess.hh.

Referenced by Clean(), G4VEnergyLossProcess(), and SetDEDXTable().

size_t G4VEnergyLossProcess::idxInverseRange
private

Definition at line 520 of file G4VEnergyLossProcess.hh.

Referenced by Clean(), G4VEnergyLossProcess(), and ScaledKinEnergyForLoss().

size_t G4VEnergyLossProcess::idxIonisation
private
size_t G4VEnergyLossProcess::idxIonisationSub
private
size_t G4VEnergyLossProcess::idxLambda
private
size_t G4VEnergyLossProcess::idxRange
private
G4bool* G4VEnergyLossProcess::idxSCoffRegions
private

Definition at line 494 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), Clean(), and PreparePhysicsTable().

size_t G4VEnergyLossProcess::idxSecRange
private

Definition at line 519 of file G4VEnergyLossProcess.hh.

Referenced by Clean(), and G4VEnergyLossProcess().

size_t G4VEnergyLossProcess::idxSubLambda
private
G4bool G4VEnergyLossProcess::integral
private
G4bool G4VEnergyLossProcess::isIon
private
G4double G4VEnergyLossProcess::lambdaFactor
private
size_t G4VEnergyLossProcess::lastIdx
private
G4double G4VEnergyLossProcess::linLossLimit
private
G4bool G4VEnergyLossProcess::lossFluctuationFlag
private
G4double G4VEnergyLossProcess::lowestKinEnergy
private
G4int G4VEnergyLossProcess::nBinsCSDA
private
G4int G4VEnergyLossProcess::nProcesses
private

Definition at line 497 of file G4VEnergyLossProcess.hh.

Referenced by AddCollaborativeProcess(), and Clean().

G4int G4VEnergyLossProcess::nSCoffRegions
private
G4int G4VEnergyLossProcess::nWarnings
private

Definition at line 589 of file G4VEnergyLossProcess.hh.

G4double G4VEnergyLossProcess::preStepKinEnergy
private
G4double G4VEnergyLossProcess::preStepRangeEnergy
private
G4double G4VEnergyLossProcess::preStepScaledEnergy
private
G4bool G4VEnergyLossProcess::rndmStepFlag
private
G4SafetyHelper* G4VEnergyLossProcess::safetyHelper
private

Definition at line 477 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), BuildPhysicsTable(), and G4VEnergyLossProcess().

std::vector<const G4Region*> G4VEnergyLossProcess::scoffRegions
private

Definition at line 492 of file G4VEnergyLossProcess.hh.

Referenced by ActivateSubCutoff(), and PreparePhysicsTable().

std::vector<G4VEnergyLossProcess*> G4VEnergyLossProcess::scProcesses
private

Definition at line 496 of file G4VEnergyLossProcess.hh.

Referenced by AddCollaborativeProcess(), and Clean().

std::vector<G4Track*> G4VEnergyLossProcess::scTracks
private
G4int G4VEnergyLossProcess::secID
private
const G4ParticleDefinition* G4VEnergyLossProcess::secondaryParticle
private
std::vector<G4DynamicParticle*> G4VEnergyLossProcess::secParticles
private
G4VSubCutProducer* G4VEnergyLossProcess::subcutProducer
private

Definition at line 491 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), BuildPhysicsTable(), and G4VEnergyLossProcess().

G4int G4VEnergyLossProcess::subsecID
private
G4bool G4VEnergyLossProcess::tablesAreBuilt
private
std::vector<G4double> G4VEnergyLossProcess::theCrossSectionMax
private
const G4DataVector* G4VEnergyLossProcess::theCuts
private
std::vector<G4double> G4VEnergyLossProcess::theDEDXAtMaxEnergy
private
const std::vector<G4double>* G4VEnergyLossProcess::theDensityFactor
private
const std::vector<G4int>* G4VEnergyLossProcess::theDensityIdx
private
const G4ParticleDefinition* G4VEnergyLossProcess::theElectron
private

Definition at line 481 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess().

std::vector<G4double> G4VEnergyLossProcess::theEnergyOfCrossSectionMax
private
const G4ParticleDefinition* G4VEnergyLossProcess::theGamma
private

Definition at line 483 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess().

const G4ParticleDefinition* G4VEnergyLossProcess::theGenericIon
private
G4PhysicsTable* G4VEnergyLossProcess::theIonisationSubTable
private
G4PhysicsTable* G4VEnergyLossProcess::theIonisationTable
private
const G4ParticleDefinition* G4VEnergyLossProcess::thePositron
private

Definition at line 482 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess(), and SampleSubCutSecondaries().

std::vector<G4double> G4VEnergyLossProcess::theRangeAtMaxEnergy
private
G4PhysicsTable* G4VEnergyLossProcess::theSecondaryRangeTable
private

Definition at line 507 of file G4VEnergyLossProcess.hh.

Referenced by SecondaryRangeTable(), and SetSecondaryRangeTable().

const G4DataVector* G4VEnergyLossProcess::theSubCuts
private

Definition at line 533 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess(), and PreparePhysicsTable().

G4bool G4VEnergyLossProcess::useDeexcitation
private

Definition at line 559 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), and BuildPhysicsTable().

G4bool G4VEnergyLossProcess::useSubCutoff
private

Definition at line 558 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), and PreparePhysicsTable().

G4bool G4VEnergyLossProcess::weightFlag
private

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