ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4LowEnergyIonisation Class Reference

#include <geant4/tree/geant4-10.6-release/examples/advanced/eRosita/physics/include/G4LowEnergyIonisation.hh>

+ Inheritance diagram for G4LowEnergyIonisation:
+ Collaboration diagram for G4LowEnergyIonisation:

Public Member Functions

 G4LowEnergyIonisation (const G4String &processName="LowEnergyIoni")
 
 ~G4LowEnergyIonisation ()
 
G4bool IsApplicable (const G4ParticleDefinition &)
 
void PrintInfoDefinition ()
 
void BuildPhysicsTable (const G4ParticleDefinition &ParticleType)
 
G4VParticleChangePostStepDoIt (const G4Track &track, const G4Step &step)
 
void SetCutForLowEnSecPhotons (G4double cut)
 
void SetCutForLowEnSecElectrons (G4double cut)
 
void ActivateAuger (G4bool val)
 
- Public Member Functions inherited from G4eLowEnergyLoss
 G4eLowEnergyLoss (const G4String &)
 
 ~G4eLowEnergyLoss ()
 
void BuildDEDXTable (const G4ParticleDefinition &aParticleType)
 
G4double GetContinuousStepLimit (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety)
 
G4VParticleChangeAlongStepDoIt (const G4Track &track, const G4Step &Step)
 
void ActivateFluorescence (G4bool val)
 
G4bool Fluorescence () const
 
- Public Member Functions inherited from G4RDVeLowEnergyLoss
 G4RDVeLowEnergyLoss (const G4String &, G4ProcessType aType=fNotDefined)
 
 G4RDVeLowEnergyLoss (G4RDVeLowEnergyLoss &)
 
virtual ~G4RDVeLowEnergyLoss ()
 
- Public Member Functions inherited from G4VContinuousDiscreteProcess
 G4VContinuousDiscreteProcess (const G4String &, G4ProcessType aType=fNotDefined)
 
 G4VContinuousDiscreteProcess (G4VContinuousDiscreteProcess &)
 
virtual ~G4VContinuousDiscreteProcess ()
 
virtual G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double previousStepSize, G4double currentMinimumStep, G4double &currentSafety, G4GPILSelection *selection)
 
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 ()
 
G4bool operator== (const G4VProcess &right) const
 
G4bool 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)
 
virtual void PreparePhysicsTable (const G4ParticleDefinition &)
 
virtual G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
virtual G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
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 StartTracking (G4Track *)
 
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
 
virtual void ProcessDescription (std::ostream &outfile) 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

