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

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

+ Collaboration diagram for G4PenelopeOscillatorManager:

Public Member Functions

void Clear ()
 
void Dump (const G4Material *)
 
G4PenelopeOscillatorTableGetOscillatorTableIonisation (const G4Material *)
 
G4PenelopeOscillatorGetOscillatorIonisation (const G4Material *, G4int)
 
G4PenelopeOscillatorTableGetOscillatorTableCompton (const G4Material *)
 
G4PenelopeOscillatorGetOscillatorCompton (const G4Material *, G4int)
 
void SetVerbosityLevel (G4int vl)
 
G4int GetVerbosityLevel ()
 
G4double GetTotalZ (const G4Material *)
 
G4double GetTotalA (const G4Material *)
 Returns the total A for the molecule.
 
G4double GetMeanExcitationEnergy (const G4Material *)
 Returns the mean excitation energy.
 
G4double GetPlasmaEnergySquared (const G4Material *)
 Returns the squared plasma energy.
 
G4double GetAtomsPerMolecule (const G4Material *)
 Returns the total number of atoms per molecule.
 
G4double GetNumberOfZAtomsPerMolecule (const G4Material *, G4int Z)
 

Static Public Member Functions

static
G4PenelopeOscillatorManager
GetOscillatorManager ()
 

Protected Member Functions

 G4PenelopeOscillatorManager ()
 
 ~G4PenelopeOscillatorManager ()
 

Private Member Functions

G4PenelopeOscillatorManageroperator= (const G4PenelopeOscillatorManager &right)
 
 G4PenelopeOscillatorManager (const G4PenelopeOscillatorManager &)
 
void CheckForTablesCreated ()
 
void ReadElementData ()
 
void BuildOscillatorTable (const G4Material *)
 

Private Attributes

std::map< const G4Material
*, G4PenelopeOscillatorTable * > * 
oscillatorStoreIonisation
 
std::map< const G4Material
*, G4PenelopeOscillatorTable * > * 
oscillatorStoreCompton
 
std::map< const G4Material
*, G4double > * 
atomicNumber
 
std::map< const G4Material
*, G4double > * 
atomicMass
 
std::map< const G4Material
*, G4double > * 
excitationEnergy
 
std::map< const G4Material
*, G4double > * 
plasmaSquared
 
std::map< const G4Material
*, G4double > * 
atomsPerMolecule
 
std::map< std::pair< const
G4Material *, G4int >
, G4double > * 
atomTablePerMolecule
 
G4double elementData [5][2000]
 
G4bool fReadElementData
 
G4int verbosityLevel
 

Static Private Attributes

static G4ThreadLocal
G4PenelopeOscillatorManager
instance = 0
 

Detailed Description

Definition at line 68 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 68 of file G4PenelopeOscillatorManager.hh

Constructor & Destructor Documentation

G4PenelopeOscillatorManager::G4PenelopeOscillatorManager ( )
protected

Definition at line 62 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 62 of file G4PenelopeOscillatorManager.cc

References elementData, fReadElementData, and verbosityLevel.

Referenced by GetOscillatorManager().

+ Here is the caller graph for this function:

G4PenelopeOscillatorManager::~G4PenelopeOscillatorManager ( )
protected

Definition at line 78 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 78 of file G4PenelopeOscillatorManager.cc

References Clear(), and instance.

+ Here is the call graph for this function:

G4PenelopeOscillatorManager::G4PenelopeOscillatorManager ( const G4PenelopeOscillatorManager )
private

Member Function Documentation

void G4PenelopeOscillatorManager::BuildOscillatorTable ( const G4Material material)
private
void G4PenelopeOscillatorManager::CheckForTablesCreated ( )
private

Definition at line 221 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 221 of file G4PenelopeOscillatorManager.cc

References atomicMass, atomicNumber, atomsPerMolecule, atomTablePerMolecule, excitationEnergy, FatalException, fReadElementData, G4Exception(), oscillatorStoreCompton, oscillatorStoreIonisation, plasmaSquared, and ReadElementData().

Referenced by GetAtomsPerMolecule(), GetMeanExcitationEnergy(), GetNumberOfZAtomsPerMolecule(), GetOscillatorTableCompton(), GetOscillatorTableIonisation(), GetPlasmaEnergySquared(), GetTotalA(), and GetTotalZ().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PenelopeOscillatorManager::Clear ( )

Definition at line 99 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 99 of file G4PenelopeOscillatorManager.cc

References atomicMass, atomicNumber, atomsPerMolecule, atomTablePerMolecule, excitationEnergy, G4cout, G4endl, k, oscillatorStoreCompton, oscillatorStoreIonisation, plasmaSquared, and verbosityLevel.

