13namespace DataObjects {
16namespace MDAlgorithms {
24 const std::string name()
const override;
25 int version()
const override;
26 const std::vector<std::string>
seeAlso()
const override {
return {
"MDNormSCD",
"MDNormSCDPreprocessIncoherent"}; }
27 const std::string category()
const override;
28 const std::string summary()
const override;
35 std::string inputEnergyMode()
const;
39 std::vector<coord_t> getValuesFromOtherDimensions(
bool &skipNormalization, uint16_t expInfoIndex = 0)
const;
41 bool &skipNormalization);
42 void cacheDimensionXValues();
43 void calculateNormalization(
const std::vector<coord_t> &otherValues,
const Kernel::Matrix<coord_t> &affineTrans,
44 uint16_t expInfoIndex);
46 void calculateIntersections(std::vector<std::array<double, 4>> &intersections,
const double theta,
const double phi);
55 double m_Ei, m_ki, m_kfmin, m_kfmax;
61 size_t m_hIdx, m_kIdx, m_lIdx,
m_eIdx;
63 std::vector<double> m_hX, m_kX, m_lX,
m_eX;
71 bool m_accumulate{
false};
MDNormSCD : Generate MD normalization for single crystal diffraction.
Mantid::Kernel::DblMatrix m_rubw
(2*PiRUBW)^-1
API::IMDEventWorkspace_sptr m_inputWS
Input workspace.
double m_Ei
cached values for incident energy and momentum, final momentum min/max
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
Kernel::V3D m_samplePos
Sample position.
Kernel::V3D m_beamDir
Beam direction.
DataObjects::MDHistoWorkspace_sptr m_normWS
Normalization workspace.
uint16_t m_numExptInfos
number of experiment infos
std::vector< double > m_eX
std::string convention
ki-kf for Inelastic convention; kf-ki for Crystallography convention
Abstract Algorithm class that will be used by: BinMD and SliceMD and shares code for getting a slice ...
std::shared_ptr< IMDEventWorkspace > IMDEventWorkspace_sptr
Shared pointer to Mantid::API::IMDEventWorkspace.
std::shared_ptr< MDHistoWorkspace > MDHistoWorkspace_sptr
A shared pointer to a MDHistoWorkspace.
Helper class which provides the Collimation Length for SANS instruments.
float coord_t
Typedef for the data type to use for coordinate axes in MD objects such as MDBox, MDEventWorkspace,...