14namespace DataObjects {
21 PeakShapeEllipsoid(
const std::vector<Mantid::Kernel::V3D> &directions,
const std::vector<double> &abcRadii,
22 const std::vector<double> &abcRadiiBackgroundInner,
24 std::string algorithmName = std::string(),
int algorithmVersion = -1,
29 const std::vector<double> &abcRadii()
const;
31 const std::vector<double> &abcRadiiBackgroundInner()
const;
33 const std::vector<double> &abcRadiiBackgroundOuter()
const;
35 const std::vector<Mantid::Kernel::V3D> &directions()
const;
39 std::vector<Kernel::V3D> getDirectionInSpecificFrame(
Kernel::Matrix<double> &invertedGoniometerMatrix)
const;
42 std::string toJSON()
const override;
46 std::string shapeName()
const override;
49 boost::optional<double>
radius(
RadiusType type = RadiusType::Radius)
const override;
50 static const std::string ellipsoidShapeName();
PeakShapeBase : Base class for concrete PeakShapes containing common code.
PeakShapeEllipsoid : PeakShape representing a 3D ellipsoid.
Mantid::Kernel::V3D m_translation
translation of center
std::vector< Mantid::Kernel::V3D > m_directions
principle axis
std::vector< double > m_abc_radiiBackgroundInner
inner radii
std::vector< double > m_abc_radii
radii
std::vector< double > m_abc_radiiBackgroundOuter
outer radii
RadiusType
For selecting different radius types.
std::shared_ptr< const PeakShapeEllipsoid > PeakShapeEllipsoid_const_sptr
std::shared_ptr< PeakShapeEllipsoid > PeakShapeEllipsoid_sptr
SpecialCoordinateSystem
Special coordinate systems for Q3D.
Helper class which provides the Collimation Length for SANS instruments.
constexpr bool operator==(const wide_integer< Bits, Signed > &lhs, const wide_integer< Bits2, Signed2 > &rhs)