fisx
fisx::Detector Class Reference

Class describing the detector. More...

#include <fisx_detector.h>

Inherits fisx::Layer.

Public Member Functions

 Detector (const std::string &name="", const double &density=0.0, const double &thickness=0.0, const double &funnyFactor=1.0)
 
void setMaterial (const std::string &materialName)
 
void setMaterial (const Material &material)
 
void setActiveArea (const double &area)
 
void setDiameter (const double &diameter)
 
double getActiveArea () const
 
const double & getDiameter () const
 
void setDistance (const double &distance)
 
const double & getDistance () const
 
void clearEscapePeakCache ()
 
const double getEscapePeakEnergyThreshold () const
 
const double getEscapePeakIntensityThreshold () const
 
const int getEscapePeakNThreshold () const
 
const double getEscapePeakAlphaIn () const
 
std::map< std::string, std::map< std::string, double > > getEscape (const double &energy, const Elements &elementsLibrary, const std::string &label="", const int &update=1)
 
void setMinimumEscapePeakEnergy (const double &energy)
 
void setMinimumEscapePeakIntensity (const double &intensity)
 
void setMaximumNumberOfEscapePeaks (const int &nPeaks)
 
- Public Member Functions inherited from fisx::Layer
 Layer (const std::string &name="", const double &density=0.0, const double &thickness=0.0, const double &funnyFactor=1.0)
 
void setMaterial (const std::string &materialName)
 
void setMaterial (const Material &material)
 
std::map< std::string, double > getComposition (const Elements &elements) const
 
const MaterialgetMaterial () const
 
double getTransmission (const double &energy, const Elements &elements, const double &angle=90.0) const
 
std::map< std::string, double > getMassAttenuationCoefficients (const double &energy, const Elements &elements) const
 
std::map< std::string, std::vector< double > > getMassAttenuationCoefficients (const std::vector< double > &energies, const Elements &elements) const
 
std::vector< double > getTransmission (const std::vector< double > &energy, const Elements &elements, const double &angle=90.0) const
 
bool hasMaterialComposition () const
 
std::vector< std::pair< std::string, double > > getPeakFamilies (const double &energy, const Elements &elements) const
 
const std::string & getMaterialName () const
 
void setDensity (const double &density)
 
void setThickness (const double &thickness)
 
const double & getDensity () const
 
const double & getThickness () const
 
const double & getFunnyFactor () const
 
std::map< std::string, double > getComposition (const Elements &elements)
 

Additional Inherited Members

- Public Attributes inherited from fisx::Layer
std::string name
 

Detailed Description

Class describing the detector.

Constructor & Destructor Documentation

§ Detector()

fisx::Detector::Detector ( const std::string &  name = "",
const double &  density = 0.0,
const double &  thickness = 0.0,
const double &  funnyFactor = 1.0 
)

layer like initialization. The detector is assumed to be cylindrical and the diameter is calculated.

Member Function Documentation

§ clearEscapePeakCache()

void fisx::Detector::clearEscapePeakCache ( )

Make sure the internal escape peak cache is empty

§ getActiveArea()

double fisx::Detector::getActiveArea ( ) const

Returns the active area in cm2

§ getDiameter()

const double & fisx::Detector::getDiameter ( ) const

Returns the diameter in cm2

§ getDistance()

const double & fisx::Detector::getDistance ( ) const

Returns the distance to reference layer in cm2

§ getEscape()

std::map< std::string, std::map< std::string, double > > fisx::Detector::getEscape ( const double &  energy,
const Elements elementsLibrary,
const std::string &  label = "",
const int &  update = 1 
)

Returns escape peak energy and rate per detected photon of given energy.

The optional arguments label and update serve for caching purposes. To make use of the cache, the label must not be empty (it should be used to identify the elementsLibrary) and update must be set to 0 because if it is set to 1 it will systematically empty the cascade cache.

§ getEscapePeakEnergyThreshold()

const double fisx::Detector::getEscapePeakEnergyThreshold ( ) const
inline

Getter to internal variable

§ setActiveArea()

void fisx::Detector::setActiveArea ( const double &  area)

Active area in cm2. The detector is assumed to be cylindrical and the diameter is calculated.

§ setDiameter()

void fisx::Detector::setDiameter ( const double &  diameter)

Diameter in cm2. For the time being the detector is assumed to be cylindrical.

§ setDistance()

void fisx::Detector::setDistance ( const double &  distance)

Sets the distance to reference layer in cm2


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