11#include "MantidAlgorithms/DllConfig.h"
34 const std::string
name()
const override {
return "GetAllEi"; };
36 const std::string
summary()
const override {
37 return "Analyze the chopper logs and the signal registered by the monitors "
38 "to identify energies used as incident energies in an inelastic "
42 int version()
const override {
return 1; };
43 const std::vector<std::string>
seeAlso()
const override {
return {
"GetEi"}; }
45 const std::string
category()
const override {
return "Inelastic\\Ei"; };
47 std::map<std::string, std::string> validateInputs()
override;
57 const std::vector<size_t> &monsRangeMin,
const std::vector<size_t> &monsRangeMax,
double &peakPos,
58 double &peakHeight,
double &peakTwoSigma);
68 std::vector<Kernel::SplittingInterval> &splitter);
71 void findGuessOpeningTimes(
const std::pair<double, double> &TOF_range,
double ChopDelay,
double Period,
72 std::vector<double> &guess_opening_times);
75 const std::vector<size_t> &monsRangeMax,
double &
position,
double &
height,
double &twoSigma);
77 void findBinRanges(
const HistogramData::HistogramX &eBins,
const HistogramData::HistogramY &signal,
78 const std::vector<double> &guess_energy,
double eResolution, std::vector<size_t> &irangeMin,
79 std::vector<size_t> &irangeMax, std::vector<bool> &guessValid);
81 size_t calcDerivativeAndCountZeros(
const std::vector<double> &bins,
const std::vector<double> &signal,
82 std::vector<double> &deriv, std::vector<double> &zeros);
85 void printDebugModeInfo(
const std::vector<double> &guess_opening,
const std::pair<double, double> &TOF_range,
86 std::shared_ptr<Kernel::Unit> &destUnit);
std::map< DeltaEMode::Type, std::string > index
Base class from which all concrete algorithm classes should be derived.
Estimate all incident energies, used by chopper instrument.
virtual ~GetAllEi()=default
Kernel::TimeSeriesProperty< double > * m_pFilterLog
const std::string name() const override
Algorithms name for identification.
std::shared_ptr< const Geometry::IComponent > m_chopper
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso algorithms related to this algorithm.
bool m_FilterWithDerivative
if true, take derivate of the filter log to identify interval when instrument is running.
int version() const override
Algorithm's version for identification.
double m_min_Eresolution
maximal relative peak width to consider acceptable.
const std::string category() const override
Algorithm's category for identification.
double m_peakEnergyRatio2reject
const std::string summary() const override
Algorithm's summary for use in the GUI and help.
Base class for properties.
A specialised Property class for holding a series of time-value pairs.
std::shared_ptr< MatrixWorkspace > MatrixWorkspace_sptr
shared pointer to the matrix workspace base class
Helper class which provides the Collimation Length for SANS instruments.