Geant4  10.02.p01
G4UAtomicDeexcitation Class Reference

#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< int > vacancyArray
 

Detailed Description

Definition at line 61 of file G4UAtomicDeexcitation.hh.

Constructor & Destructor Documentation

G4UAtomicDeexcitation::G4UAtomicDeexcitation ( )

Definition at line 76 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 90 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 404 of file G4UAtomicDeexcitation.cc.

References GetShellIonisationCrossSectionPerAtom().

+ Here is the call graph for this function:

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

Definition at line 485 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 176 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 171 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 337 of file G4UAtomicDeexcitation.cc.

References anaPIXEshellCS, G4VhShellCrossSection::CrossSection(), G4EmCorrections::EffectiveChargeSquareRatio(), emcorr, ePIXEshellCS, eplus, G4AtomicShells::GetNumberOfShells(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), PIXEshellCS, 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 167 of file G4UAtomicDeexcitation.cc.

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

Definition at line 414 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 398 of file G4UAtomicDeexcitation.cc.

References minElectronEnergy.

void G4UAtomicDeexcitation::SetCutForSecondaryPhotons ( G4double  cut)

Definition at line 393 of file G4UAtomicDeexcitation.cc.

References minGammaEnergy.

Member Data Documentation

G4VhShellCrossSection* G4UAtomicDeexcitation::anaPIXEshellCS
private
G4int G4UAtomicDeexcitation::augerVacancyId
private

Definition at line 151 of file G4UAtomicDeexcitation.hh.

G4EmCorrections* G4UAtomicDeexcitation::emcorr
private
G4double G4UAtomicDeexcitation::minElectronEnergy
private
G4double G4UAtomicDeexcitation::minGammaEnergy
private
G4int G4UAtomicDeexcitation::newShellId
private
const G4ParticleDefinition* G4UAtomicDeexcitation::theElectron
private
const G4ParticleDefinition* G4UAtomicDeexcitation::thePositron
private
std::vector<int> G4UAtomicDeexcitation::vacancyArray
private

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