Mantid
|
Structure to store neutronic scattering information for the various elements. More...
#include <NeutronAtom.h>
Public Member Functions | |
NeutronAtom () | |
DO NOT USE THIS! This constructor generates a complete garbage NeutronAtom that is only available to allow for callers to declare variables then initialize them. More... | |
NeutronAtom (const NeutronAtom &other) | |
NeutronAtom (const uint16_t z, const double coh_b_real, const double inc_b_real, const double coh_xs, const double inc_xs, const double tot_xs, const double abs_xs) | |
Atom constructor. More... | |
NeutronAtom (const uint16_t z, const uint16_t a, const double coh_b_real, const double coh_b_img, const double inc_b_real, const double inc_b_img, const double coh_xs, const double inc_xs, const double tot_xs, const double abs_xs) | |
Atom constructor. More... | |
NeutronAtom (const uint16_t z, const uint16_t a, const double coh_b_real, const double inc_b_real, const double coh_xs, const double inc_xs, const double tot_xs, const double abs_xs) | |
Atom constructor. More... | |
NeutronAtom & | operator= (const NeutronAtom &other) |
Public Attributes | |
uint16_t | a_number |
The total number of protons and neutrons, or mass number, for the atom for isotopic averages this is set to zero. More... | |
double | abs_scatt_xs |
The absorption cross section for 2200m/s neutrons in barns. More... | |
double | coh_scatt_length |
The coherent scattering length in fm. More... | |
double | coh_scatt_length_img |
The imaginary part of the coherent scattering length in fm. More... | |
double | coh_scatt_length_real |
The real part of the coherent scattering length in fm. More... | |
double | coh_scatt_xs |
The coherent scattering cross section in barns. More... | |
double | inc_scatt_length |
The incoherent scattering length in fm. More... | |
double | inc_scatt_length_img |
The imaginary part of the incoherent scattering length in fm. More... | |
double | inc_scatt_length_real |
The real part of the incoherent scattering length in fm. More... | |
double | inc_scatt_xs |
The incoherent scattering cross section in barns. More... | |
double | tot_scatt_length |
The total scattering length in fm. More... | |
double | tot_scatt_xs |
The total scattering cross section in barns. More... | |
uint16_t | z_number |
The atomic number, or number of protons, for the atom. More... | |
Static Public Attributes | |
static const double | ReferenceLambda = 1.7982 |
The reference wavelength value for absorption cross sections. More... | |
Structure to store neutronic scattering information for the various elements.
This is taken from http://www.ncnr.nist.gov/resources/n-lengths/list.html.
Definition at line 22 of file NeutronAtom.h.
Mantid::PhysicalConstants::NeutronAtom::NeutronAtom | ( | const uint16_t | z, |
const double | coh_b_real, | ||
const double | inc_b_real, | ||
const double | coh_xs, | ||
const double | inc_xs, | ||
const double | tot_xs, | ||
const double | abs_xs | ||
) |
Atom constructor.
z | :: The atomic number of the atom |
coh_b_real | :: The real part of the coherent scattering length |
inc_b_real | :: The real part of the incoherent scattering length |
coh_xs | :: The coherent neutron cross-section |
inc_xs | :: The incoherent neutron cross-section |
tot_xs | :: The total neutron cross-section |
abs_xs | :: The absorption neutron cross-section |
Definition at line 52 of file NeutronAtom.cpp.
References Mantid::PhysicalConstants::calculateScatteringLengths().
Mantid::PhysicalConstants::NeutronAtom::NeutronAtom | ( | const uint16_t | z, |
const uint16_t | a, | ||
const double | coh_b_real, | ||
const double | inc_b_real, | ||
const double | coh_xs, | ||
const double | inc_xs, | ||
const double | tot_xs, | ||
const double | abs_xs | ||
) |
Atom constructor.
z | :: The atomic number of the atom |
a | :: The mass number of the atom |
coh_b_real | :: The real part of the coherent scattering length |
inc_b_real | :: The real part of the incoherent scattering length |
coh_xs | :: The coherent neutron cross-section |
inc_xs | :: The incoherent neutron cross-section |
tot_xs | :: The total neutron cross-section |
abs_xs | :: The absorption neutron cross-section |
Definition at line 70 of file NeutronAtom.cpp.
References Mantid::PhysicalConstants::calculateScatteringLengths().
Mantid::PhysicalConstants::NeutronAtom::NeutronAtom | ( | const uint16_t | z, |
const uint16_t | a, | ||
const double | coh_b_real, | ||
const double | coh_b_img, | ||
const double | inc_b_real, | ||
const double | inc_b_img, | ||
const double | coh_xs, | ||
const double | inc_xs, | ||
const double | tot_xs, | ||
const double | abs_xs | ||
) |
Atom constructor.
z | :: The atomic number of the atom |
a | :: The mass number of the atom |
coh_b_real | :: The real part of the coherent scattering length |
coh_b_img | :: The imaginary part of the coherent scattering length |
inc_b_real | :: The real part of the incoherent scattering length |
inc_b_img | :: The imaginary part of the incoherent scattering length |
coh_xs | :: The coherent neutron cross-section |
inc_xs | :: The incoherent neutron cross-section |
tot_xs | :: The total neutron cross-section |
abs_xs | :: The absorption neutron cross-section |
Definition at line 90 of file NeutronAtom.cpp.
References Mantid::PhysicalConstants::calculateScatteringLengths().
Mantid::PhysicalConstants::NeutronAtom::NeutronAtom | ( | const NeutronAtom & | other | ) |
Definition at line 99 of file NeutronAtom.cpp.
References Mantid::PhysicalConstants::calculateScatteringLengths().
Mantid::PhysicalConstants::NeutronAtom::NeutronAtom | ( | ) |
DO NOT USE THIS! This constructor generates a complete garbage NeutronAtom that is only available to allow for callers to declare variables then initialize them.
Definition at line 132 of file NeutronAtom.cpp.
NeutronAtom & Mantid::PhysicalConstants::NeutronAtom::operator= | ( | const NeutronAtom & | other | ) |
Definition at line 107 of file NeutronAtom.cpp.
References a_number, abs_scatt_xs, Mantid::PhysicalConstants::calculateScatteringLengths(), coh_scatt_length_img, coh_scatt_length_real, coh_scatt_xs, inc_scatt_length_img, inc_scatt_length_real, inc_scatt_xs, tot_scatt_xs, and z_number.
uint16_t Mantid::PhysicalConstants::NeutronAtom::a_number |
The total number of protons and neutrons, or mass number, for the atom for isotopic averages this is set to zero.
Definition at line 48 of file NeutronAtom.h.
Referenced by Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::PhysicalConstants::getNeutronAtom(), Mantid::PhysicalConstants::getNeutronNoExceptions(), Mantid::Kernel::Material::Material(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), and operator=().
double Mantid::PhysicalConstants::NeutronAtom::abs_scatt_xs |
The absorption cross section for 2200m/s neutrons in barns.
Definition at line 72 of file NeutronAtom.h.
Referenced by Mantid::DataHandling::SetSampleMaterial::fixNeutron(), Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), operator=(), and Mantid::Kernel::MaterialBuilder::overrideNeutronProperties().
double Mantid::PhysicalConstants::NeutronAtom::coh_scatt_length |
The coherent scattering length in fm.
Definition at line 78 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), and Mantid::PhysicalConstants::operator+().
double Mantid::PhysicalConstants::NeutronAtom::coh_scatt_length_img |
The imaginary part of the coherent scattering length in fm.
Definition at line 54 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), and operator=().
double Mantid::PhysicalConstants::NeutronAtom::coh_scatt_length_real |
The real part of the coherent scattering length in fm.
Definition at line 51 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Geometry::IsotropicAtomBraggScatterer::getScatteringLength(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), and operator=().
double Mantid::PhysicalConstants::NeutronAtom::coh_scatt_xs |
The coherent scattering cross section in barns.
Definition at line 63 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::WorkflowAlgorithms::DgsAbsoluteUnitsReduction::exec(), Mantid::DataHandling::SetSampleMaterial::fixNeutron(), Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), operator=(), and Mantid::Kernel::MaterialBuilder::overrideNeutronProperties().
double Mantid::PhysicalConstants::NeutronAtom::inc_scatt_length |
The incoherent scattering length in fm.
Definition at line 81 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), and Mantid::PhysicalConstants::operator+().
double Mantid::PhysicalConstants::NeutronAtom::inc_scatt_length_img |
The imaginary part of the incoherent scattering length in fm.
Definition at line 60 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), and operator=().
double Mantid::PhysicalConstants::NeutronAtom::inc_scatt_length_real |
The real part of the incoherent scattering length in fm.
Definition at line 57 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), and operator=().
double Mantid::PhysicalConstants::NeutronAtom::inc_scatt_xs |
The incoherent scattering cross section in barns.
Definition at line 66 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::WorkflowAlgorithms::DgsAbsoluteUnitsReduction::exec(), Mantid::DataHandling::SetSampleMaterial::fixNeutron(), Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), operator=(), and Mantid::Kernel::MaterialBuilder::overrideNeutronProperties().
|
static |
The reference wavelength value for absorption cross sections.
Reference wavelength for absorption cross section values.
Definition at line 25 of file NeutronAtom.h.
Referenced by Mantid::Kernel::Material::calculateLinearAbsorpXSectionByWL(), Mantid::Crystal::SaveHKL::exec(), Mantid::DataHandling::SetSampleMaterial::exec(), export_Material(), Mantid::Algorithms::AbsorptionCorrection::retrieveBaseProperties(), Mantid::Algorithms::SphericalAbsorption::retrieveBaseProperties(), Mantid::Crystal::AnvredCorrection::retrieveBaseProperties(), and Mantid::Algorithms::HRPDSlabCanAbsorption::runFlatPlateAbsorption().
double Mantid::PhysicalConstants::NeutronAtom::tot_scatt_length |
The total scattering length in fm.
Definition at line 75 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), and Mantid::PhysicalConstants::operator+().
double Mantid::PhysicalConstants::NeutronAtom::tot_scatt_xs |
The total scattering cross section in barns.
Definition at line 69 of file NeutronAtom.h.
Referenced by Mantid::PhysicalConstants::calculateScatteringLengths(), Mantid::DataHandling::SetSampleMaterial::fixNeutron(), Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::Kernel::Material::loadNexus(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), Mantid::PhysicalConstants::operator<<(), operator=(), and Mantid::Kernel::MaterialBuilder::overrideNeutronProperties().
uint16_t Mantid::PhysicalConstants::NeutronAtom::z_number |
The atomic number, or number of protons, for the atom.
Definition at line 44 of file NeutronAtom.h.
Referenced by Mantid::Kernel::MaterialBuilder::generateCustomNeutron(), Mantid::PhysicalConstants::getNeutronAtom(), Mantid::PhysicalConstants::getNeutronNoExceptions(), Mantid::Kernel::Material::Material(), Mantid::PhysicalConstants::operator*(), Mantid::PhysicalConstants::operator+(), and operator=().