Geant4  10.03
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) override=0
 
virtual void PrintInfo ()=0
 
virtual void ProcessDescription (std::ostream &outFile) const
 
virtual void PreparePhysicsTable (const G4ParticleDefinition &) override
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &) override
 
G4PhysicsTableBuildDEDXTable (G4EmTableType tType=fRestricted)
 
G4PhysicsTableBuildLambdaTable (G4EmTableType tType=fRestricted)
 
void PrintInfoDefinition (const G4ParticleDefinition &part)
 
virtual void StartTracking (G4Track *) override
 
virtual G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety, G4GPILSelection *selection) override
 
virtual G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
 
virtual G4VParticleChangeAlongStepDoIt (const G4Track &, const G4Step &) override
 
G4double SampleSubCutSecondaries (std::vector< G4Track * > &, const G4Step &, G4VEmModel *model, G4int matIdx)
 
virtual G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &) override
 
virtual G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &directory, G4bool ascii=false) override
 
virtual G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &directory, G4bool ascii) override
 
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=nullptr)
 
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=nullptr)
 
void SetCrossSectionBiasingFactor (G4double f, G4bool flag=true)
 
void ActivateForcedInteraction (G4double length, 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, G4bool lock=true)
 
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)
 
virtual G4double GetMeanFreePath (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
 
virtual G4double GetContinuousStepLimit (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety) override
 
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 &)=delete
 
G4VEnergyLossProcessoperator= (const G4VEnergyLossProcess &right)=delete
 

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 actIntegral
 
G4bool actStepFunc
 
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
 
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 167 of file G4VEnergyLossProcess.cc.

References actBinning, actIntegral, actLinLossLimit, actLossFluc, actMaxKinEnergy, actMinKinEnergy, actStepFunc, aGPILSelection, atomDeexcitation, basedCoupleIndex, biasFactor, biasFlag, biasID, biasManager, CandidateForSelection, chargeSqRatio, computedRange, currentCoupleIndex, currentMaterial, currentModel, DBL_MAX, dRoverRange, G4Electron::Electron(), fFactor, finalRange, 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, G4EmParameters::LowestElectronEnergy(), 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(), 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 )
privatedelete

Member Function Documentation

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

Definition at line 2288 of file G4VEnergyLossProcess.cc.

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

Referenced by G4EmParameters::DefineRegParamForLoss().

+ 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 2308 of file G4VEnergyLossProcess.cc.

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

Referenced by G4EmParameters::DefineRegParamForLoss().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 1053 of file G4VEnergyLossProcess.cc.

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

Referenced by G4EmParameters::DefineRegParamForLoss().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::AddCollaborativeProcess ( G4VEnergyLossProcess p)

Definition at line 2037 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 = nullptr 
)

Definition at line 391 of file G4VEnergyLossProcess.cc.

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

Referenced by G4EmModelActivator::ActivatePAI(), G4EmLowEPPhysics::ConstructProcess(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), ExExChPhysListEmStandardSS::ConstructProcess(), PhysListEmPenelope::ConstructProcess(), PhysListEmLivermore::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4ePolarizedBremsstrahlung::InitialiseEnergyLossProcess(), G4hPairProduction::InitialiseEnergyLossProcess(), G4hBremsstrahlung::InitialiseEnergyLossProcess(), G4alphaIonisation::InitialiseEnergyLossProcess(), G4ePairProduction::InitialiseEnergyLossProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), G4mplIonisation::InitialiseEnergyLossProcess(), G4ePolarizedIonisation::InitialiseEnergyLossProcess(), G4MuPairProduction::InitialiseEnergyLossProcess(), G4eIonisation::InitialiseEnergyLossProcess(), G4eBremsstrahlung::InitialiseEnergyLossProcess(), G4MuBremsstrahlung::InitialiseEnergyLossProcess(), G4ionIonisation::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 
)
overridevirtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1250 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 
)
overridevirtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1117 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 927 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)
overridevirtual

Reimplemented from G4VProcess.

Reimplemented in G4ePolarizedIonisation.

Definition at line 697 of file G4VEnergyLossProcess.cc.

