11#include "MantidCurveFitting/DllConfig.h"
15namespace CurveFitting {
29 void buildS2Cache(std::vector<double> &s2Cache)
const;
33 std::string name()
const override;
35 void declareParameters()
override;
37 void declareAttributes()
override;
39 void setAttribute(
const std::string &name,
const Attribute &
value)
override;
42 std::vector<size_t> intensityParameterIndices()
const override;
45 const HistogramData::HistogramE &errors)
const override;
48 void massProfile(
double *result,
const size_t nData)
const override;
51 void massProfile(
double *result,
const size_t nData,
const double amplitude)
const;
53 double calculateJ(std::vector<double> s2Cache,
double y)
const;
54 double calculateFSE(std::vector<double> s2Cache,
double y)
const;
71 return ((pow(
y, 3) / pow(s2, 4)) - ((3 *
y) / pow(s2, 2))) * exp(-(
y *
y) / (2.0 * s2));
74 double intervalCoeff(
int i,
int j)
const;
double value
The value of the point.
Attribute is a non-fitting parameter.
This class serves as a base-class for ComptonProfile type functions.
static const char * SIGMA_X_PARAM
double calculateIntegrandFSE(double s2, double y) const
Calculates the integrand of the A3 FSE correction.
double calculateIntegrandJ(double s2, double y) const
Calculates the integrand of the mass profile.
static const char * SIGMA_Y_PARAM
double m_thetaStep
Delta theta in integration.
static const char * SIGMA_Z_PARAM
static const char * STEPS_ATTR
static const char * AMP_PARAM
int m_integrationSteps
Number of steps to perform during integration.
double m_phiStep
Delta phi in integration.
Helper class which provides the Collimation Length for SANS instruments.