Mantid
|
#include <MatrixVectorPair.h>
Public Member Functions | |
MatrixVectorPair< MatrixNumericType, VectorType > | getInverse () const |
Returns the inverse MatrixVectorPair. More... | |
const Kernel::Matrix< MatrixNumericType > & | getMatrix () const |
Returns a const reference to the internally stored matrix. More... | |
const VectorType & | getVector () const |
Returns a const reference to the stored vector. More... | |
MatrixVectorPair () | |
Default constructor, unit matrix and 0-vector. More... | |
MatrixVectorPair (const Kernel::Matrix< MatrixNumericType > &matrix, const VectorType &vector) | |
Constructor from matrix and vector. More... | |
bool | operator!= (const MatrixVectorPair< MatrixNumericType, VectorType > &other) const |
Inequality operator. More... | |
MatrixVectorPair< MatrixNumericType, VectorType > | operator* (const MatrixVectorPair< MatrixNumericType, VectorType > &other) const |
Operator to combine with another MatrixVectorPair. More... | |
template<typename T > | |
T | operator* (const T &operand) const |
Operator to transform a vector or point. More... | |
bool | operator== (const MatrixVectorPair< MatrixNumericType, VectorType > &other) const |
Comparison operator, compares the matrix & vector stored internally. More... | |
virtual | ~MatrixVectorPair ()=default |
Private Attributes | |
Kernel::Matrix< MatrixNumericType > | m_matrix |
VectorType | m_vector |
This class represents matrix/vector pairs (W, w) that are for example used to describe symmetry operations. On vector- or point-like objects they perform the following operation:
P' = (W * P) + w
The operation on other matrix/vector pairs is defined like this:
(P, p)' = ((W * P), (W * p) + w)
A very important use is in SymmetryOperation, which encapsulated a MatrixVectorPair<int, V3R> object to represent symmetry operations that are used to define point- and space groups.
@author Michael Wedel, ESS @date 02/11/2015
Definition at line 34 of file MatrixVectorPair.h.
|
inline |
Default constructor, unit matrix and 0-vector.
Definition at line 37 of file MatrixVectorPair.h.
|
inline |
Constructor from matrix and vector.
Definition at line 40 of file MatrixVectorPair.h.
|
virtualdefault |
|
inline |
Returns the inverse MatrixVectorPair.
Definition at line 62 of file MatrixVectorPair.h.
References Mantid::Kernel::Matrix< T >::Invert(), Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_matrix, and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_vector.
|
inline |
Returns a const reference to the internally stored matrix.
Definition at line 46 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_matrix.
Referenced by Mantid::Geometry::SymmetryOperationSymbolParser::getNormalizedIdentifier(), Mantid::Geometry::SymmetryOperation::operator*(), Mantid::Geometry::SymmetryOperationSymbolParser::parseIdentifier(), and Mantid::Geometry::GroupTransformation::transformOperation().
|
inline |
Returns a const reference to the stored vector.
Definition at line 49 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_vector.
Referenced by Mantid::Geometry::SymmetryOperationSymbolParser::getNormalizedIdentifier(), Mantid::Geometry::SymmetryOperation::operator*(), and Mantid::Geometry::GroupTransformation::transformOperation().
|
inline |
Inequality operator.
Definition at line 75 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator==().
|
inline |
Operator to combine with another MatrixVectorPair.
Definition at line 56 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_matrix, and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_vector.
|
inline |
Operator to transform a vector or point.
Definition at line 52 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_matrix, and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_vector.
|
inline |
Comparison operator, compares the matrix & vector stored internally.
Definition at line 70 of file MatrixVectorPair.h.
References Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_matrix, and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::m_vector.
Referenced by Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator!=().
|
private |
Definition at line 78 of file MatrixVectorPair.h.
Referenced by Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::getInverse(), Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::getMatrix(), Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator*(), and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator==().
|
private |
Definition at line 79 of file MatrixVectorPair.h.
Referenced by Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::getInverse(), Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::getVector(), Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator*(), and Mantid::Geometry::MatrixVectorPair< MatrixNumericType, VectorType >::operator==().