gVirtualXRay  2.0.10
VirtualX-RayImagingLibraryonGPU
Public Member Functions | Protected Attributes
gVirtualXRay::AtomicElement Class Reference

AtomicElement is a class to manage elements in material. More...

#include <AtomicElement.h>

Collaboration diagram for gVirtualXRay::AtomicElement:
Collaboration graph

Public Member Functions

 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. More...
 
 AtomicElement (const AtomicElement &anElement)
 Copy Constructor. More...
 
 ~AtomicElement ()
 Destructor. More...
 
void setName (const std::string &aName)
 Set the name of the element. More...
 
void setSymbol (const std::string &aSymbol)
 Set the symbol of the element. More...
 
void setAtomicNumber (unsigned short aZNumber)
 Set the atomic number (Z) of the element. More...
 
void setMolarMass (double aMolarMass)
 Set the molar mass of the element. More...
 
void setDensity (double aDensity)
 Set the density of the element. More...
 
void setState (const std::string &aState)
 Set the state of the element. More...
 
double getMassAttenuationTotal (double anEnergy)
 
double getMU (double anEnergy)
 
const std::string & getName () const
 Accessor on the name of the element. More...
 
const std::string & getSymbol () const
 Accessor on the symbol of the element. More...
 
unsigned short getAtomicNumber () const
 Accessor on the atomic number (Z) of the element. More...
 
unsigned short getZ () const
 Accessor on the atomic number (Z) of the element. More...
 
unsigned short Z () const
 Accessor on the atomic number (Z) of the element. More...
 
double getMolarMass () const
 Accessor on the molar mass of the element. More...
 
double getDensity () const
 Accessor on the density of the element. More...
 
const std::string & getState () const
 Accessor on the state of the element. More...
 
unsigned int getEnergyChannelNumber () const
 
double getSmallestEnergyStep () const
 
AtomicElementoperator= (const AtomicElement &anElement)
 Copy operator. More...
 
double getEnergyChannel (unsigned int i) const
 
double getMassAttenuationCoefficientChannel (unsigned int i) const
 
void printSummary () const
 

Protected Attributes

std::string m_name
 The name of the element. More...
 
std::string m_symbol
 The symbol of the element. More...
 
unsigned short m_atomic_number
 The atomic number of the element. More...
 
double m_molar_mass
 The molar mass of the element. More...
 
double m_density
 The density of the element. More...
 
std::string m_state
 The state of the element. More...
 
std::vector< double > m_p_energy_set
 The energy set. More...
 
std::vector< double > m_p_mass_attenuation_coefficient_set
 The mass attenuation coefficient set corresponding to the energy set. More...
 

Detailed Description

AtomicElement is a class to manage elements in material.

Definition at line 133 of file AtomicElement.h.

Constructor & Destructor Documentation

◆ AtomicElement() [1/2]

gVirtualXRay::AtomicElement::AtomicElement ( const std::string &  aName = "",
const std::string &  aSymbol = "",
unsigned short  aZNumber = 0,
double  aMolarMass = 0,
double  aDensity = 0,
const std::string &  aState = "" 
)
inline

Default Constructor.

Definition at line 84 of file AtomicElement.inl.

◆ AtomicElement() [2/2]

gVirtualXRay::AtomicElement::AtomicElement ( const AtomicElement anElement)
inline

Copy Constructor.

Definition at line 103 of file AtomicElement.inl.

◆ ~AtomicElement()

gVirtualXRay::AtomicElement::~AtomicElement ( )
inline

Destructor.

Definition at line 125 of file AtomicElement.inl.

Member Function Documentation

◆ getAtomicNumber()

unsigned short gVirtualXRay::AtomicElement::getAtomicNumber ( ) const
inline

Accessor on the atomic number (Z) of the element.

Definition at line 212 of file AtomicElement.inl.

◆ getDensity()

double gVirtualXRay::AtomicElement::getDensity ( ) const
inline

Accessor on the density of the element.

Definition at line 244 of file AtomicElement.inl.

◆ getEnergyChannel()

double gVirtualXRay::AtomicElement::getEnergyChannel ( unsigned int  i) const
inline

Definition at line 291 of file AtomicElement.inl.

◆ getEnergyChannelNumber()

unsigned int gVirtualXRay::AtomicElement::getEnergyChannelNumber ( ) const
inline

Accessor on the number of energy channels in the attenuation coefficient list.

Definition at line 260 of file AtomicElement.inl.

◆ getMassAttenuationCoefficientChannel()

double gVirtualXRay::AtomicElement::getMassAttenuationCoefficientChannel ( unsigned int  i) const
inline

Definition at line 302 of file AtomicElement.inl.

◆ getMassAttenuationTotal()