Referenced by ~G4PenelopeOscillatorManager().

+ Here is the caller graph for this function:

void G4PenelopeOscillatorManager::Dump ( const G4Material material)

Definition at line 146 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 146 of file G4PenelopeOscillatorManager.cc

References eV, G4cout, G4endl, G4Material::GetName(), GetOscillatorTableCompton(), GetOscillatorTableIonisation(), and k.

Referenced by BuildOscillatorTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeOscillatorManager::GetAtomsPerMolecule ( const G4Material mat)

Returns the total number of atoms per molecule.

Definition at line 1203 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 1203 of file G4PenelopeOscillatorManager.cc

References atomsPerMolecule, BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, and G4Material::GetName().

Referenced by G4PenelopeBremsstrahlungModel::ComputeDEDXPerVolume(), G4PenelopeIonisationModel::ComputeDEDXPerVolume(), G4PenelopeComptonModel::CrossSectionPerVolume(), G4PenelopeBremsstrahlungModel::CrossSectionPerVolume(), and G4PenelopeIonisationModel::CrossSectionPerVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeOscillatorManager::GetMeanExcitationEnergy ( const G4Material mat)

Returns the mean excitation energy.

Definition at line 1154 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 1154 of file G4PenelopeOscillatorManager.cc

References BuildOscillatorTable(), CheckForTablesCreated(), excitationEnergy, G4cout, G4endl, and G4Material::GetName().

+ Here is the call graph for this function:

G4double G4PenelopeOscillatorManager::GetNumberOfZAtomsPerMolecule ( const G4Material mat,
G4int  Z 
)

Definition at line 1229 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 1229 of file G4PenelopeOscillatorManager.cc

References atomTablePerMolecule, BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, and G4Material::GetName().

Referenced by G4PenelopeIonisationCrossSection::CrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PenelopeOscillator * G4PenelopeOscillatorManager::GetOscillatorCompton ( const G4Material material,
G4int  index 
)

Definition at line 391 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 391 of file G4PenelopeOscillatorManager.cc

References G4cout, G4endl, G4Material::GetName(), and GetOscillatorTableCompton().

+ Here is the call graph for this function:

G4PenelopeOscillator * G4PenelopeOscillatorManager::GetOscillatorIonisation ( const G4Material material,
G4int  index 
)

Definition at line 344 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 344 of file G4PenelopeOscillatorManager.cc

References G4cout, G4endl, G4Material::GetName(), and GetOscillatorTableIonisation().

Referenced by G4PenelopeIonisationCrossSection::CrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PenelopeOscillatorManager * G4PenelopeOscillatorManager::GetOscillatorManager ( )
static

Definition at line 90 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 90 of file G4PenelopeOscillatorManager.cc

References G4PenelopeOscillatorManager(), and instance.

Referenced by G4PenelopeBremsstrahlungModel::G4PenelopeBremsstrahlungModel(), G4PenelopeComptonModel::G4PenelopeComptonModel(), G4PenelopeIonisationCrossSection::G4PenelopeIonisationCrossSection(), G4PenelopeIonisationModel::G4PenelopeIonisationModel(), and G4PenelopeIonisationXSHandler::G4PenelopeIonisationXSHandler().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PenelopeOscillatorTable * G4PenelopeOscillatorManager::GetOscillatorTableCompton ( const G4Material mat)

Definition at line 363 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 363 of file G4PenelopeOscillatorManager.cc

References BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, G4Material::GetName(), and oscillatorStoreCompton.

Referenced by G4PenelopeComptonModel::CrossSectionPerVolume(), Dump(), GetOscillatorCompton(), G4PenelopeComptonModel::KleinNishinaCrossSection(), and G4PenelopeComptonModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PenelopeOscillatorTable * G4PenelopeOscillatorManager::GetOscillatorTableIonisation ( const G4Material mat)

Definition at line 316 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 316 of file G4PenelopeOscillatorManager.cc

References BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, G4Material::GetName(), and oscillatorStoreIonisation.

Referenced by G4PenelopeIonisationXSHandler::BuildDeltaTable(), G4PenelopeIonisationXSHandler::BuildXSTable(), Dump(), G4PenelopeIonisationCrossSection::FindShellIDIndex(), GetOscillatorIonisation(), G4PenelopeIonisationModel::SampleFinalStateElectron(), G4PenelopeIonisationModel::SampleFinalStatePositron(), and G4PenelopeIonisationModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeOscillatorManager::GetPlasmaEnergySquared ( const G4Material mat)

Returns the squared plasma energy.

Definition at line 1178 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 1178 of file G4PenelopeOscillatorManager.cc

References BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, G4Material::GetName(), and plasmaSquared.

Referenced by G4PenelopeIonisationXSHandler::BuildDeltaTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeOscillatorManager::GetTotalA ( const G4Material mat)

Returns the total A for the molecule.

Definition at line 291 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 291 of file G4PenelopeOscillatorManager.cc

References atomicMass, BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, and G4Material::GetName().

+ Here is the call graph for this function:

G4double G4PenelopeOscillatorManager::GetTotalZ ( const G4Material mat)

These are cumulative for the molecule Returns the total Z for the molecule

Definition at line 266 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 266 of file G4PenelopeOscillatorManager.cc

References atomicNumber, BuildOscillatorTable(), CheckForTablesCreated(), G4cout, G4endl, and G4Material::GetName().

Referenced by G4PenelopeIonisationXSHandler::BuildDeltaTable(), and G4PenelopeComptonModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4PenelopeOscillatorManager::GetVerbosityLevel ( )
inline

Definition at line 89 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 89 of file G4PenelopeOscillatorManager.hh

References verbosityLevel.

G4PenelopeOscillatorManager& G4PenelopeOscillatorManager::operator= ( const G4PenelopeOscillatorManager right)
private
void G4PenelopeOscillatorManager::ReadElementData ( )
private

Definition at line 1067 of file G4PenelopeOscillatorManager.cc.

View newest version in sPHENIX GitHub at line 1067 of file G4PenelopeOscillatorManager.cc

References G4InuclSpecialFunctions::bindingEnergy(), G4AtomicShell::BindingEnergy(), elementData, eV, FatalException, file, fReadElementData, G4cout, G4endl, G4Exception(), G4AtomicTransitionManager::Initialise(), G4AtomicTransitionManager::Instance(), G4AtomicTransitionManager::NumberOfShells(), G4AtomicTransitionManager::Shell(), verbosityLevel, and Z.

Referenced by CheckForTablesCreated().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PenelopeOscillatorManager::SetVerbosityLevel ( G4int  vl)
inline

Definition at line 88 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 88 of file G4PenelopeOscillatorManager.hh

References verbosityLevel.

Member Data Documentation

std::map<const G4Material*,G4double>* G4PenelopeOscillatorManager::atomicMass
private

Definition at line 127 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 127 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetTotalA().

std::map<const G4Material*,G4double>* G4PenelopeOscillatorManager::atomicNumber
private

Definition at line 126 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 126 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetTotalZ().

std::map<const G4Material*,G4double>* G4PenelopeOscillatorManager::atomsPerMolecule
private

Definition at line 132 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 132 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetAtomsPerMolecule().

std::map< std::pair<const G4Material*,G4int>, G4double>* G4PenelopeOscillatorManager::atomTablePerMolecule
private

Definition at line 134 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 134 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetNumberOfZAtomsPerMolecule().

G4double G4PenelopeOscillatorManager::elementData[5][2000]
private

Definition at line 140 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 140 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), G4PenelopeOscillatorManager(), and ReadElementData().

std::map<const G4Material*,G4double>* G4PenelopeOscillatorManager::excitationEnergy
private

Definition at line 129 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 129 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetMeanExcitationEnergy().

G4bool G4PenelopeOscillatorManager::fReadElementData
private

Definition at line 141 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 141 of file G4PenelopeOscillatorManager.hh

Referenced by CheckForTablesCreated(), G4PenelopeOscillatorManager(), and ReadElementData().

G4ThreadLocal G4PenelopeOscillatorManager * G4PenelopeOscillatorManager::instance = 0
staticprivate

Definition at line 116 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 116 of file G4PenelopeOscillatorManager.hh

Referenced by GetOscillatorManager(), and ~G4PenelopeOscillatorManager().

std::map<const G4Material*,G4PenelopeOscillatorTable*>* G4PenelopeOscillatorManager::oscillatorStoreCompton
private

Definition at line 124 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 124 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetOscillatorTableCompton().

std::map<const G4Material*,G4PenelopeOscillatorTable*>* G4PenelopeOscillatorManager::oscillatorStoreIonisation
private

Definition at line 121 of file G4PenelopeOscillatorManager.hh.

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

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetOscillatorTableIonisation().

std::map<const G4Material*,G4double>* G4PenelopeOscillatorManager::plasmaSquared
private

Definition at line 130 of file G4PenelopeOscillatorManager.hh.

View newest version in sPHENIX GitHub at line 130 of file G4PenelopeOscillatorManager.hh

Referenced by BuildOscillatorTable(), CheckForTablesCreated(), Clear(), and GetPlasmaEnergySquared().

G4int G4PenelopeOscillatorManager::verbosityLevel
private

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