References G4LossTableManager::AtomDeexcitation(), atomDeexcitation, baseParticle, G4LossTableManager::BuildPhysicsTable(), CSDARangeTable(), DEDXTable(), DEDXTableForSubsec(), DEDXunRestrictedTable(), fIsIonisation, fIsSubIonisation, 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(), modelManager, nSCoffRegions, G4EmModelManager::NumberOfModels(), particle, PrintInfoDefinition(), RangeTableForLoss(), safetyHelper, SecondaryRangeTable(), SetCSDARangeTable(), SetDEDXTable(), SetInverseRangeTable(), SetLambdaTable(), 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 360 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 860 of file G4VEnergyLossProcess.hh.

References currentCoupleIndex, 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 1994 of file G4VEnergyLossProcess.cc.

References AlongStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

G4double G4VEnergyLossProcess::CrossSectionBiasingFactor ( ) const
inline

Definition at line 993 of file G4VEnergyLossProcess.hh.

References biasFactor.

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

Definition at line 1962 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 1042 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 612 of file G4VEnergyLossProcess.hh.

References currentCoupleIndex.

Referenced by G4ePolarizedIonisation::ComputeSaturationFactor().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::DEDXTable ( ) const
inline

Definition at line 1007 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 1014 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 1021 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 636 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 1510 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 890 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 
)
overrideprotectedvirtual

Implements G4VContinuousDiscreteProcess.

Definition at line 2016 of file G4VEnergyLossProcess.cc.

References DBL_MAX.

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

Definition at line 808 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 2261 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 771 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 1944 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 663 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 781 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 687 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxIonisation, and minKinEnergy.

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

Definition at line 837 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 847 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 763 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 730 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 
)
overrideprotectedvirtual

Implements G4VContinuousDiscreteProcess.

Reimplemented in G4ePolarizedIonisation.

Definition at line 2004 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 427 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 791 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 822 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 708 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 677 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 698 of file G4VEnergyLossProcess.hh.

References basedCoupleIndex, fFactor, idxIonisationSub, and minKinEnergy.

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

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

Referenced by PreparePhysicsTable().

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::InverseRangeTable ( ) const
inline

Definition at line 1063 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 1028 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 1035 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 958 of file G4VEnergyLossProcess.hh.

References integral.

G4bool G4VEnergyLossProcess::IsIonisationProcess ( ) const
inline

Definition at line 965 of file G4VEnergyLossProcess.hh.

References isIonisation.

Referenced by G4EmModelActivator::ActivatePAI(), 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 2026 of file G4VEnergyLossProcess.cc.

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

Referenced by G4ePolarizedIonisation::BuildAsymmetryTables().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::LambdaTable ( ) const
inline

Definition at line 1070 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 986 of file G4VEnergyLossProcess.hh.

References maxKinEnergy.

G4double G4VEnergyLossProcess::MeanFreePath ( const G4Track track)

Definition at line 1983 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 979 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, G4hhIonisation, and G4ePairProduction.

Definition at line 382 of file G4VEnergyLossProcess.cc.

Referenced by BuildLambdaTable().

+ Here is the caller graph for this function:

G4int G4VEnergyLossProcess::NumberOfModels ( ) const

Definition at line 434 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 972 of file G4VEnergyLossProcess.hh.

References nSCoffRegions.

Referenced by G4LossTableManager::BuildTables().

+ Here is the caller graph for this function:

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

Definition at line 920 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 
)
overridevirtual

Reimplemented from G4VContinuousDiscreteProcess.

Definition at line 1620 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 
)
overridevirtual
void G4VEnergyLossProcess::PreparePhysicsTable ( const G4ParticleDefinition part)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 442 of file G4VEnergyLossProcess.cc.

