|
Free Electron
|
Dense vector - size fixed by template. More...
#include <Vector.h>

Public Member Functions | |
| Vector (const Vector< N, T > &other) | |
| template<typename U > | |
| Vector (const Vector< N, U > &other) | |
| template<typename U > | |
| Vector (const Vector< N+1, U > &other) | |
| template<typename U > | |
| Vector (const Vector< N+2, U > &other) | |
| template<typename U > | |
| Vector (const Vector< N-1, U > &other) | |
| template<typename U > | |
| Vector (const Vector< N-2, U > &other) | |
| Vector (const T *array) | |
| Vector (T x, T y, T z, T w, T v, T u) | |
| Vector (T x, T y, T z, T w, T v) | |
| Vector (T x, T y, T z, T w) | |
| Vector (T x, T y, T z) | |
| Vector (T x, T y) | |
| Vector (T x) | |
| const T & | operator[] (unsigned int index) const |
| T & | operator[] (unsigned int index) |
| T * | raw (void) |
| const T * | raw (void) const |
| const T * | temp (void) const |
| Vector< N, T > & | operator= (const T *array) |
| Vector< N, T > & | operator= (const Vector< N, T > &other) |
| template<typename U > | |
| Vector< N, T > & | operator= (const Vector< N, U > &other) |
| Vector< N, T > & | operator= (const Vector< N+1, T > &other) |
| template<typename U > | |
| Vector< N, T > & | operator= (const Vector< N+1, U > &other) |
| template<typename U > | |
| Vector< N, T > & | operator= (const Vector< N+2, U > &other) |
| template<typename U > | |
| Vector< N, T > & | operator= (const Vector< N-1, U > &other) |
| template<typename U > | |
| Vector< N, T > & | operator= (const Vector< N-2, U > &other) |
| bool | operator== (const Vector< N, T > &other) const |
| bool | operator!= (const Vector< N, T > &other) const |
| template<> | |
| Vector (const Vector< 2, U > &other) | |
Public Attributes | |
| T | m_data [N] |
Related Functions | |
(Note that these are not member functions.) | |
| template<int M, int N, class T , class U > | |
| Vector< M, T > & | multiply (Vector< M, T > &b, const Matrix< M, N, T > &A, const Vector< N, U > &x) |
| Matrix Vector multiply. More... | |
| template<int M, int N, class T , class U > | |
| Vector< M, T > | multiply (const Matrix< M, N, T > &A, const Vector< N, U > &x) |
| Matrix Vector multiply. More... | |
| template<int M, int N, class T > | |
| Vector< M, T > | transposeMultiply (const Matrix< M, N, T > &A, const Vector< N, T > &x) |
| Matrix Vector multiply with the matrix transposed. More... | |
| template<int M, int N, class T , class U > | |
| Vector< M, U > | operator* (const Matrix< M, N, T > &lhs, const Vector< N, U > &rhs) |
| Matrix Vector multiply. More... | |
| template<class T , class U > | |
| bool | equivalent (const Matrix< 3, 4, T > &lhs, const Matrix< 3, 4, T > &rhs, U margin) |
| Equivalence test within the given tolerance margin. More... | |
| template<int N, class T > | |
| Vector< N, T > & | set (Vector< N, T > &lhs) |
| Set all the elements to zero. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > & | setAll (Vector< N, T > &lhs, const U value) |
| Set all the elements to the given value. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > & | setAt (Vector< N, T > &lhs, U32 index, const U value) |
| Set the value at the index. More... | |
| template<int N, class T > | |
| U32 | size (const Vector< N, T > &lhs) |
| Return the number of elements. More... | |
| template<int N, class T > | |
| Vector< N, T > & | operator+= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place add operator. More... | |
| template<int M, int N, class T > | |
| Vector< N, T > & | operator+= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place add operator. More... | |
| template<int N, class T > | |
| Vector< N, T > & | operator-= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place subtract operator. More... | |
| template<int M, int N, class T > | |
| Vector< N, T > & | operator-= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place subtract operator. More... | |
| template<int N, class T > | |
| Vector< N, T > | operator- (const Vector< N, T > &rhs) |
| Negate operation. More... | |
| template<int N, class T > | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place piecewise multiply operator. More... | |
| template<int M, int N, class T > | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place piecewise multiply operator. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, U scale) |
| In place piecewise scale operator. More... | |
| template<int N, class T > | |
| T | dot (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| Dot (inner) product. More... | |
| template<int N, class T > | |
| T | magnitude (const Vector< N, T > &rhs) |
| Frobenius norm operation. More... | |
| template<int N, class T > | |
| T | magnitudeSquared (const Vector< N, T > &rhs) |
| Square of the length. More... | |
| template<int N, class T > | |
| Vector< N, T > | unit (const Vector< N, T > &vec) |
| Return vector scaled to unit length. More... | |
| template<int N, class T > | |
| Vector< N, T > | unitSafe (const Vector< N, T > &vec) |
| Return vector scaled to unit length with zero check. More... | |
| template<int N, class T > | |
| Vector< N, T > & | normalize (Vector< N, T > &vec) |
| In place normalize operator. More... | |
| template<int N, class T > | |
| Vector< N, T > & | normalizeSafe (Vector< N, T > &vec) |
| In place normalize operator with zero length check. More... | |
| template<int N, class T > | |
| String | print (const Vector< N, T > &vec) |
| Print to a string. More... | |
| template<int N, class T > | |
| Vector< N, T > | operator+ (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| add operation More... | |
| template<int N, int M, class T > | |
| Vector< N, T > | operator+ (const Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| add operation More... | |
| template<int N, class T > | |
| Vector< N, T > | operator- (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| subtract operation More... | |
| template<int N, int M, class T > | |
| Vector< N, T > | operator- (const Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| subtract operation More... | |
| template<int N, class T > | |
| bool | operator== (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| equality test More... | |
| template<int N, class T , class U > | |
| bool | equivalent (const Vector< N, T > &lhs, const Vector< N, T > &rhs, U margin) |
| Equivalence test within the given tolerance margin. More... | |
| template<int N, class T > | |
| Vector< N, T > | operator* (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| Piecewise multiply operation. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > | operator* (const U lhs, const Vector< N, T > &rhs) |
| Scale operation. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > | operator* (const Vector< N, T > &lhs, const U &rhs) |
| Scale operation. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > | operator/ (const Vector< N, T > &lhs, const U &rhs) |
| Inverse Scale operation. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > & | addScaled (Vector< N, T > &lhs, U scalar, const Vector< N, T > &rhs) |
| Add with scaling. More... | |
| template<int N, class T , class U > | |
| Vector< N, T > & | scaleAndAdd (Vector< N, T > &lhs, U scalar, const Vector< N, T > &rhs) |
| Scale then add. More... | |
| template<typename T > | |
| Vector< 4, T > & | set (Vector< 4, T > &r) |
| Set components. More... | |
| template<typename T , typename U > | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x) |
| Set components. More... | |
| template<typename T , typename U , typename V > | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y) |
| Set components. More... | |
| template<typename T , typename U , typename V , typename W > | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y, W z) |
| Set components. More... | |
| template<typename T , typename U , typename V , typename W , typename X > | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y, W z, X w) |
| Set components. More... | |
| template<typename T , typename U > | |
| Vector< 4, T > & | setAt (Vector< 4, T > &lhs, U32 index, U value) |
| Set indexed component. More... | |
| template<typename T > | |
| U32 | size (const Vector< 4, T > &lhs) |
| Return the number of elements. More... | |
| template<typename T > | |
| Vector< 4, T > & | operator+= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Add to Vector in place. More... | |
| template<typename T > | |
| Vector< 4, T > & | operator-= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Subtract from Vector in place. More... | |
| template<typename T > | |
| Vector< 4, T > | operator- (const Vector< 4, T > &rhs) |
| Negate the Vector. More... | |
| template<typename T > | |
| Vector< 4, T > & | operator*= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Independently scale components in place. More... | |
| template<typename T , typename U > | |
| Vector< 4, T > & | operator*= (Vector< 4, T > &lhs, U scale) |
| Uniformly scale components in place. More... | |
| template<typename T > | |
| T | dot (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return dot product. More... | |
| template<typename T > | |
| T | magnitudeSquared (const Vector< 4, T > &rhs) |
| Return square of the Vector length. More... | |
| template<typename T > | |
| T | magnitude (const Vector< 4, T > &rhs) |
| Return the Vector length. More... | |
| template<typename T > | |
| Vector< 4, T > | unit (const Vector< 4, T > &vector) |
| Return the Vector direction scaled to unit length. More... | |
| template<typename T > | |
| Vector< 4, T > | unitSafe (const Vector< 4, T > &vector) |
| Return the Vector direction scaled to unit length with zero check. More... | |
| template<typename T > | |
| Vector< 4, T > & | normalize (Vector< 4, T > &vector) |
| Scale Vector to unit length. More... | |
| template<typename T > | |
| Vector< 4, T > & | normalizeSafe (Vector< 4, T > &vector) |
| Scale Vector to unit length with zero check. More... | |
| template<typename T > | |
| String | print (const Vector< 4, T > &vector) |
| Return text describing the Vector's state. More... | |
| template<typename T > | |
| Vector< 4, T > | operator+ (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return sum of Vectors. More... | |
| template<typename T > | |
| Vector< 4, T > | operator- (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return difference of Vectors. More... | |
| template<typename T > | |
| Vector< 4, T > | operator* (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return a Vector of products of each component. More... | |
| template<typename T , typename U > | |
| boost::enable_if< boost::is_arithmetic< U >, Vector< 4, T > >::type | operator* (const U lhs, const Vector< 4, T > &rhs) |
| Return a uniformly scale Vector (pre) More... | |
| template<typename T , typename U > | |
| boost::enable_if< boost::is_arithmetic< U >, Vector< 4, T > >::type | operator* (const Vector< 4, T > &lhs, const U rhs) |
| Return a uniformly scale Vector (post) More... | |
| template<typename T > | |
| Vector< 4, T > & | cross3 (Vector< 4, T > &r, const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return a cross product of Vectors. More... | |
| template<typename T > | |
| Vector< 4, T > | cross3 (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Set the Vector as a cross product of Vectors. More... | |
| String | print (const Vector< FE_VDIM, F32 > &rhs) |
| Return text describing the Vector's state. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r) |
| Set components. More... | |
| template<typename T > | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x) |
| Set components. More... | |
| template<typename T , typename U > | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y) |
| Set components. More... | |
| template<typename T , typename U , typename V > | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y, V z) |
| Set components. More... | |
| template<typename T , typename U , typename V , typename W > | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y, V z, W w) |
| Set components. More... | |
| template<typename T > | |
| Vector< FE_VDIM, F32 > & | setAll (Vector< FE_VDIM, F32 > &lhs, T value) |
| Set all components to the same value. More... | |
| template<typename T > | |
| Vector< FE_VDIM, F32 > & | setAt (Vector< FE_VDIM, F32 > &lhs, U32 index, T value) |
| Set indexed component. More... | |
| template<typename T > | |
| U32 | size (const Vector< FE_VDIM, F32 > &lhs) |
| Return the number of elements. More... | |
| Vector< FE_VDIM, F32 > & | operator+= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Add to Vector in place. More... | |
| Vector< FE_VDIM, F32 > & | operator-= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Subtract from Vector in place. More... | |
| Vector< FE_VDIM, F32 > | operator- (const Vector< FE_VDIM, F32 > &rhs) |
| Negate the Vector. More... | |
| Vector< FE_VDIM, F32 > & | operator*= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Independently scale components in place. More... | |
| template<typename T > | |
| Vector< FE_VDIM, F32 > & | operator*= (Vector< FE_VDIM, F32 > &lhs, T rhs) |
| Uniformly scale components in place. More... | |
| F32 | dot (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return dot product. More... | |
| F32 | magnitudeSquared (const Vector< FE_VDIM, F32 > &rhs) |
| Return square of the Vector length. More... | |
| F32 | magnitude (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector length. More... | |
| Vector< FE_VDIM, F32 > | operator+ (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return sum of Vectors. More... | |
| Vector< FE_VDIM, F32 > | operator- (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return difference of Vectors. More... | |
| Vector< FE_VDIM, F32 > | operator* (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a Vector of products of each component. More... | |
| template<typename T > | |
| boost::enable_if< boost::is_arithmetic< T >, Vector< FE_VDIM, F32 > >::type | operator* (const T lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a uniformly scaled Vector (pre) More... | |
| template<typename T > | |
| boost::enable_if< boost::is_arithmetic< T >, Vector< FE_VDIM, F32 > >::type | operator* (const Vector< FE_VDIM, F32 > &lhs, const T rhs) |
| Return a uniformly scaled Vector (post) More... | |
| Vector< FE_VDIM, F32 > | unit (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector direction scaled to unit length. More... | |
| Vector< FE_VDIM, F32 > | unitSafe (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector direction scaled to unit length with zero check. More... | |
| Vector< FE_VDIM, F32 > & | normalize (Vector< FE_VDIM, F32 > &rhs) |
| Scale Vector to unit length. More... | |
| Vector< FE_VDIM, F32 > & | normalizeSafe (Vector< FE_VDIM, F32 > &rhs) |
| Scale Vector to unit length. More... | |
| Vector< FE_VDIM, F32 > & | cross3 (Vector< FE_VDIM, F32 > &r, const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a cross product of Vectors. More... | |
| Vector< FE_VDIM, F32 > | cross3 (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Set the Vector as a cross product of Vectors. More... | |
Dense vector - size fixed by template.
|
related |
Set the Vector as a cross product of Vectors.
<4,T>
|
related |
Return a cross product of Vectors.
<4,F32>
|
related |
Set the Vector as a cross product of Vectors.
<4,F32>
Return dot product.
<4,T>
|
related |
Return dot product.
<4,F32>
Dot (inner) product.
Referenced by fe::Vector< 4, t_moa_real >::magnitudeSquared().
|
related |
Equivalence test within the given tolerance margin.
|
related |
Equivalence test within the given tolerance margin.
|
related |
Return the Vector length.
<4,T>
|
related |
Return the Vector length.
<4,F32>
|
related |
Frobenius norm operation.
Referenced by fe::Vector< 4, t_moa_real >::normalize(), fe::Vector< 4, t_moa_real >::normalizeSafe(), fe::Vector< 4, t_moa_real >::unit(), and fe::Vector< 4, t_moa_real >::unitSafe().
|
related |
Return square of the Vector length.
<4,T>
|
related |
Return square of the Vector length.
<4,F32>
|
related |
Square of the length.
Referenced by fe::Vector< 4, t_moa_real >::magnitude().
Scale Vector to unit length.
<4,T>
Scale Vector to unit length.
<4,F32>
In place normalize operator.
Scale Vector to unit length with zero check.
<4,T>
|
related |
Scale Vector to unit length.
<4,F32>
In place normalize operator with zero length check.
|
related |
Return a Vector of products of each component.
<4,T>
|
related |
Return a uniformly scale Vector (pre)
<4,T>
|
related |
Return a uniformly scale Vector (post)
<4,T>
|
related |
Return a Vector of products of each component.
<4,F32>
|
related |
Return a uniformly scaled Vector (pre)
<4,F32>
|
related |
Return a uniformly scaled Vector (post)
<4,F32>
|
related |
Piecewise multiply operation.
|
related |
Scale operation.
|
related |
Scale operation.
|
related |
Independently scale components in place.
<4,T>
|
related |
Uniformly scale components in place.
<4,T>
|
related |
Independently scale components in place.
<4,F32>
|
related |
Uniformly scale components in place.
<4,F32>
|
related |
In place piecewise multiply operator.
|
related |
In place piecewise multiply operator.
|
related |
In place piecewise scale operator.
|
related |
Return sum of Vectors.
<4,T>
|
related |
Return sum of Vectors.
<4,F32>
|
related |
add operation
|
related |
add operation
|
related |
Add to Vector in place.
<4,T>
|
related |
Add to Vector in place.
<4,F32>
|
related |
In place add operator.
|
related |
In place add operator.
Negate the Vector.
<4,T>
|
related |
Return difference of Vectors.
<4,T>
|
related |
Negate the Vector.
<4,F32>
|
related |
Return difference of Vectors.
<4,F32>
Negate operation.
|
related |
subtract operation
|
related |
subtract operation
|
related |
Subtract from Vector in place.
<4,T>
|
related |
Subtract from Vector in place.
<4,F32>
|
related |
In place subtract operator.
|
related |
In place subtract operator.
|
related |
Inverse Scale operation.
|
related |
equality test
Return text describing the Vector's state.
<4,F32>
Return text describing the Vector's state.
<4,T>
Print to a string.
Referenced by fe::Vector< 4, t_moa_real >::print().
Set components.
<4,T>
|
related |
Set components.
<4,T>
|
related |
Set components.
<4,T>
|
related |
Set components.
<4,T>
Set components.
<4,F32>
Set components.
<4,F32>
|
related |
Set components.
<4,F32>
|
related |
Set components.
<4,F32>
|
related |
Set components.
<4,F32>
Set all the elements to zero.
|
related |
Set all components to the same value.
<4,F32>
|
related |
Set all the elements to the given value.
|
related |
Set indexed component.
<4,T>
|
related |
Set indexed component.
<4,F32>
|
related |
Set the value at the index.
|
related |
Return the number of elements.
<4,T>
|
related |
Return the number of elements.
<4,F32>
|
related |
Return the number of elements.
Referenced by fe::Box< 2, I32 >::print().
Return the Vector direction scaled to unit length.
<4,T>
Return the Vector direction scaled to unit length.
<4,F32>
Return vector scaled to unit length.
Return the Vector direction scaled to unit length with zero check.
<4,T>
|
related |
Return the Vector direction scaled to unit length with zero check.
<4,F32>
Return vector scaled to unit length with zero check.
1.8.13