27#ifndef G4NistElementBuilder_h
28#define G4NistElementBuilder_h 1
81 G4bool buildIsotopes =
true);
155#ifdef G4MULTITHREADED
156 static G4Mutex nistElementMutex;
259 (*theElementTable)[
elmIndex[
Z]] :
nullptr;
std::vector< G4Element * > G4ElementTable
const G4int maxNumElements
static G4ElementTable * GetElementTable()
G4int elmIndex[maxNumElements]
G4double atomicMass[maxNumElements]
G4double GetAtomicMass(G4int Z, G4int N) const
G4Element * BuildElement(G4int Z)
G4double GetAtomicMassAmu(const G4String &symb) const
G4double sigMass[maxAbundance]
G4NistElementBuilder(G4int vb)
G4double GetIsotopeMass(G4int Z, G4int N) const
G4Element * FindOrBuildElement(G4int Z, G4bool buildIsotopes=true)
G4int GetNumberOfNistIsotopes(G4int Z) const
G4double relAbundance[maxAbundance]
G4String elmSymbol[maxNumElements]
G4int GetZ(const G4String &symb) const
G4Element * FindElement(G4int Z) const
std::vector< G4String > elmNames
G4int idxIsotopes[maxNumElements]
G4double GetIsotopeAbundance(G4int Z, G4int N) const
G4int nIsotopes[maxNumElements]
void AddElement(const G4String &symbol, G4int Z, G4int NumberOfIsotopes, const G4int &N, const G4double &A, const G4double &sigmaA, const G4double &W)
G4int GetNistFirstIsotopeN(G4int Z) const
const std::vector< G4String > & GetElementNames() const
G4double bindingEnergy[maxNumElements]
G4double massIsotopes[maxAbundance]
void PrintElement(G4int Z) const
G4int nFirstIsotope[maxNumElements]
G4int GetMaxNumElements() const
G4double GetTotalElectronBindingEnergy(G4int Z) const
static constexpr double electron_mass_c2