Geant4  10.01
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 G4AtomicShell * GetAtomicShell (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", const G4String &pixename="")
 
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 SetPIXE (G4bool)
 
G4bool IsPIXEActive () const
 
const G4String & GetName () const
 
void SetPIXECrossSectionModel (const G4String &)
 
const G4String & PIXECrossSectionModel () const
 
void SetPIXEElectronCrossSectionModel (const G4String &)
 
const G4String & PIXEElectronCrossSectionModel () const
 
void SetIgnoreCuts (G4bool)
 
G4bool IgnoreCuts () 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)
 
G4DynamicParticle * GenerateFluorescence (G4int Z, G4int shellId, G4int provShellId)
 
G4DynamicParticle * GenerateAuger (G4int Z, G4int shellId)
 
 G4UAtomicDeexcitation (G4UAtomicDeexcitation &)
 
G4UAtomicDeexcitation & operator= (const G4UAtomicDeexcitation &right)
 

Private Attributes

G4AtomicTransitionManager * transitionManager
 
G4int newShellId
 
G4double minGammaEnergy
 
G4double minElectronEnergy
 
G4int augerVacancyId
 
G4VhShellCrossSection * PIXEshellCS
 
G4VhShellCrossSection * anaPIXEshellCS
 
G4VhShellCrossSection * ePIXEshellCS
 
G4EmCorrections * emcorr
 
const G4ParticleDefinition * theElectron
 
const G4ParticleDefinition * thePositron
 

Detailed Description

Definition at line 61 of file G4UAtomicDeexcitation.hh.

Constructor & Destructor Documentation

G4UAtomicDeexcitation::G4UAtomicDeexcitation ( )

Definition 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 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 396 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 548 of file G4UAtomicDeexcitation.cc.

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

Referenced by GenerateParticles().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 475 of file G4UAtomicDeexcitation.cc.

References G4Exception(), G4UniformRand, G4Gamma::Gamma(), JustWarning, minGammaEnergy, newShellId, G4AtomicTransitionManager::NumberOfReachableShells(), and transitionManager.

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 234 of file G4UAtomicDeexcitation.cc.

References G4Exception(), GenerateAuger(), GenerateFluorescence(), JustWarning, minElectronEnergy, minGammaEnergy, newShellId, SelectTypeOfTransition(), and G4AtomicShell::ShellId().

+ Here is the call graph for this function:

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

Implements G4VAtomDeexcitation.

Definition at line 229 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 332 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 225 of file G4UAtomicDeexcitation.cc.

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

Definition at line 406 of file G4UAtomicDeexcitation.cc.

References G4FluoTransition::FinalShellId(), G4Exception(), G4UniformRand, JustWarning, 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 390 of file G4UAtomicDeexcitation.cc.

References minElectronEnergy.

void G4UAtomicDeexcitation::SetCutForSecondaryPhotons ( G4double  cut)

Definition at line 385 of file G4UAtomicDeexcitation.cc.

References minGammaEnergy.

Member Data Documentation

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

Definition at line 145 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

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