References actBinning, actIntegral, actLinLossLimit, actLossFluc, actMaxKinEnergy, actMinKinEnergy, baseParticle, biasFlag, biasID, biasManager, G4EmParameters::BuildCSDARange(), chargeSqRatio, Clean(), G4PhysicsTable::clearAndDestroy(), currentCouple, DBL_MAX, G4EmParameters::DefineRegParamForLoss(), 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(), G4EmParameters::Integral(), integral, isIon, isIonisation, isMaster, G4EmParameters::LambdaFactor(), lambdaFactor, lastIdx, G4EmParameters::LinearLossLimit(), linLossLimit, lManager, G4EmParameters::LossFluctuation(), lossFluctuationFlag, G4EmParameters::LowestElectronEnergy(), lowestKinEnergy, G4EmParameters::LowestMuHadEnergy(), massRatio, G4EmParameters::MaxEnergyForCSDARange(), G4EmParameters::MaxKinEnergy(), maxKinEnergy, maxKinEnergyCSDA, MeV, mfpKinEnergy, G4EmParameters::MinKinEnergy(), minKinEnergy, G4EmParameters::MinSubRange(), modelManager, n, nBins, nBinsCSDA, nSCoffRegions, 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, G4mplIonisation, G4hhIonisation, G4ePairProduction, and G4alphaIonisation.

Referenced by PrintInfoDefinition().

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::PrintInfoDefinition ( const G4ParticleDefinition part)

Definition at line 975 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 2411 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:

void G4VEnergyLossProcess::ProcessDescription ( std::ostream &  outFile) const
virtual

Definition at line 2425 of file G4VEnergyLossProcess.cc.

References G4endl, and G4VProcess::GetProcessName().

+ Here is the call graph for this function:

G4PhysicsTable * G4VEnergyLossProcess::RangeTableForLoss ( ) const
inline

Definition at line 1056 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 
)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 1817 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 1903 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 1542 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 745 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 935 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 1049 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 619 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 627 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 913 of file G4VEnergyLossProcess.hh.

References baseParticle.

Referenced by G4alphaIonisation::InitialiseEnergyLossProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), G4mplIonisation::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 2270 of file G4VEnergyLossProcess.cc.

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

Referenced by G4EmParameters::DefineRegParamForLoss().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetCSDARangeTable ( G4PhysicsTable pRange)

Definition at line 2125 of file G4VEnergyLossProcess.cc.

References emax, 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 2377 of file G4VEnergyLossProcess.cc.

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

Referenced by G4MonopolePhysics::ConstructProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), and G4mplIonisation::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 2064 of file G4VEnergyLossProcess.cc.

References emax, fIsIonisation, fIsSubIonisation, fRestricted, fSubRestricted, fTotal, G4LossTableBuilder::GetCoupleIndexes(), G4LossTableBuilder::GetDensityFactors(), G4LossTableManager::GetTableBuilder(), idxDEDXunRestricted, G4PhysicsTable::length(), lManager, maxKinEnergyCSDA, n, 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 652 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 409 of file G4VEnergyLossProcess.cc.

References emModels, and n.

Referenced by DMXPhysicsList::ConstructEM(), G4EmLowEPPhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), G4EmLivermorePolarizedPhysics::ConstructProcess(), ElectromagneticPhysics::ConstructProcess(), PhysListEmStandardGS::ConstructProcess(), PhysListEmStandardNR::ConstructProcess(), EmStandardPhysics::ConstructProcess(), PhysListEmStandardWVI::ConstructProcess(), PhysListEmStandard_WVI::ConstructProcess(), PhysListEmStandard_GS::ConstructProcess(), PhysListEmStandard_option0::ConstructProcess(), PhysListEmStandard_option3::ConstructProcess(), PhysListEmStandard_SS::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), GammaRayTelEMlowePhysics::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4hPairProduction::InitialiseEnergyLossProcess(), G4hBremsstrahlung::InitialiseEnergyLossProcess(), G4alphaIonisation::InitialiseEnergyLossProcess(), G4ePairProduction::InitialiseEnergyLossProcess(), G4ePolarizedIonisation::InitialiseEnergyLossProcess(), G4MuPairProduction::InitialiseEnergyLossProcess(), G4eIonisation::InitialiseEnergyLossProcess(), G4eBremsstrahlung::InitialiseEnergyLossProcess(), G4MuBremsstrahlung::InitialiseEnergyLossProcess(), G4ionIonisation::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 actIntegral, and integral.

void G4VEnergyLossProcess::SetInverseRangeTable ( G4PhysicsTable p)

Definition at line 2175 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 2187 of file G4VEnergyLossProcess.cc.

