9#include "MantidCurveFitting/DllConfig.h"
19#include "MantidCurveFitting/EigenVectorView.h"
25namespace CurveFitting {
52 EigenVector &operator=(
const std::vector<double> &v);
64 void resize(
const size_t n);
69 void set(
const size_t i,
const double value);
71 double get(
const size_t i)
const;
87 size_t indexOfMinElement()
const;
89 size_t indexOfMaxElement()
const;
91 std::pair<size_t, size_t> indicesOfMinMaxElements()
const;
93 std::vector<size_t> sortIndices(
bool ascending =
true)
const;
95 void sort(
const std::vector<size_t> &indices);
97 const std::vector<double> &toStdVector()
const;
99 std::vector<double> &StdVectorRef();
double value
The value of the point.
const std::vector< Type > & m_data
#define GNU_DIAG_OFF(x)
This is a collection of macros for turning compiler warnings off in a controlled manner.
A wrapper around Eigen::Vector.
std::vector< double > m_data
Default element storage.
vec_map_type & mutator()
Get the map of the eigen vector.
double & operator[](const size_t i)
Get a reference to an element.
EigenVector_View m_view
The map to the Eigen vector.
const double & operator[](const size_t i) const
Get a const reference to an element.
vec_map_type copy_view() const
Get a copy of the eigen vector.
const vec_map_type inspector() const
Get the const map of the eigen vector.
MatrixWorkspace_sptr MANTID_API_DLL operator+=(const MatrixWorkspace_sptr &lhs, const MatrixWorkspace_sptr &rhs)
Adds two workspaces.
MatrixWorkspace_sptr MANTID_API_DLL operator-=(const MatrixWorkspace_sptr &lhs, const MatrixWorkspace_sptr &rhs)
Subtracts two workspaces.
MANTID_API_DLL std::ostream & operator<<(std::ostream &, const AlgorithmHistory &)
Prints a text representation.
MatrixWorkspace_sptr MANTID_API_DLL operator*=(const MatrixWorkspace_sptr &lhs, const MatrixWorkspace_sptr &rhs)
Multiply two workspaces.
Eigen::Map< Eigen::VectorXd, 0, dynamic_stride > vec_map_type
MANTID_KERNEL_DLL V3D normalize(V3D v)
Normalizes a V3D.
Helper class which provides the Collimation Length for SANS instruments.