10#include "MantidAlgorithms/DllConfig.h"
16namespace HistogramData {
18class CountStandardDeviations;
66 const std::string
name()
const override {
return "NormaliseToMonitor"; }
68 const std::string
summary()
const override {
69 return "Normalizes a 2D workspace by a specified spectrum, spectrum, "
70 "described by a monitor ID or spectrun provided in a separate "
75 int version()
const override {
return 1; }
76 const std::vector<std::string>
seeAlso()
const override {
return {
"Divide"}; }
78 const std::string
category()
const override {
return "CorrectionFunctions\\NormalisationCorrections"; }
84 std::map<std::string, std::string> validateInputs()
override;
92 const std::vector<size_t> &workspaceIndexes);
93 bool setIntegrationProps(
const bool isSingleCountWorkspace);
102 void normalisationFactor(
const HistogramData::BinEdges &X, HistogramData::Counts &Y,
103 HistogramData::CountStandardDeviations &E);
109 bool m_commonBins =
false;
126 const std::string &MonitorWorkspace)
127 : hostWSname(WSProperty), SpectraNum(SpectrToNormByProperty), MonitorWorkspaceProp(MonitorWorkspace),
132 const std::string &changedPropName =
"")
const override;
Base class from which all concrete algorithm classes should be derived.
std::string MonitorWorkspaceProp
std::vector< int > iExistingAllowedValues
IPropertySettings * clone() const override
Make a copy of the present type of IPropertySettings.
MonIDPropChanger(const std::string &WSProperty, const std::string &SpectrToNormByProperty, const std::string &MonitorWorkspace)
Normalizes a 2D workspace by a specified monitor spectrum.
const std::string summary() const override
Summary of algorithms purpose.
int version() const override
Algorithm's version for identification overriding a virtual method.
std::vector< size_t > m_workspaceIndexes
const std::string name() const override
Algorithm's name for identification overriding a virtual method.
const std::string category() const override
Algorithm's category for identification overriding a virtual method.
API::MatrixWorkspace_sptr m_monitor
A single spectrum workspace containing the monitor.
size_t getInWSMonitorIndex(const API::MatrixWorkspace_sptr &inputWorkspace)
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso algorithms related to this algorithm.
Interface to PropertyManager.
Interface for modifiers to Property's that specify if they should be enabled or visible in a GUI.
Base class for properties.
std::shared_ptr< const MatrixWorkspace > MatrixWorkspace_const_sptr
shared pointer to the matrix workspace base class (const version)
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
Helper class which provides the Collimation Length for SANS instruments.
constexpr double EMPTY_DBL() noexcept
Returns what we consider an "empty" double within a property.