Geant4-11
|
#include <G4AtomicTransitionManager.hh>
Public Member Functions | |
G4int | GetVerboseLevel () |
void | Initialise () |
needs to be called once from other code before start of run More... | |
G4int | NumberOfReachableAugerShells (G4int Z) const |
G4int | NumberOfReachableShells (G4int Z) const |
G4int | NumberOfShells (G4int Z) const |
const G4AugerTransition * | ReachableAugerShell (G4int Z, G4int shellIndex) const |
const G4FluoTransition * | ReachableShell (G4int Z, size_t shellIndex) const |
void | SetVerboseLevel (G4int vl) |
Verbosity control. More... | |
G4AtomicShell * | Shell (G4int Z, size_t shellIndex) const |
G4double | TotalNonRadiativeTransitionProbability (G4int Z, size_t shellIndex) const |
G4double | TotalRadiativeTransitionProbability (G4int Z, size_t shellIndex) const |
Static Public Member Functions | |
static G4AtomicTransitionManager * | Instance () |
Private Member Functions | |
G4AtomicTransitionManager () | |
G4AtomicTransitionManager (const G4AtomicTransitionManager &) | |
G4AtomicTransitionManager & | operator= (const G4AtomicTransitionManager &right) |
~G4AtomicTransitionManager () | |
Private Attributes | |
G4AugerData * | augerData |
G4int | infTableLimit = 6 |
G4bool | isInitialized |
std::map< G4int, std::vector< G4AtomicShell * >, std::less< G4int > > | shellTable |
G4int | supTableLimit = 100 |
std::map< G4int, std::vector< G4FluoTransition * >, std::less< G4int > > | transitionTable |
G4int | verboseLevel |
G4int | zMax = 100 |
G4int | zMin = 1 |
Static Private Attributes | |
static G4AtomicTransitionManager * | instance = nullptr |
Definition at line 57 of file G4AtomicTransitionManager.hh.
|
explicitprivate |
Definition at line 57 of file G4AtomicTransitionManager.cc.
Referenced by Instance().
|
private |
Definition at line 64 of file G4AtomicTransitionManager.cc.
References augerData, pos, shellTable, and transitionTable.
|
private |
|
inline |
void G4AtomicTransitionManager::Initialise | ( | ) |
needs to be called once from other code before start of run
Definition at line 278 of file G4AtomicTransitionManager.cc.
References G4EmParameters::ANSTOFluoDir(), anonymous_namespace{G4AtomicTransitionManager.cc}::AtomicTransitionManagerMutex, augerData, G4EmParameters::BeardenFluoDir(), G4InuclSpecialFunctions::bindingEnergy(), G4ShellData::BindingEnergy(), G4cout, G4endl, infTableLimit, G4EmParameters::Instance(), isInitialized, G4ShellData::LoadData(), G4FluoData::LoadData(), G4ShellData::NumberOfShells(), G4FluoData::NumberOfTransitions(), G4ShellData::ShellId(), shellTable, G4FluoData::StartShellEnergy(), G4FluoData::StartShellId(), G4FluoData::StartShellProb(), supTableLimit, transitionTable, G4FluoData::VacancyId(), Z, zMax, and zMin.
Referenced by G4LivermoreIonisationModel::Initialise(), G4UAtomicDeexcitation::InitialiseForNewRun(), and G4PenelopeOscillatorManager::ReadElementData().
|
static |
The only way to get an instance of this class is to call the function Instance()
Definition at line 48 of file G4AtomicTransitionManager.cc.
References G4AtomicTransitionManager(), and instance.
Referenced by G4eIonisationSpectrum::AverageEnergy(), G4ecpssrBaseKxsModel::CalculateCrossSection(), G4ecpssrBaseLixsModel::CalculateL1CrossSection(), G4ecpssrBaseLixsModel::CalculateL2CrossSection(), G4ecpssrBaseLixsModel::CalculateL3CrossSection(), G4ecpssrBaseLixsModel::CalculateVelocity(), G4LivermoreIonisationCrossSection::G4LivermoreIonisationCrossSection(), G4LivermoreIonisationModel::G4LivermoreIonisationModel(), G4OrlicLiXsModel::G4OrlicLiXsModel(), G4PenelopeComptonModel::G4PenelopeComptonModel(), G4PenelopeIonisationCrossSection::G4PenelopeIonisationCrossSection(), G4PenelopePhotoElectricModel::G4PenelopePhotoElectricModel(), G4UAtomicDeexcitation::G4UAtomicDeexcitation(), G4AtomicDeexcitation::GenerateAuger(), G4AtomicDeexcitation::GenerateFluorescence(), G4hImpactIonisation::PostStepDoIt(), G4eIonisationSpectrum::Probability(), G4PenelopeOscillatorManager::ReadElementData(), G4eIonisationSpectrum::SampleEnergy(), G4PenelopeIonisationModel::SampleSecondaries(), G4PenelopePhotoElectricModel::SampleSecondaries(), and G4AtomicDeexcitation::SelectTypeOfTransition().
This function returns the number of possible NON-radiative transitions for the atom with atomic number Z i.e. the number of shell in wich a vacancy can be filled by a NON-radiative transition
Definition at line 211 of file G4AtomicTransitionManager.cc.
References augerData, G4AugerData::NumberOfVacancies(), and Z.
Referenced by G4AtomicDeexcitation::GenerateAuger(), and G4UAtomicDeexcitation::GenerateAuger().
This function returns the number of those shells of the element whose atomic number is Z which are reachable through a radiative transition
Definition at line 188 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), pos, transitionTable, and Z.
Referenced by G4AtomicDeexcitation::GenerateFluorescence(), G4UAtomicDeexcitation::GenerateFluorescence(), G4AtomicDeexcitation::SelectTypeOfTransition(), and G4UAtomicDeexcitation::SelectTypeOfTransition().
This function returns the number of shells of the element whose atomic number is Z
Definition at line 166 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), pos, shellTable, and Z.
Referenced by G4LivermoreIonisationModel::ComputeDEDXPerVolume(), G4PenelopeIonisationCrossSection::CrossSection(), G4LivermoreIonisationCrossSection::CrossSection(), G4PenelopeIonisationCrossSection::GetCrossSection(), G4LivermoreIonisationCrossSection::GetCrossSection(), G4PenelopeOscillatorManager::ReadElementData(), and G4PenelopePhotoElectricModel::SampleSecondaries().
|
private |
const G4AugerTransition * G4AtomicTransitionManager::ReachableAugerShell | ( | G4int | Z, |
G4int | shellIndex | ||
) | const |
This function gives, upon Z and the Index of the initial shell where the vacancy is, the NON-radiative transition that can happen with originating shell for the transition, and the data for the possible auger electrons emitted (originating vacancy, energy amnd probability)
Definition at line 159 of file G4AtomicTransitionManager.cc.
References augerData, G4AugerData::GetAugerTransition(), and Z.
Referenced by G4AtomicDeexcitation::GenerateAuger(), and G4UAtomicDeexcitation::GenerateAuger().
const G4FluoTransition * G4AtomicTransitionManager::ReachableShell | ( | G4int | Z, |
size_t | shellIndex | ||
) | const |
Z is the atomic number of the element, shellIndex is the index (in EADL) of the final shell for the transition This function gives, upon Z and the Index of the initial shell where the vacancy is, the radiative transition that can happen (originating shell, energy, probability)
Definition at line 130 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), pos, transitionTable, and Z.
Referenced by G4AtomicDeexcitation::SelectTypeOfTransition(), and G4UAtomicDeexcitation::SelectTypeOfTransition().
|
inline |
Verbosity control.
Definition at line 109 of file G4AtomicTransitionManager.hh.
References verboseLevel.
G4AtomicShell * G4AtomicTransitionManager::Shell | ( | G4int | Z, |
size_t | shellIndex | ||
) | const |
Z is the atomic number of the element, shellIndex is the index (in EADL) of the shell
Definition at line 90 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), JustWarning, pos, shellTable, verboseLevel, and Z.
Referenced by G4ecpssrBaseKxsModel::CalculateCrossSection(), G4OrlicLiXsModel::CalculateL1CrossSection(), G4ecpssrBaseLixsModel::CalculateL1CrossSection(), G4OrlicLiXsModel::CalculateL2CrossSection(), G4ecpssrBaseLixsModel::CalculateL2CrossSection(), G4OrlicLiXsModel::CalculateL3CrossSection(), G4ecpssrBaseLixsModel::CalculateL3CrossSection(), G4ecpssrBaseLixsModel::CalculateVelocity(), G4UAtomicDeexcitation::GetAtomicShell(), G4hImpactIonisation::PostStepDoIt(), G4PenelopeOscillatorManager::ReadElementData(), G4LivermoreIonisationModel::SampleSecondaries(), G4PenelopeComptonModel::SampleSecondaries(), G4PenelopeIonisationModel::SampleSecondaries(), and G4PenelopePhotoElectricModel::SampleSecondaries().
G4double G4AtomicTransitionManager::TotalNonRadiativeTransitionProbability | ( | G4int | Z, |
size_t | shellIndex | ||
) | const |
Gives the sum of the probabilities of non radiative transition from the shell whose index is shellIndex
Definition at line 260 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), TotalRadiativeTransitionProbability(), and Z.
G4double G4AtomicTransitionManager::TotalRadiativeTransitionProbability | ( | G4int | Z, |
size_t | shellIndex | ||
) | const |
Gives the sum of the probabilities of radiative transition towards the shell whose index is shellIndex
Definition at line 217 of file G4AtomicTransitionManager.cc.
References FatalException, G4Exception(), pos, G4FluoTransition::TransitionProbabilities(), transitionTable, and Z.
Referenced by TotalNonRadiativeTransitionProbability().
|
private |
Definition at line 124 of file G4AtomicTransitionManager.hh.
Referenced by Initialise(), NumberOfReachableAugerShells(), ReachableAugerShell(), and ~G4AtomicTransitionManager().
|
private |
Definition at line 141 of file G4AtomicTransitionManager.hh.
Referenced by Initialise().
|
staticprivate |
Definition at line 121 of file G4AtomicTransitionManager.hh.
Referenced by Instance().
|
private |
Definition at line 144 of file G4AtomicTransitionManager.hh.
Referenced by Initialise().
|
private |
Definition at line 128 of file G4AtomicTransitionManager.hh.
Referenced by Initialise(), NumberOfShells(), Shell(), and ~G4AtomicTransitionManager().
|
private |
Definition at line 142 of file G4AtomicTransitionManager.hh.
Referenced by Initialise().
|
private |
Definition at line 132 of file G4AtomicTransitionManager.hh.
Referenced by Initialise(), NumberOfReachableShells(), ReachableShell(), TotalRadiativeTransitionProbability(), and ~G4AtomicTransitionManager().
|
private |
Definition at line 143 of file G4AtomicTransitionManager.hh.
Referenced by GetVerboseLevel(), SetVerboseLevel(), and Shell().
|
private |
Definition at line 137 of file G4AtomicTransitionManager.hh.
Referenced by Initialise().
|
private |
Definition at line 136 of file G4AtomicTransitionManager.hh.
Referenced by Initialise().