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

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/lowenergy/include/G4UAtomicDeexcitation.hh>

+ Inheritance diagram for G4UAtomicDeexcitation:
+ Collaboration diagram for G4UAtomicDeexcitation:

Public Member Functions

 G4UAtomicDeexcitation ()
 
virtual ~G4UAtomicDeexcitation ()
 
virtual void InitialiseForNewRun ()
 
virtual void InitialiseForExtraAtom (G4int Z)
 
void SetCutForSecondaryPhotons (G4double cut)
 
void SetCutForAugerElectrons (G4double cut)
 
virtual const G4AtomicShellGetAtomicShell (G4int Z, G4AtomicShellEnumerator shell)
 
virtual void GenerateParticles (std::vector< G4DynamicParticle * > *secVect, const G4AtomicShell *, G4int Z, G4double gammaCut, G4double eCut)
 
virtual G4double GetShellIonisationCrossSectionPerAtom (const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=0)
 
virtual G4double ComputeShellIonisationCrossSectionPerAtom (const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=0)
 
- Public Member Functions inherited from G4VAtomDeexcitation
 G4VAtomDeexcitation (const G4String &modname="Deexcitation")
 
virtual ~G4VAtomDeexcitation ()
 
void InitialiseAtomicDeexcitation ()
 
void SetDeexcitationActiveRegion (const G4String &rname, G4bool valDeexcitation, G4bool valAuger, G4bool valPIXE)
 
void SetFluo (G4bool)
 
G4bool IsFluoActive () const
 
void SetAuger (G4bool)
 
G4bool IsAugerActive () const
 
void SetAugerCascade (G4bool)
 
G4bool IsAugerCascadeActive () const
 
void SetPIXE (G4bool)
 
G4bool IsPIXEActive () const
 
const G4StringGetName () const
 
const std::vector< G4bool > & GetListOfActiveAtoms () const
 
void SetVerboseLevel (G4int)
 
G4int GetVerboseLevel () const
 
G4bool CheckDeexcitationActiveRegion (G4int coupleIndex)
 
G4bool CheckAugerActiveRegion (G4int coupleIndex)
 
void GenerateParticles (std::vector< G4DynamicParticle * > *secVect, const G4AtomicShell *, G4int Z, G4int coupleIndex)
 
void AlongStepDeexcitation (std::vector< G4Track * > &tracks, const G4Step &step, G4double &eLoss, G4int coupleIndex)
 

Private Member Functions

G4int SelectTypeOfTransition (G4int Z, G4int shellId)
 
G4DynamicParticleGenerateFluorescence (G4int Z, G4int shellId, G4int provShellId)
 
G4DynamicParticleGenerateAuger (G4int Z, G4int shellId)
 
G4DynamicParticleGenerateAuger (G4int Z, G4int shellId, G4int &newAugerShellId)
 
 G4UAtomicDeexcitation (G4UAtomicDeexcitation &)
 
G4UAtomicDeexcitationoperator= (const G4UAtomicDeexcitation &right)
 

Private Attributes

G4AtomicTransitionManagertransitionManager
 
G4int newShellId
 
G4double minGammaEnergy
 
G4double minElectronEnergy
 
G4int augerVacancyId
 
G4VhShellCrossSectionPIXEshellCS
 
G4VhShellCrossSectionanaPIXEshellCS
 
G4VhShellCrossSectionePIXEshellCS
 
G4EmCorrectionsemcorr
 
const G4ParticleDefinitiontheElectron
 
const G4ParticleDefinitionthePositron
 
std::vector< intvacancyArray
 

Detailed Description

Definition at line 60 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 60 of file G4UAtomicDeexcitation.hh

Constructor & Destructor Documentation

G4UAtomicDeexcitation::G4UAtomicDeexcitation ( )

Definition at line 75 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 75 of file G4UAtomicDeexcitation.cc

References anaPIXEshellCS, G4Electron::Electron(), emcorr, G4LossTableManager::EmCorrections(), ePIXEshellCS, G4AtomicTransitionManager::Instance(), G4LossTableManager::Instance(), PIXEshellCS, G4Positron::Positron(), theElectron, thePositron, and transitionManager.

+ Here is the call graph for this function:

G4UAtomicDeexcitation::~G4UAtomicDeexcitation ( )
virtual

Definition at line 89 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 89 of file G4UAtomicDeexcitation.cc

References anaPIXEshellCS, ePIXEshellCS, and PIXEshellCS.

