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

#include <geant4/tree/geant4-10.6-release/source/materials/include/G4NistElementBuilder.hh>

+ Collaboration diagram for G4NistElementBuilder:

Public Member Functions

 G4NistElementBuilder (G4int vb)
 
 ~G4NistElementBuilder ()
 
G4ElementFindElement (G4int Z) const
 
G4ElementFindOrBuildElement (G4int Z, G4bool buildIsotopes=true)
 
G4ElementFindOrBuildElement (const G4String &symb, G4bool buildIsotopes=true)
 
void PrintElement (G4int Z) const
 
const std::vector< G4String > & GetElementNames () const
 
G4int GetZ (const G4String &symb) const
 
G4double GetAtomicMassAmu (const G4String &symb) const
 
G4double GetAtomicMassAmu (G4int Z) const
 
G4double GetIsotopeMass (G4int Z, G4int N) const
 
G4double GetAtomicMass (G4int Z, G4int N) const
 
G4double GetTotalElectronBindingEnergy (G4int Z) const
 
G4double GetIsotopeAbundance (G4int Z, G4int N) const
 
G4int GetNistFirstIsotopeN (G4int Z) const
 
G4int GetNumberOfNistIsotopes (G4int Z) const
 
G4int GetMaxNumElements () const
 
void SetVerbose (G4int)
 

Private Member Functions

void Initialise ()
 
void AddElement (const G4String &symbol, G4int Z, G4int NumberOfIsotopes, const G4int &N, const G4double &A, const G4double &sigmaA, const G4double &W)
 
G4ElementBuildElement (G4int Z)
 

Private Attributes

G4String elmSymbol [maxNumElements]
 
G4double atomicMass [maxNumElements]
 
G4double bindingEnergy [maxNumElements]
 
G4int nIsotopes [maxNumElements]
 
G4int nFirstIsotope [maxNumElements]
 
G4int idxIsotopes [maxNumElements]
 
G4int elmIndex [maxNumElements]
 
G4double massIsotopes [maxAbundance]
 
G4double sigMass [maxAbundance]
 
G4double relAbundance [maxAbundance]
 
G4int index
 
G4int verbose
 
std::vector< G4StringelmNames
 

Detailed Description

Definition at line 68 of file G4NistElementBuilder.hh.

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

Constructor & Destructor Documentation

G4NistElementBuilder::G4NistElementBuilder ( G4int  vb)
explicit

Definition at line 68 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 68 of file G4NistElementBuilder.cc

References elmIndex, Initialise(), maxNumElements, nFirstIsotope, nIsotopes, and relAbundance.

+ Here is the call graph for this function:

G4NistElementBuilder::~G4NistElementBuilder ( )

Definition at line 80 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 80 of file G4NistElementBuilder.cc

Member Function Documentation

void G4NistElementBuilder::AddElement ( const G4String symbol,
G4int  Z,
G4int  NumberOfIsotopes,
const G4int N,
const G4double A,
const G4double sigmaA,
const G4double W 
)
private

Definition at line 237 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 237 of file G4NistElementBuilder.cc

References A(), source.hepunit::amu_c2, atomicMass, bindingEnergy, source.hepunit::electron_mass_c2, elmSymbol, G4cout, G4endl, incremental_prev_tag::idx, idxIsotopes, index, massIsotopes, maxAbundance, maxNumElements, N, nFirstIsotope, nIsotopes, PrintElement(), relAbundance, sigMass, verbose, and Z.

Referenced by Initialise().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * G4NistElementBuilder::BuildElement ( G4int  Z)
private

Definition at line 156 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 156 of file G4NistElementBuilder.cc

References G4Element::AddIsotope(), source.hepunit::amu_c2, atomicMass, elmSymbol, Acts::UnitConstants::g, G4cout, G4endl, GetAtomicMass(), incremental_prev_tag::idx, idxIsotopes, maxNumElements, mole, nFirstIsotope, nIsotopes, relAbundance, G4Element::SetNaturalAbundanceFlag(), verbose, w, and Z.

Referenced by FindOrBuildElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * G4NistElementBuilder::FindElement ( G4int  Z) const
inline

Definition at line 255 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 255 of file G4NistElementBuilder.hh

References elmIndex, G4Element::GetElementTable(), maxNumElements, and Z.

Referenced by G4NistManager::FindElement(), and FindOrBuildElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * G4NistElementBuilder::FindOrBuildElement ( G4int  Z,
G4bool  buildIsotopes = true 
)

Definition at line 105 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 105 of file G4NistElementBuilder.cc

