Mantid
|
MultipleScatteringCorrectionDistGraber : This is a helper class to calculate the distance from source to sample voxel. More...
#include <MultipleScatteringCorrectionDistGraber.h>
Public Member Functions | |
void | cacheLS1 (const Mantid::Kernel::V3D &beamDirection) |
pre-calculate the distance from source to L1 for all the voxels in the sample More... | |
MultipleScatteringCorrectionDistGraber (const Geometry::IObject &sampleShape, const double elementSize) | |
Construct a new Multiple Scattering Correction Dist Graber:: Multiple Scattering Correction Dist Graber object. More... | |
~MultipleScatteringCorrectionDistGraber ()=default | |
Public Attributes | |
std::vector< Kernel::V3D > | m_elementPositions |
Cached element positions. More... | |
std::vector< double > | m_elementVolumes |
Cached element volumes. More... | |
std::vector< double > | m_LS1 |
Cached L1 distances. More... | |
size_t | m_numVolumeElements |
The number of volume elements. More... | |
double | m_totalVolume |
The total volume of the sample. More... | |
Private Attributes | |
const double | m_elementSize |
Size of the sample in m. More... | |
const Geometry::IObject * | m_sampleShape |
The shape pointer is handeled by sample object, not distGraber. More... | |
MultipleScatteringCorrectionDistGraber : This is a helper class to calculate the distance from source to sample voxel.
TODO:
Definition at line 27 of file MultipleScatteringCorrectionDistGraber.h.
Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::MultipleScatteringCorrectionDistGraber | ( | const Geometry::IObject & | sampleShape, |
const double | elementSize | ||
) |
Construct a new Multiple Scattering Correction Dist Graber:: Multiple Scattering Correction Dist Graber object.
sampleShape | : the sample object |
elementSize | : in meters |
Definition at line 35 of file MultipleScatteringCorrectionDistGraber.cpp.
|
default |
void Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::cacheLS1 | ( | const Mantid::Kernel::V3D & | beamDirection | ) |
pre-calculate the distance from source to L1 for all the voxels in the sample
beamDirection |
Definition at line 44 of file MultipleScatteringCorrectionDistGraber.cpp.
References Mantid::Geometry::Rasterize::calculate(), Mantid::Geometry::IObject::clone(), m_elementPositions, m_elementSize, m_elementVolumes, m_LS1, m_numVolumeElements, m_sampleShape, and m_totalVolume.
Referenced by Mantid::Algorithms::MultipleScatteringCorrection::calculateSampleAndContainer(), and Mantid::Algorithms::MultipleScatteringCorrection::calculateSingleComponent().
std::vector<Kernel::V3D> Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::m_elementPositions |
Cached element positions.
Definition at line 39 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL12s(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL2Ds(), and Mantid::Algorithms::MultipleScatteringCorrection::calculateLS1s().
|
private |
Size of the sample in m.
Definition at line 45 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1().
std::vector<double> Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::m_elementVolumes |
Cached element volumes.
Definition at line 38 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1(), Mantid::Algorithms::MultipleScatteringCorrection::calculateSampleAndContainer(), and Mantid::Algorithms::MultipleScatteringCorrection::pairWiseSum().
std::vector<double> Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::m_LS1 |
Cached L1 distances.
Definition at line 37 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1().
size_t Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::m_numVolumeElements |
The number of volume elements.
Definition at line 40 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL12s(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL2Ds(), Mantid::Algorithms::MultipleScatteringCorrection::calculateLS1s(), Mantid::Algorithms::MultipleScatteringCorrection::calculateSampleAndContainer(), Mantid::Algorithms::MultipleScatteringCorrection::calculateSingleComponent(), and Mantid::Algorithms::MultipleScatteringCorrection::pairWiseSum().
|
private |
The shape pointer is handeled by sample object, not distGraber.
Definition at line 44 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1().
double Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::m_totalVolume |
The total volume of the sample.
Definition at line 41 of file MultipleScatteringCorrectionDistGraber.h.
Referenced by cacheLS1().