G4double GetMeanFreePath (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual std::vector
< G4DynamicParticle * > * 
DeexciteAtom (const G4MaterialCutsCouple *couple, G4double incidentEnergy, G4double eLoss)
 

Private Member Functions

 G4LowEnergyIonisation (const G4LowEnergyIonisation &)
 
G4LowEnergyIonisationoperator= (const G4LowEnergyIonisation &right)
 
void BuildLossTable (const G4ParticleDefinition &ParticleType)
 

Private Attributes

G4RDVCrossSectionHandlercrossSectionHandler
 
G4RDVEMDataSettheMeanFreePath
 
G4RDVEnergySpectrumenergySpectrum
 
G4DataVector cutForDelta
 
G4double cutForPhotons
 
G4double cutForElectrons
 
G4RDAtomicDeexcitation deexcitationManager
 
G4RDShellVacancyshellVacancy
 

Additional Inherited Members

- Static Public Member Functions inherited from G4eLowEnergyLoss
static void SetNbOfProcesses (G4int nb)
 
static void PlusNbOfProcesses ()
 
static void MinusNbOfProcesses ()
 
static G4int GetNbOfProcesses ()
 
static void SetLowerBoundEloss (G4double val)
 
static void SetUpperBoundEloss (G4double val)
 
static void SetNbinEloss (G4int nb)
 
static G4double GetLowerBoundEloss ()
 
static G4double GetUpperBoundEloss ()
 
static G4int GetNbinEloss ()
 
- Static Protected Member Functions inherited from G4RDVeLowEnergyLoss
static G4PhysicsTableBuildRangeTable (G4PhysicsTable *theDEDXTable, G4PhysicsTable *theRangeTable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildLabTimeTable (G4PhysicsTable *theDEDXTable, G4PhysicsTable *theLabTimeTable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildProperTimeTable (G4PhysicsTable *theDEDXTable, G4PhysicsTable *ProperTimeTable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildRangeCoeffATable (G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffATable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildRangeCoeffBTable (G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffBTable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildRangeCoeffCTable (G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffCTable, G4double Tmin, G4double Tmax, G4int nbin)
 
static G4PhysicsTableBuildInverseRangeTable (G4PhysicsTable *theRangeTable, G4PhysicsTable *theRangeCoeffATable, G4PhysicsTable *theRangeCoeffBTable, G4PhysicsTable *theRangeCoeffCTable, G4PhysicsTable *theInverseRangeTable, G4double Tmin, G4double Tmax, G4int nbin)
 
- Protected Attributes inherited from G4eLowEnergyLoss
G4PhysicsTabletheLossTable
 
G4double MinKineticEnergy
 
G4double Charge
 
G4double lastCharge
 
- Static Protected Attributes inherited from G4eLowEnergyLoss
static G4PhysicsTabletheDEDXElectronTable = 0
 
static G4PhysicsTabletheDEDXPositronTable = 0
 
static G4PhysicsTabletheRangeElectronTable = 0
 
static G4PhysicsTabletheRangePositronTable = 0
 
static G4PhysicsTabletheInverseRangeElectronTable = 0
 
static G4PhysicsTabletheInverseRangePositronTable = 0
 
static G4PhysicsTabletheLabTimeElectronTable = 0
 
static G4PhysicsTabletheLabTimePositronTable = 0
 
static G4PhysicsTabletheProperTimeElectronTable = 0
 
static G4PhysicsTabletheProperTimePositronTable = 0
 
static G4int NbOfProcesses = 2
 
static G4int CounterOfElectronProcess = 0
 
static G4int CounterOfPositronProcess = 0
 
static G4PhysicsTable ** RecorderOfElectronProcess
 
static G4PhysicsTable ** RecorderOfPositronProcess
 

Detailed Description

Definition at line 69 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 69 of file G4LowEnergyIonisation.hh

Constructor & Destructor Documentation

G4LowEnergyIonisation::G4LowEnergyIonisation ( const G4String processName = "LowEnergyIoni")

Definition at line 123 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 123 of file G4LowEnergyIonisation.cc

References cutForElectrons, cutForPhotons, eV, and G4VProcess::verboseLevel.

G4LowEnergyIonisation::~G4LowEnergyIonisation ( )

Definition at line 136 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 136 of file G4LowEnergyIonisation.cc

References crossSectionHandler, energySpectrum, shellVacancy, and theMeanFreePath.

G4LowEnergyIonisation::G4LowEnergyIonisation ( const G4LowEnergyIonisation )
private

Member Function Documentation

void G4LowEnergyIonisation::ActivateAuger ( G4bool  val)

Definition at line 711 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 711 of file G4LowEnergyIonisation.cc

References G4RDAtomicDeexcitation::ActivateAugerElectronProduction(), and deexcitationManager.

+ Here is the call graph for this function:

void G4LowEnergyIonisation::BuildLossTable ( const G4ParticleDefinition ParticleType)
private

Definition at line 231 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 231 of file G4LowEnergyIonisation.cc

References G4RDVEMDataSet::AddComponent(), G4RDShellVacancy::AddXsiTable(), G4RDVEnergySpectrum::AverageEnergy(), G4PhysicsTable::clearAndDestroy(), Acts::VectorHelpers::cross(), crossSectionHandler, cutForDelta, e, energy, energySpectrum, G4RDVEnergySpectrum::Excitation(), G4RDVCrossSectionHandler::FindValue(), G4cout, G4endl, G4Material::GetAtomicNumDensityVector(), G4Material::GetElementVector(), G4ProductionCutsTable::GetEnergyCutsVector(), G4PhysicsVector::GetLowEdgeEnergy(), G4eLowEnergyLoss::GetLowerBoundEloss(), G4MaterialCutsCouple::GetMaterial(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4eLowEnergyLoss::GetNbinEloss(), G4Material::GetNumberOfElements(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), G4eLowEnergyLoss::GetUpperBoundEloss(), G4PhysicsTable::insert(), G4RDAtomicTransitionManager::Instance(), keV, m, material(), MeV, mm, n, G4RDAtomicTransitionManager::NumberOfShells(), G4RDVEMDataSet::PrintData(), G4InuclParticleNames::pro, G4RDVEnergySpectrum::Probability(), G4PhysicsVector::PutValue(), shellVacancy, G4eLowEnergyLoss::theLossTable, G4VProcess::verboseLevel, and Z.

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Implements G4eLowEnergyLoss.

Definition at line 688 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 688 of file G4LowEnergyIonisation.cc

References G4RDVEMDataSet::FindValue(), G4RDVEMDataSet::GetComponent(), G4Track::GetKineticEnergy(), G4Track::GetMaterialCutsCouple(), NotForced, and theMeanFreePath.

+ Here is the call graph for this function:

G4bool G4LowEnergyIonisation::IsApplicable ( const G4ParticleDefinition particle)
virtual

Reimplemented from G4eLowEnergyLoss.

Definition at line 598 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 598 of file G4LowEnergyIonisation.cc

References G4Electron::Electron().

+ Here is the call graph for this function:

G4LowEnergyIonisation& G4LowEnergyIonisation::operator= ( const G4LowEnergyIonisation right)
private
G4VParticleChange * G4LowEnergyIonisation::PostStepDoIt ( const G4Track track,
const G4Step step 
)
virtual

Implements G4eLowEnergyLoss.

Definition at line 403 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 403 of file G4LowEnergyIonisation.cc

References G4ParticleChange::AddSecondary(), G4VProcess::aParticleChange, G4InuclSpecialFunctions::bindingEnergy(), G4RDAtomicShell::BindingEnergy(), crossSectionHandler, cutForDelta, cutForElectrons, cutForPhotons, deexcitationManager, e, G4Electron::Electron(), source.hepunit::electron_mass_c2, energySpectrum, eV, G4eLowEnergyLoss::Fluorescence(), fStopAndKill, G4cout, G4endl, G4UniformRand, G4Gamma::Gamma(), G4RDAtomicDeexcitation::GenerateParticles(), G4DynamicParticle::GetDefinition(), G4MaterialCutsCouple::GetIndex(), G4DynamicParticle::GetKineticEnergy(), G4Track::GetKineticEnergy(), G4Track::GetMaterialCutsCouple(), G4Track::GetMomentumDirection(), G4ParticleChange::Initialize(), G4RDAtomicTransitionManager::Instance(), G4RDVEnergySpectrum::MaxEnergyOfSecondaries(), norm, phi, G4VContinuousDiscreteProcess::PostStepDoIt(), G4ParticleChange::ProposeEnergy(), G4VParticleChange::ProposeLocalEnergyDeposit(), G4ParticleChange::ProposeMomentumDirection(), G4VParticleChange::ProposeTrackStatus(), CLHEP::Hep3Vector::rotateUz(), G4RDVEnergySpectrum::SampleEnergy(), G4RDVCrossSectionHandler::SelectRandomAtom(), G4RDVCrossSectionHandler::SelectRandomShell(), G4DynamicParticle::SetDefinition(), G4DynamicParticle::SetKineticEnergy(), G4DynamicParticle::SetMomentumDirection(), G4VParticleChange::SetNumberOfSecondaries(), G4RDAtomicShell::ShellId(), twopi, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), Z, and CLHEP::Hep3Vector::z().

+ Here is the call graph for this function:

void G4LowEnergyIonisation::PrintInfoDefinition ( )

Definition at line 586 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 586 of file G4LowEnergyIonisation.cc

References G4cout, G4endl, and G4VProcess::GetProcessName().

Referenced by BuildPhysicsTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4LowEnergyIonisation::SetCutForLowEnSecElectrons ( G4double  cut)

Definition at line 705 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 705 of file G4LowEnergyIonisation.cc

References cutForElectrons, deexcitationManager, and G4RDAtomicDeexcitation::SetCutForAugerElectrons().

+ Here is the call graph for this function:

void G4LowEnergyIonisation::SetCutForLowEnSecPhotons ( G4double  cut)

Definition at line 699 of file G4LowEnergyIonisation.cc.

View newest version in sPHENIX GitHub at line 699 of file G4LowEnergyIonisation.cc

References cutForPhotons, deexcitationManager, and G4RDAtomicDeexcitation::SetCutForSecondaryPhotons().

+ Here is the call graph for this function:

Member Data Documentation

G4RDVCrossSectionHandler* G4LowEnergyIonisation::crossSectionHandler
private

Definition at line 112 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 112 of file G4LowEnergyIonisation.hh

Referenced by BuildLossTable(), BuildPhysicsTable(), DeexciteAtom(), PostStepDoIt(), and ~G4LowEnergyIonisation().

G4DataVector G4LowEnergyIonisation::cutForDelta
private

Definition at line 117 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 117 of file G4LowEnergyIonisation.hh

Referenced by BuildLossTable(), BuildPhysicsTable(), and PostStepDoIt().

G4double G4LowEnergyIonisation::cutForElectrons
private

Definition at line 119 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 119 of file G4LowEnergyIonisation.hh

Referenced by DeexciteAtom(), G4LowEnergyIonisation(), PostStepDoIt(), and SetCutForLowEnSecElectrons().

G4double G4LowEnergyIonisation::cutForPhotons
private

Definition at line 118 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 118 of file G4LowEnergyIonisation.hh

Referenced by DeexciteAtom(), G4LowEnergyIonisation(), PostStepDoIt(), and SetCutForLowEnSecPhotons().

G4RDAtomicDeexcitation G4LowEnergyIonisation::deexcitationManager
private

Definition at line 120 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 120 of file G4LowEnergyIonisation.hh

Referenced by ActivateAuger(), DeexciteAtom(), PostStepDoIt(), SetCutForLowEnSecElectrons(), and SetCutForLowEnSecPhotons().

G4RDVEnergySpectrum* G4LowEnergyIonisation::energySpectrum
private

Definition at line 114 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 114 of file G4LowEnergyIonisation.hh

Referenced by BuildLossTable(), BuildPhysicsTable(), PostStepDoIt(), and ~G4LowEnergyIonisation().

G4RDShellVacancy* G4LowEnergyIonisation::shellVacancy
private

Definition at line 121 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 121 of file G4LowEnergyIonisation.hh

Referenced by BuildLossTable(), DeexciteAtom(), and ~G4LowEnergyIonisation().

G4RDVEMDataSet* G4LowEnergyIonisation::theMeanFreePath
private

Definition at line 113 of file G4LowEnergyIonisation.hh.

View newest version in sPHENIX GitHub at line 113 of file G4LowEnergyIonisation.hh

Referenced by BuildPhysicsTable(), GetMeanFreePath(), and ~G4LowEnergyIonisation().


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