13#include "MantidCurveFitting/DllConfig.h"
19namespace CurveFitting {
57 double real(
size_t i)
const {
69 double imag(
size_t i)
const {
74 if (m_even && i ==
m_size - 1)
84 void set(
size_t i,
const double &re,
const double &im) {
90 }
else if (m_even && i ==
m_size - 1)
104 std::string
name()
const override {
return "Convolution"; }
105 const std::string
category()
const override {
return "General"; }
116 void setAttribute(
const std::string &attName,
const Attribute &)
override;
121 void setUpForFit()
override;
125 void refreshResolution()
const;
129 void init()
override;
136 void innerFunctionsAre1D()
const;
size_t m_size
Maximum size of the store.
const std::vector< Type > & m_data
A composite function is a function containing other functions.
Base class that represents the domain of a function.
A class to store values calculated by a function.
Attribute is a non-fitting parameter.
Represents the Jacobian in IFitFunction::functionDeriv.
Class for helping to read the transformed data.
size_t m_size
size of the transformed data
size_t size() const
Returns the size of the transform.
double real(size_t i) const
The real part of i-th transform coefficient.
void set(size_t i, const double &re, const double &im)
Set a new value for i-th complex coefficient.
HalfComplex(double *data, const size_t &n)
Constructor.
bool m_even
true if the size of the original data is even
double imag(size_t i) const
The imaginary part of i-th transform coefficient.
double * m_data
pointer to the transformed data
Performes convolution of two functions.
const std::string category() const override
The categories the Fit function belong to.
std::vector< double > m_resolution
Keep the Fourier transform of the resolution function (divided by the step in xValues) when in FFT mo...
std::string name() const override
overwrite IFunction base class methods
std::shared_ptr< IFunction > IFunction_sptr
shared pointer to the function base class
Helper class which provides the Collimation Length for SANS instruments.