Mantid
|
#include <AttenuationProfile.h>
Public Member Functions | |
AttenuationProfile () | |
AttenuationProfile (const std::string &inputFileName, const std::string &searchPath, Material *extrapolationMaterial=nullptr, double extrapolationMaxX=100) | |
Construct an attenuation profile object. More... | |
double | getAttenuationCoefficient (const double x) const |
Returns the attenuation coefficient for the supplied x value. More... | |
void | setAttenuationCoefficient (const double x, const double atten) |
Set the attenuation coefficient at x value. More... | |
Private Attributes | |
Kernel::Interpolation | m_Interpolator |
Definition at line 18 of file AttenuationProfile.h.
|
inline |
Definition at line 20 of file AttenuationProfile.h.
Mantid::Kernel::AttenuationProfile::AttenuationProfile | ( | const std::string & | inputFileName, |
const std::string & | searchPath, | ||
Material * | extrapolationMaterial = nullptr , |
||
double | extrapolationMaxX = 100 |
||
) |
Construct an attenuation profile object.
inputFileName | :: The name of the file containing the attenuation profile data. Filename can be a full path or just file name |
searchPath | :: Path to search for the input file |
extrapolationMaxX | :: X value at which a point will be inserted from the tabulated attenuation data to assist with extrapolation |
extrapolationMaterial | :: Material whose properties will be used to extrapolate beyond the lambda range of the supplied profile |
Definition at line 27 of file AttenuationProfile.cpp.
References Mantid::Kernel::Interpolation::addPoint(), Mantid::Kernel::Material::attenuationCoefficient(), Mantid::Kernel::Interpolation::containData(), error, Mantid::DataHandling::exists(), Mantid::Kernel::SingletonHolder< T >::Instance(), m_Interpolator, and Mantid::Geometry::x.
double Mantid::Kernel::AttenuationProfile::getAttenuationCoefficient | ( | const double | x | ) | const |
Returns the attenuation coefficient for the supplied x value.
x | The x value (typically wavelength) that the attenuation coefficient is required for (Angstroms) |
Definition at line 95 of file AttenuationProfile.cpp.
References m_Interpolator, Mantid::Kernel::Interpolation::value(), and Mantid::Geometry::x.
void Mantid::Kernel::AttenuationProfile::setAttenuationCoefficient | ( | const double | x, |
const double | atten | ||
) |
Set the attenuation coefficient at x value.
x | The x value (typically wavelength) that the attenuation coefficient is required for (Angstroms) |
atten | attenuation coefficient at x value |
Definition at line 102 of file AttenuationProfile.cpp.
References Mantid::Kernel::Interpolation::addPoint(), m_Interpolator, and Mantid::Geometry::x.
|
private |
Definition at line 28 of file AttenuationProfile.h.
Referenced by AttenuationProfile(), getAttenuationCoefficient(), and setAttenuationCoefficient().