12#include "MantidKernel/DllConfig.h"
27 NeutronAtom(
const uint16_t z,
const double coh_b_real,
const double inc_b_real,
const double coh_xs,
28 const double inc_xs,
const double tot_xs,
const double abs_xs);
30 NeutronAtom(
const uint16_t z,
const uint16_t a,
const double coh_b_real,
const double inc_b_real,
const double coh_xs,
31 const double inc_xs,
const double tot_xs,
const double abs_xs);
33 NeutronAtom(
const uint16_t z,
const uint16_t a,
const double coh_b_real,
const double coh_b_img,
34 const double inc_b_real,
const double inc_b_img,
const double coh_xs,
const double inc_xs,
35 const double tot_xs,
const double abs_xs);
A namespace containing physical constants that are required by algorithms and unit routines.
MANTID_KERNEL_DLL bool operator!=(const Atom &left, const Atom &right)
Inequality operator overload.
MANTID_KERNEL_DLL void calculateScatteringLengths(NeutronAtom &atom)
Utility function to calculate scattering lengths from cross-sections.
MANTID_KERNEL_DLL NeutronAtom getNeutronNoExceptions(const uint16_t z_number, const uint16_t a_number)
MANTID_KERNEL_DLL NeutronAtom getNeutronAtom(const uint16_t z_number, const uint16_t a_number=0)
Retrieve a copy of NeutronAtom.
MANTID_KERNEL_DLL NeutronAtom operator*(const NeutronAtom &left, const double right)
Multiplying a NeutronAtom by a number sets a_number=z_number=0 and multiplies all of the scattering i...
MANTID_KERNEL_DLL std::ostream & operator<<(std::ostream &out, const Atom &atom)
Stream operator overload.
MANTID_KERNEL_DLL NeutronAtom operator+(const NeutronAtom &left, const NeutronAtom &right)
Adding two NeutronAtoms together sets a_number=z_number=0 and adds all of the scattering information.
MANTID_KERNEL_DLL bool operator==(const Atom &left, const Atom &right)
Equality operator overload.
Helper class which provides the Collimation Length for SANS instruments.
Structure to store neutronic scattering information for the various elements.
double coh_scatt_length_real
The real part of the coherent scattering length in fm.
double tot_scatt_length
The total scattering length in fm.
double inc_scatt_length
The incoherent scattering length in fm.
uint16_t z_number
The atomic number, or number of protons, for the atom.
double coh_scatt_length
The coherent scattering length in fm.
double coh_scatt_length_img
The imaginary part of the coherent scattering length in fm.
double inc_scatt_length_img
The imaginary part of the incoherent scattering length in fm.
double inc_scatt_xs
The incoherent scattering cross section in barns.
double tot_scatt_xs
The total scattering cross section in barns.
double abs_scatt_xs
The absorption cross section for 2200m/s neutrons in barns.
double inc_scatt_length_real
The real part of the incoherent scattering length in fm.
double coh_scatt_xs
The coherent scattering cross section in barns.
static const double ReferenceLambda
The reference wavelength value for absorption cross sections.
uint16_t a_number
The total number of protons and neutrons, or mass number, for the atom for isotopic averages this is ...