G4UAtomicDeexcitation::G4UAtomicDeexcitation ( G4UAtomicDeexcitation )
private

Member Function Documentation

G4double G4UAtomicDeexcitation::ComputeShellIonisationCrossSectionPerAtom ( const G4ParticleDefinition p,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinE,
const G4Material mat = 0 
)
virtual

Implements G4VAtomDeexcitation.

Definition at line 403 of file G4UAtomicDeexcitation.cc.

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

References GetShellIonisationCrossSectionPerAtom().

+ Here is the call graph for this function:

G4DynamicParticle * G4UAtomicDeexcitation::GenerateAuger ( G4int  Z,
G4int  shellId 
)
private

Definition at line 558 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 558 of file G4UAtomicDeexcitation.cc

References G4AugerTransition::AugerOriginatingShellId(), G4AugerTransition::AugerTransitionEnergy(), G4AugerTransition::AugerTransitionProbabilities(), G4AugerTransition::AugerTransitionProbability(), G4Electron::Electron(), G4AugerTransition::FinalShellId(), G4UniformRand, G4VAtomDeexcitation::IsAugerActive(), G4VAtomDeexcitation::IsAugerCascadeActive(), minElectronEnergy, newShellId, G4AtomicTransitionManager::NumberOfReachableAugerShells(), pos(), G4AtomicTransitionManager::ReachableAugerShell(), transitionManager, G4AugerTransition::TransitionOriginatingShellIds(), twopi, and vacancyArray.

Referenced by GenerateParticles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4DynamicParticle* G4UAtomicDeexcitation::GenerateAuger ( G4int  Z,
G4int  shellId,
G4int newAugerShellId 
)
private
G4DynamicParticle * G4UAtomicDeexcitation::GenerateFluorescence ( G4int  Z,
G4int  shellId,
G4int  provShellId 
)
private

Definition at line 484 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 484 of file G4UAtomicDeexcitation.cc

References G4UniformRand, G4Gamma::Gamma(), G4VAtomDeexcitation::IsAugerCascadeActive(), minGammaEnergy, newShellId, G4AtomicTransitionManager::NumberOfReachableShells(), transitionManager, twopi, and vacancyArray.

Referenced by GenerateParticles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4UAtomicDeexcitation::GenerateParticles ( std::vector< G4DynamicParticle * > *  secVect,
const G4AtomicShell atomicShell,
G4int  Z,
G4double  gammaCut,
G4double  eCut 
)
virtual

Implements G4VAtomDeexcitation.

Definition at line 175 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 175 of file G4UAtomicDeexcitation.cc

References GenerateAuger(), GenerateFluorescence(), G4VAtomDeexcitation::IsAugerCascadeActive(), minElectronEnergy, minGammaEnergy, newShellId, SelectTypeOfTransition(), G4AtomicShell::ShellId(), and vacancyArray.

+ Here is the call graph for this function:

const G4AtomicShell * G4UAtomicDeexcitation::GetAtomicShell ( G4int  Z,
G4AtomicShellEnumerator  shell 
)
virtual

Implements G4VAtomDeexcitation.

Definition at line 170 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 170 of file G4UAtomicDeexcitation.cc

References G4AtomicTransitionManager::Shell(), and transitionManager.

+ Here is the call graph for this function:

G4double G4UAtomicDeexcitation::GetShellIonisationCrossSectionPerAtom ( const G4ParticleDefinition pdef,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinE,
const G4Material mat = 0 
)
virtual

Implements G4VAtomDeexcitation.

Definition at line 336 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 336 of file G4UAtomicDeexcitation.cc

References anaPIXEshellCS, G4VhShellCrossSection::CrossSection(), e, G4EmCorrections::EffectiveChargeSquareRatio(), emcorr, ePIXEshellCS, eplus, G4AtomicShells::GetNumberOfShells(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), incremental_prev_tag::idx, mass, PIXEshellCS, source.hepunit::proton_mass_c2, theElectron, and thePositron.

Referenced by ComputeShellIonisationCrossSectionPerAtom().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4UAtomicDeexcitation::InitialiseForExtraAtom ( G4int  Z)
virtual

Implements G4VAtomDeexcitation.

Definition at line 166 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 166 of file G4UAtomicDeexcitation.cc

void G4UAtomicDeexcitation::InitialiseForNewRun ( )
virtual

Implements G4VAtomDeexcitation.

Definition at line 96 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 96 of file G4UAtomicDeexcitation.cc

