35 #ifndef __AtomicElement_h 36 #define __AtomicElement_h 72 #ifndef __gVirtualXRayConfig_h 111 std::ostream&
operator<<(std::ostream& anOutputSream,
123 std::istream&
operator>>(std::istream& anInputSream,
151 const std::string& aSymbol =
"",
152 unsigned short aZNumber = 0,
153 double aMolarMass = 0,
155 const std::string& aState =
"");
179 void setName(
const std::string& aName);
188 void setSymbol(
const std::string& aSymbol);
224 void setState(
const std::string& aState);
246 double getMU(
double anEnergy);
255 const std::string&
getName()
const;
282 unsigned short getZ()
const;
291 unsigned short Z()
const;
318 const std::string&
getState()
const;
387 #endif // __AtomicElement_h void setDensity(double aDensity)
Set the density of the element.
double getDensity() const
Accessor on the density of the element.
std::vector< double > m_p_mass_attenuation_coefficient_set
The mass attenuation coefficient set corresponding to the energy set.
double m_density
The density of the element.
void setName(const std::string &aName)
Set the name of the element.
void printSummary() const
unsigned short m_atomic_number
The atomic number of the element.
Class to manage elements in material.
std::vector< double > m_p_energy_set
The energy set.
double getMU(double anEnergy)
void setAtomicNumber(unsigned short aZNumber)
Set the atomic number (Z) of the element.
unsigned short getAtomicNumber() const
Accessor on the atomic number (Z) of the element.
double getEnergyChannel(unsigned int i) const
std::string m_name
The name of the element.
unsigned short Z() const
Accessor on the atomic number (Z) of the element.
void setSymbol(const std::string &aSymbol)
Set the symbol of the element.
void setMolarMass(double aMolarMass)
Set the molar mass of the element.
std::string m_symbol
The symbol of the element.
std::istream & operator>>(std::istream &anInputSream, gVirtualXRay::AtomicElement &anElement)
operator >>
double getMolarMass() const
Accessor on the molar mass of the element.
double getMassAttenuationCoefficientChannel(unsigned int i) const
std::string m_state
The state of the element.
const std::string & getName() const
Accessor on the name of the element.
double getSmallestEnergyStep() const
AtomicElement is a class to manage elements in material.
unsigned int getEnergyChannelNumber() const
double getMassAttenuationTotal(double anEnergy)
AtomicElement(const std::string &aName="", const std::string &aSymbol="", unsigned short aZNumber=0, double aMolarMass=0, double aDensity=0, const std::string &aState="")
Default Constructor.
void setState(const std::string &aState)
Set the state of the element.
std::ostream & operator<<(std::ostream &anOutputSream, const gVirtualXRay::AtomicElement &anElement)
operator <<
double m_molar_mass
The molar mass of the element.
const std::string & getSymbol() const
Accessor on the symbol of the element.
const std::string & getState() const
Accessor on the state of the element.
AtomicElement & operator=(const AtomicElement &anElement)
Copy operator.
~AtomicElement()
Destructor.
unsigned short getZ() const
Accessor on the atomic number (Z) of the element.