References BuildElement(), elmIndex, FindElement(), G4MUTEXLOCK, G4MUTEXUNLOCK, G4Element::GetIndex(), maxNumElements, and Z.

Referenced by G4NistMaterialBuilder::BuildMaterial(), and G4NistManager::FindOrBuildElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Element * G4NistElementBuilder::FindOrBuildElement ( const G4String symb,
G4bool  buildIsotopes = true 
)

Definition at line 125 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 125 of file G4NistElementBuilder.cc

References BuildElement(), elmIndex, elmSymbol, G4MUTEXLOCK, G4MUTEXUNLOCK, G4Element::GetElementTable(), G4Element::GetIndex(), maxNumElements, and Z.

+ Here is the call graph for this function:

G4double G4NistElementBuilder::GetAtomicMass ( G4int  Z,
G4int  N 
) const
inline

Definition at line 182 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 182 of file G4NistElementBuilder.hh

References bindingEnergy, CLHEP::electron_mass_c2, idxIsotopes, mass, massIsotopes, maxNumElements, nFirstIsotope, nIsotopes, and Z.

Referenced by BuildElement(), G4NistManager::GetAtomicMass(), and PrintElement().

+ Here is the caller graph for this function:

G4double G4NistElementBuilder::GetAtomicMassAmu ( const G4String symb) const

Definition at line 95 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 95 of file G4NistElementBuilder.cc

References elmSymbol, maxNumElements, and Z.

Referenced by G4NistMaterialBuilder::ConstructNewIdealGasMaterial(), G4NistManager::G4NistManager(), and G4NistManager::GetAtomicMassAmu().

+ Here is the caller graph for this function:

G4double G4NistElementBuilder::GetAtomicMassAmu ( G4int  Z) const
inline

Definition at line 163 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 163 of file G4NistElementBuilder.hh

References atomicMass, maxNumElements, and Z.

const std::vector< G4String > & G4NistElementBuilder::GetElementNames ( ) const
inline

Definition at line 234 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 234 of file G4NistElementBuilder.hh

References elmNames.

Referenced by G4NistManager::GetNistElementNames().

+ Here is the caller graph for this function:

G4double G4NistElementBuilder::GetIsotopeAbundance ( G4int  Z,
G4int  N 
) const
inline

Definition at line 207 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 207 of file G4NistElementBuilder.hh

References idxIsotopes, maxNumElements, nFirstIsotope, nIsotopes, relAbundance, x, and Z.

Referenced by G4LENDModel::create_used_target_map(), G4LENDCrossSection::create_used_target_map(), and G4NistManager::GetIsotopeAbundance().

+ Here is the caller graph for this function:

G4double G4NistElementBuilder::GetIsotopeMass ( G4int  Z,
G4int  N 
) const
inline

Definition at line 170 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 170 of file G4NistElementBuilder.hh

References idxIsotopes, mass, massIsotopes, maxNumElements, nFirstIsotope, nIsotopes, and Z.

Referenced by G4NistManager::GetIsotopeMass().

+ Here is the caller graph for this function:

G4int G4NistElementBuilder::GetMaxNumElements ( ) const
inline

Definition at line 241 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 241 of file G4NistElementBuilder.hh

References maxNumElements.

G4int G4NistElementBuilder::GetNistFirstIsotopeN ( G4int  Z) const
inline

Definition at line 219 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 219 of file G4NistElementBuilder.hh

References maxNumElements, nFirstIsotope, and Z.

Referenced by G4LENDModel::create_used_target_map(), G4LENDCrossSection::create_used_target_map(), and G4NistManager::GetNistFirstIsotopeN().

+ Here is the caller graph for this function:

G4int G4NistElementBuilder::GetNumberOfNistIsotopes ( G4int  Z) const
inline

Definition at line 226 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 226 of file G4NistElementBuilder.hh

References maxNumElements, nIsotopes, and Z.

Referenced by G4LENDModel::create_used_target_map(), G4LENDCrossSection::create_used_target_map(), and G4NistManager::GetNumberOfNistIsotopes().

+ Here is the caller graph for this function:

G4double G4NistElementBuilder::GetTotalElectronBindingEnergy ( G4int  Z) const
inline

Definition at line 198 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 198 of file G4NistElementBuilder.hh

References bindingEnergy, maxNumElements, and Z.

Referenced by G4NistManager::GetTotalElectronBindingEnergy().

+ Here is the caller graph for this function:

G4int G4NistElementBuilder::GetZ ( const G4String symb) const