References anaPIXEshellCS, ePIXEshellCS, G4cout, G4endl, G4VhShellCrossSection::GetName(), G4AtomicTransitionManager::Initialise(), G4EmParameters::Instance(), G4VAtomDeexcitation::IsFluoActive(), G4VAtomDeexcitation::IsPIXEActive(), G4EmParameters::PIXECrossSectionModel(), G4EmParameters::PIXEElectronCrossSectionModel(), PIXEshellCS, and transitionManager.

+ Here is the call graph for this function:

G4UAtomicDeexcitation& G4UAtomicDeexcitation::operator= ( const G4UAtomicDeexcitation right)
private
G4int G4UAtomicDeexcitation::SelectTypeOfTransition ( G4int  Z,
G4int  shellId 
)
private

Definition at line 413 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 413 of file G4UAtomicDeexcitation.cc

References G4FluoTransition::FinalShellId(), G4UniformRand, G4AtomicTransitionManager::NumberOfReachableShells(), G4FluoTransition::OriginatingShellId(), G4AtomicTransitionManager::ReachableShell(), transitionManager, G4FluoTransition::TransitionProbabilities(), and G4FluoTransition::TransitionProbability().

Referenced by GenerateParticles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4UAtomicDeexcitation::SetCutForAugerElectrons ( G4double  cut)

Definition at line 397 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 397 of file G4UAtomicDeexcitation.cc

References minElectronEnergy.

void G4UAtomicDeexcitation::SetCutForSecondaryPhotons ( G4double  cut)

Definition at line 392 of file G4UAtomicDeexcitation.cc.

View newest version in sPHENIX GitHub at line 392 of file G4UAtomicDeexcitation.cc

References minGammaEnergy.

Member Data Documentation

G4VhShellCrossSection* G4UAtomicDeexcitation::anaPIXEshellCS
private

Definition at line 155 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 155 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), GetShellIonisationCrossSectionPerAtom(), InitialiseForNewRun(), and ~G4UAtomicDeexcitation().

G4int G4UAtomicDeexcitation::augerVacancyId
private

Definition at line 150 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 150 of file G4UAtomicDeexcitation.hh

G4EmCorrections* G4UAtomicDeexcitation::emcorr
private

Definition at line 157 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 157 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), and GetShellIonisationCrossSectionPerAtom().

G4VhShellCrossSection* G4UAtomicDeexcitation::ePIXEshellCS
private

Definition at line 156 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 156 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), GetShellIonisationCrossSectionPerAtom(), InitialiseForNewRun(), and ~G4UAtomicDeexcitation().

G4double G4UAtomicDeexcitation::minElectronEnergy
private

Definition at line 146 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 146 of file G4UAtomicDeexcitation.hh

Referenced by GenerateAuger(), GenerateParticles(), and SetCutForAugerElectrons().

G4double G4UAtomicDeexcitation::minGammaEnergy
private

Definition at line 145 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 145 of file G4UAtomicDeexcitation.hh

Referenced by GenerateFluorescence(), GenerateParticles(), and SetCutForSecondaryPhotons().

G4int G4UAtomicDeexcitation::newShellId
private

Definition at line 143 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 143 of file G4UAtomicDeexcitation.hh

Referenced by GenerateAuger(), GenerateFluorescence(), and GenerateParticles().

G4VhShellCrossSection* G4UAtomicDeexcitation::PIXEshellCS
private

Definition at line 154 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 154 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), GetShellIonisationCrossSectionPerAtom(), InitialiseForNewRun(), and ~G4UAtomicDeexcitation().

const G4ParticleDefinition* G4UAtomicDeexcitation::theElectron
private

Definition at line 159 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 159 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), and GetShellIonisationCrossSectionPerAtom().

const G4ParticleDefinition* G4UAtomicDeexcitation::thePositron
private

Definition at line 160 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 160 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), and GetShellIonisationCrossSectionPerAtom().

G4AtomicTransitionManager* G4UAtomicDeexcitation::transitionManager
private

Definition at line 139 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 139 of file G4UAtomicDeexcitation.hh

Referenced by G4UAtomicDeexcitation(), GenerateAuger(), GenerateFluorescence(), GetAtomicShell(), InitialiseForNewRun(), and SelectTypeOfTransition().

std::vector<int> G4UAtomicDeexcitation::vacancyArray
private

Definition at line 165 of file G4UAtomicDeexcitation.hh.

View newest version in sPHENIX GitHub at line 165 of file G4UAtomicDeexcitation.hh

Referenced by GenerateAuger(), GenerateFluorescence(), and GenerateParticles().


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