14using namespace Kernel;
18 : m_ub(
std::move(ub)), m_lambdaMin(lambdaMin), m_lambdaMax(lambdaMax) {
24 std::ostringstream strm;
41 throw std::range_error(
"LambdaMin cannot be <= 0.");
45 throw std::range_error(
"LambdaMax cannot be smaller than LambdaMin.");
const std::vector< double > * lambda
bool isAllowed(const Kernel::V3D &hkl) const noexcept override
Returns true if lambda of the reflection is within the limits.
void checkProperLambdaRangeValues() const
Throws std::range_error exceptions if limits are <= 0 or max >= min.
HKLFilterWavelength(Kernel::DblMatrix ub, double lambdaMin, double lambdaMax)
Constructor, takes an orientation matrix and lambda min/max.
std::string getDescription() const noexcept override
Returns a description for the filter.
constexpr double norm2() const noexcept
Vector length squared.
constexpr double Z() const noexcept
Get z.