12namespace MDAlgorithms {
34 return "Apply Debye-Waller factor correction to MD events by dividing signal with exp(-q^2 * u^2 / 3)";
42 auto mustBePositive = std::make_shared<BoundedValidator<double>>();
43 mustBePositive->setLower(0.0);
46 "Mandatory: Mean squared displacement <u^2>. Often obtained from Rietveld refinement.");
59 const double inverse_DWF = exp(
u2 * q2 / 3.0);
#define DECLARE_ALGORITHM(classname)
void declareProperty(std::unique_ptr< Kernel::Property > p, const std::string &doc="") override
Add a property to the list of managed properties.
TypedValue getProperty(const std::string &name) const override
Get the value of a property.
A property class for workspaces.
BoundedValidator is a validator that requires the values to be between upper or lower bounds,...
The concrete, templated class for properties.
DebyeWallerCorrectionMD : Correct event signal and error values for Debye-Waller factor.
const std::vector< std::string > seeAlso() const override
Function to return all of the seeAlso (these are not validated) algorithms related to this algorithm....
const std::string category() const override
Algorithm's category for identification.
double correction(const double) const override
void init() override
Virtual method - must be overridden by concrete algorithm.
int version() const override
Algorithm's version for identification.
void exec() override
Virtual method - must be overridden by concrete algorithm.
const std::string summary() const override
Algorithm's summary for use in the GUI and help.
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.
Describes the direction (within an algorithm) of a Property.
@ Input
An input workspace.