double gVirtualXRay::AtomicElement::getMassAttenuationTotal ( double  anEnergy)
inline

Get the mass attenuation coefficient at a given energy (values are interpolated).

Definition at line 188 of file AtomicElement.inl.

◆ getMolarMass()

double gVirtualXRay::AtomicElement::getMolarMass ( ) const
inline

Accessor on the molar mass of the element.

Definition at line 236 of file AtomicElement.inl.

◆ getMU()

double gVirtualXRay::AtomicElement::getMU ( double  anEnergy)
inline

Get the linear attenuation coefficient at a given energy (in mm-1) (values are interpolated).

Definition at line 180 of file AtomicElement.inl.

◆ getName()

const std::string & gVirtualXRay::AtomicElement::getName ( ) const
inline

Accessor on the name of the element.

Definition at line 196 of file AtomicElement.inl.

◆ getSmallestEnergyStep()

double gVirtualXRay::AtomicElement::getSmallestEnergyStep ( ) const

Accessor on the smallest energy step in the linear attenuation coefficient list.

◆ getState()

const std::string & gVirtualXRay::AtomicElement::getState ( ) const
inline

Accessor on the state of the element.

Definition at line 252 of file AtomicElement.inl.

◆ getSymbol()

const std::string & gVirtualXRay::AtomicElement::getSymbol ( ) const
inline

Accessor on the symbol of the element.

Definition at line 204 of file AtomicElement.inl.

◆ getZ()

unsigned short gVirtualXRay::AtomicElement::getZ ( ) const
inline

Accessor on the atomic number (Z) of the element.

Definition at line 220 of file AtomicElement.inl.

◆ operator=()

AtomicElement & gVirtualXRay::AtomicElement::operator= ( const AtomicElement anElement)
inline

Copy operator.

Definition at line 268 of file AtomicElement.inl.

◆ printSummary()

void gVirtualXRay::AtomicElement::printSummary ( ) const

◆ setAtomicNumber()

void gVirtualXRay::AtomicElement::setAtomicNumber ( unsigned short  aZNumber)
inline

Set the atomic number (Z) of the element.

Definition at line 148 of file AtomicElement.inl.

◆ setDensity()

void gVirtualXRay::AtomicElement::setDensity ( double  aDensity)
inline

Set the density of the element.

Definition at line 164 of file AtomicElement.inl.

◆ setMolarMass()

void gVirtualXRay::AtomicElement::setMolarMass ( double  aMolarMass)
inline

Set the molar mass of the element.

Definition at line 156 of file AtomicElement.inl.

◆ setName()

void gVirtualXRay::AtomicElement::setName ( const std::string &  aName)
inline

Set the name of the element.

Definition at line 132 of file AtomicElement.inl.

◆ setState()

void gVirtualXRay::AtomicElement::setState ( const std::string &  aState)
inline

Set the state of the element.

Definition at line 172 of file AtomicElement.inl.

◆ setSymbol()

void gVirtualXRay::AtomicElement::setSymbol ( const std::string &  aSymbol)
inline

Set the symbol of the element.

Definition at line 140 of file AtomicElement.inl.

◆ Z()

unsigned short gVirtualXRay::AtomicElement::Z ( ) const
inline

Accessor on the atomic number (Z) of the element.

Definition at line 228 of file AtomicElement.inl.

Field Documentation

◆ m_atomic_number

unsigned short gVirtualXRay::AtomicElement::m_atomic_number
protected

The atomic number of the element.

Definition at line 360 of file AtomicElement.h.

◆ m_density

double gVirtualXRay::AtomicElement::m_density
protected

The density of the element.

Definition at line 362 of file AtomicElement.h.

◆ m_molar_mass

double gVirtualXRay::AtomicElement::m_molar_mass
protected

The molar mass of the element.

Definition at line 361 of file AtomicElement.h.

◆ m_name

std::string gVirtualXRay::AtomicElement::m_name
protected

The name of the element.

Definition at line 358 of file AtomicElement.h.

◆ m_p_energy_set

std::vector<double> gVirtualXRay::AtomicElement::m_p_energy_set
protected

The energy set.

Definition at line 366 of file AtomicElement.h.

◆ m_p_mass_attenuation_coefficient_set

std::vector<double> gVirtualXRay::AtomicElement::m_p_mass_attenuation_coefficient_set
protected

The mass attenuation coefficient set corresponding to the energy set.

Definition at line 369 of file AtomicElement.h.

◆ m_state

std::string gVirtualXRay::AtomicElement::m_state
protected

The state of the element.

Definition at line 363 of file AtomicElement.h.

◆ m_symbol

std::string gVirtualXRay::AtomicElement::m_symbol
protected

The symbol of the element.

Definition at line 359 of file AtomicElement.h.


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