Definition at line 85 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 85 of file G4NistElementBuilder.cc

References elmSymbol, maxNumElements, and Z.

Referenced by G4NistMaterialBuilder::AddElementByAtomCount(), G4NistMaterialBuilder::AddElementByWeightFraction(), G4NistMaterialBuilder::ConstructNewIdealGasMaterial(), G4NistMaterialBuilder::ConstructNewMaterial(), G4NistManager::GetZ(), and G4NistManager::PrintElement().

+ Here is the caller graph for this function:

void G4NistElementBuilder::Initialise ( )
private

Definition at line 297 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 297 of file G4NistElementBuilder.cc

References AddElement(), source.hepunit::amu_c2, bindingEnergy, source.hepunit::electron_mass_c2, elmNames, elmSymbol, eV, G4cout, G4endl, GeV, HA, index, maxNumElements, NS, ON, source.hepunit::proton_mass_c2, verbose, and Z.

Referenced by G4NistElementBuilder().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4NistElementBuilder::PrintElement ( G4int  Z) const

Definition at line 203 of file G4NistElementBuilder.cc.

View newest version in sPHENIX GitHub at line 203 of file G4NistElementBuilder.cc

References atomicMass, elmSymbol, G4cout, G4endl, GetAtomicMass(), incremental_prev_tag::idx, idxIsotopes, imax, maxNumElements, nFirstIsotope, nIsotopes, relAbundance, and Z.

Referenced by AddElement(), and G4NistManager::PrintElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4NistElementBuilder::SetVerbose ( G4int  val)
inline

Definition at line 248 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 248 of file G4NistElementBuilder.hh

References verbose.

Referenced by G4NistMaterialBuilder::SetVerbose(), and G4NistManager::SetVerbose().

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4NistElementBuilder::atomicMass[maxNumElements]
private

Definition at line 139 of file G4NistElementBuilder.hh.

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

Referenced by AddElement(), BuildElement(), GetAtomicMassAmu(), and PrintElement().

G4double G4NistElementBuilder::bindingEnergy[maxNumElements]
private

Definition at line 140 of file G4NistElementBuilder.hh.

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

Referenced by AddElement(), GetAtomicMass(), GetTotalElectronBindingEnergy(), and Initialise().

G4int G4NistElementBuilder::elmIndex[maxNumElements]
private

Definition at line 145 of file G4NistElementBuilder.hh.

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

Referenced by FindElement(), FindOrBuildElement(), and G4NistElementBuilder().

std::vector<G4String> G4NistElementBuilder::elmNames
private

Definition at line 154 of file G4NistElementBuilder.hh.

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

Referenced by GetElementNames(), and Initialise().

G4String G4NistElementBuilder::elmSymbol[maxNumElements]
private

Definition at line 138 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 138 of file G4NistElementBuilder.hh

Referenced by AddElement(), BuildElement(), FindOrBuildElement(), GetAtomicMassAmu(), GetZ(), Initialise(), and PrintElement().

G4int G4NistElementBuilder::idxIsotopes[maxNumElements]
private

Definition at line 143 of file G4NistElementBuilder.hh.

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

Referenced by AddElement(), BuildElement(), GetAtomicMass(), GetIsotopeAbundance(), GetIsotopeMass(), and PrintElement().

G4int G4NistElementBuilder::index
private

Definition at line 151 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 151 of file G4NistElementBuilder.hh

Referenced by AddElement(), and Initialise().

G4double G4NistElementBuilder::massIsotopes[maxAbundance]
private

Definition at line 147 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 147 of file G4NistElementBuilder.hh

Referenced by AddElement(), GetAtomicMass(), and GetIsotopeMass().

G4int G4NistElementBuilder::nFirstIsotope[maxNumElements]
private
G4int G4NistElementBuilder::nIsotopes[maxNumElements]
private
G4double G4NistElementBuilder::relAbundance[maxAbundance]
private

Definition at line 149 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 149 of file G4NistElementBuilder.hh

Referenced by AddElement(), BuildElement(), G4NistElementBuilder(), GetIsotopeAbundance(), and PrintElement().

G4double G4NistElementBuilder::sigMass[maxAbundance]
private

Definition at line 148 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 148 of file G4NistElementBuilder.hh

Referenced by AddElement().

G4int G4NistElementBuilder::verbose
private

Definition at line 152 of file G4NistElementBuilder.hh.

View newest version in sPHENIX GitHub at line 152 of file G4NistElementBuilder.hh

Referenced by AddElement(), BuildElement(), Initialise(), and SetVerbose().


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