#include <MRSymMatrix3.h>
Public Types | |
using | ValueType = T |
Public Member Functions | |
constexpr | SymMatrix3 () noexcept=default |
template<typename U > | |
constexpr | SymMatrix3 (const SymMatrix3< U > &m) |
constexpr T | trace () const noexcept |
computes trace of the matrix | |
constexpr T | normSq () const noexcept |
computes the squared norm of the matrix, which is equal to the sum of 9 squared elements | |
constexpr T | det () const noexcept |
computes determinant of the matrix | |
constexpr SymMatrix3< T > | inverse () const noexcept |
computes inverse matrix | |
constexpr SymMatrix3< T > | inverse (T det) const noexcept |
computes inverse matrix given determinant of this | |
SymMatrix3 & | operator+= (const SymMatrix3< T > &b) |
SymMatrix3 & | operator-= (const SymMatrix3< T > &b) |
SymMatrix3 & | operator*= (T b) |
SymMatrix3 & | operator/= (T b) |
Static Public Member Functions | |
static constexpr SymMatrix3 | identity () noexcept |
static constexpr SymMatrix3 | diagonal (T diagVal) noexcept |
Public Attributes | |
T | xx = 0 |
zero matrix by default | |
T | xy = 0 |
T | xz = 0 |
T | yy = 0 |
T | yz = 0 |
T | zz = 0 |
Related Symbols | |
(Note that these are not member symbols.) | |
template<typename T > | |
Vector3< T > | operator* (const SymMatrix3< T > &a, const Vector3< T > &b) |
x = a * b | |
template<typename T > | |
SymMatrix3< T > | outerSquare (const Vector3< T > &a) |
x = a * a^T | |
template<typename T > | |
SymMatrix3< T > | outerSquare (T k, const Vector3< T > &a) |
x = k * a * a^T | |
template<typename T > | |
SymMatrix3< T > | crossSquare (const Vector3< T > &a) |
symmetric 3x3 matrix
using MR::SymMatrix3< T >::ValueType = T |
|
constexprdefaultnoexcept |
|
inlineexplicitconstexpr |
|
constexprnoexcept |
computes determinant of the matrix
|
inlinestaticconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
inlineconstexprnoexcept |
computes inverse matrix
|
constexprnoexcept |
computes inverse matrix given determinant of this
|
constexprnoexcept |
computes the squared norm of the matrix, which is equal to the sum of 9 squared elements
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineconstexprnoexcept |
computes trace of the matrix
|
related |
computes a matrix that gives double application of a cross product with given vector M x = [ a, [a, x] ] https://en.wikipedia.org/wiki/Cross_product#Alternative_ways_to_compute
|
related |
x = a * b
|
related |
x = a * a^T
|
related |
x = k * a * a^T
T MR::SymMatrix3< T >::xx = 0 |
zero matrix by default
T MR::SymMatrix3< T >::xy = 0 |
T MR::SymMatrix3< T >::xz = 0 |
T MR::SymMatrix3< T >::yy = 0 |
T MR::SymMatrix3< T >::yz = 0 |
T MR::SymMatrix3< T >::zz = 0 |