20#ifndef ROOT_GM_ELEMENT_H
21#define ROOT_GM_ELEMENT_H
35 const std::string& name,
const std::string& symbol,
double z,
double a);
37 Element(
const std::string& name,
const std::string& symbol,
41 Element(TGeoElement* geoElement);
48 virtual std::string
Name()
const;
49 virtual std::string
Symbol()
const;
51 virtual double Z()
const;
52 virtual double N()
const;
53 virtual double A()
const;
64 void CheckIndex(
int iel)
const;
66 TGeoElement* fElement;
VGM implementation for Root element using TGeoElement object.
virtual VGM::IIsotope * Isotope(int i) const
Return the i-th isotope constituing this element.
virtual int NofIsotopes() const
Return the number of isotopes constituing this element.
virtual double RelAbundance(int i) const
Return the relative abundance (the fraction of nb of atomes per volume) of the i-th isotope constitui...
virtual std::string Symbol() const
Return the symbol of this element.
virtual double N() const
Return the effective number of nucleons.
virtual double A() const
Return the effective effective mass of a mole in g/mole.
virtual std::string Name() const
Return the name of this element.
Element & operator=(const Element &rhs)
virtual double Z() const
Return the effective atomic number.
The VGM interface to elements.
The VGM interface to elements.
VGM implementation for Root.
std::vector< double > RelAbundanceVector
std::vector< IIsotope * > IsotopeVector