References DBL_MAX, emax, 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 2342 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 942 of file G4VEnergyLossProcess.hh.

References actLossFluc, and lossFluctuationFlag.

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

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetLowestEnergyLimit ( G4double  val)

Definition at line 2369 of file G4VEnergyLossProcess.cc.

References lowestKinEnergy, and PrintWarning().

+ Here is the call graph for this function:

void G4VEnergyLossProcess::SetMaxKinEnergy ( G4double  e)

Definition at line 2400 of file G4VEnergyLossProcess.cc.

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

Referenced by G4MonopolePhysics::ConstructProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), and G4mplIonisation::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 2390 of file G4VEnergyLossProcess.cc.

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

Referenced by G4MonopolePhysics::ConstructProcess(), G4hhIonisation::InitialiseEnergyLossProcess(), and G4mplIonisation::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 897 of file G4VEnergyLossProcess.hh.

References particle.

void G4VEnergyLossProcess::SetRangeTableForLoss ( G4PhysicsTable p)

Definition at line 2151 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 2163 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::SetStepFunction ( G4double  v1,
G4double  v2,
G4bool  lock = true 
)

Definition at line 2353 of file G4VEnergyLossProcess.cc.

References actStepFunc, dRoverRange, finalRange, G4INCL::Math::min(), and PrintWarning().

Referenced by DMXPhysicsList::ConstructEM(), G4EmDNAPhysics_option3::ConstructProcess(), G4EmLowEPPhysics::ConstructProcess(), G4EmLivermorePolarizedPhysics::ConstructProcess(), G4EmPenelopePhysics::ConstructProcess(), G4EmLivermorePhysics::ConstructProcess(), G4EmDNAPhysics_option1::ConstructProcess(), G4EmDNAPhysics::ConstructProcess(), G4EmDNAPhysics_option2::ConstructProcess(), G4EmDNAPhysics_option5::ConstructProcess(), G4EmDNAPhysics_option4::ConstructProcess(), G4EmDNAPhysics_option7::ConstructProcess(), ExExChPhysListEmStandardSS::ConstructProcess(), PhysListEmStandardNR::ConstructProcess(), PhysListEmStandard_GS::ConstructProcess(), PhysListEmStandard_WVI::ConstructProcess(), PhysListEmStandard_option3::ConstructProcess(), PhysListEmStandard_SS::ConstructProcess(), G4EmStandardPhysics_option3::ConstructProcess(), G4EmStandardPhysics_option4::ConstructProcess(), G4EmStandardPhysics_option1::ConstructProcess(), G4EmStandardPhysics_option2::ConstructProcess(), G4EmParameters::DefineRegParamForLoss(), G4hhIonisation::G4hhIonisation(), and G4mplIonisation::G4mplIonisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VEnergyLossProcess::SetSubLambdaTable ( G4PhysicsTable p)

Definition at line 2249 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)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 1078 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 
)
overridevirtual

Reimplemented from G4VProcess.

Definition at line 1754 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 1883 of file G4VEnergyLossProcess.cc.

References G4cout, G4endl, G4VProcess::GetPhysicsTableFileName(), G4InuclParticleNames::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 1077 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 1000 of file G4VEnergyLossProcess.hh.

References tablesAreBuilt.

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

Definition at line 401 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::actIntegral
private

Definition at line 562 of file G4VEnergyLossProcess.hh.

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

G4bool G4VEnergyLossProcess::actLinLossLimit
private
G4bool G4VEnergyLossProcess::actLossFluc
private
G4bool G4VEnergyLossProcess::actMaxKinEnergy
private
G4bool G4VEnergyLossProcess::actMinKinEnergy
private
G4bool G4VEnergyLossProcess::actStepFunc
private

Definition at line 563 of file G4VEnergyLossProcess.hh.

Referenced by G4VEnergyLossProcess(), and SetStepFunction().

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 597 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
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 558 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), and BuildPhysicsTable().

G4bool G4VEnergyLossProcess::useSubCutoff
private

Definition at line 557 of file G4VEnergyLossProcess.hh.

Referenced by AlongStepDoIt(), and PreparePhysicsTable().

G4bool G4VEnergyLossProcess::weightFlag
private

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