|
| template<typename T> |
| constexpr NdArray< T, 2, 2 > | superdex::Cofactor (NdArray< T, 2, 2 > const &mat) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Cofactor (NdArray< T, 3, 3 > const &mat) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Cofactor3x3 (NdArray< Simd< T, 4 >, 3 > const &mat) |
| template<typename T> |
| constexpr void | superdex::Cofactor4x4 (T const m[16], T adjOut[16]) |
| template<typename T> |
| Simd< T, 4 > | superdex::CofactorSym2x2 (Simd< T, 4 > const &mat) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 2 > | superdex::CofactorSym3x3 (NdArray< Simd< T, 4 >, 2 > const &mat) |
| template<typename T, size_t N, size_t M> |
| constexpr T | superdex::Colon (NdArray< T, N, M > const &A, NdArray< T, N, M > const &B) |
| template<typename T> |
| T | superdex::Colon3x3 (NdArray< Simd< T, 4 >, 3 > const &A, NdArray< Simd< T, 4 >, 3 > const &B) |
| template<typename T> |
| constexpr T | superdex::Det (NdArray< T, 2, 2 > const &A) |
| template<typename T> |
| constexpr T | superdex::Det (NdArray< T, 3, 3 > const &A) |
| template<typename T> |
| constexpr T | superdex::Det (NdArray< T, 4, 4 > const &A) |
| template<typename T> |
| T | superdex::Det2x2 (Simd< T, 4 > const &A) |
| template<typename T, size_t N> |
| T | superdex::Det3x3 (NdArray< Simd< T, 4 >, N > const &A) |
| template<typename T> |
| constexpr T | superdex::Det4x4 (T const m[16]) |
| template<size_t N, typename T> |
| constexpr NdArray< T, N, N > | superdex::DiagonalMatrix (NdArray< T, N > const &diagonalVector) |
| template<size_t N, typename T> |
| constexpr NdArray< T, N, N > | superdex::DiagonalMatrix (T valueOnDiagonal) |
| template<typename T, size_t N> |
| constexpr NdArray< T, N, N > | superdex::DNormalize (NdArray< T, N > const &v) |
| template<typename T, size_t N> |
| constexpr NdArray< T, N, N > | superdex::DNormalize (NdArray< T, N > const &v, T sqrNorm) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::DNormalize3 (Simd< T, 4 > const &v) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Dot (NdArray< T, 3, 3 > const &a, NdArray< T, 3, 3 > const &b) |
| template<typename T, size_t N, size_t M, size_t L> |
| constexpr NdArray< T, N, L > | superdex::Dot (NdArray< T, N, M > const &a, NdArray< T, M, L > const &B) |
| template<typename T> |
| Simd< T, 4 > | superdex::Dot2x2 (Simd< T, 4 > const &a, Simd< T, 4 > const &b) |
| template<typename T, size_t D0A, size_t D0B> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Dot3x3 (NdArray< Simd< T, 4 >, D0A > const &a, NdArray< Simd< T, 4 >, D0B > const &b) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 4 > | superdex::Dot4x4 (NdArray< Simd< T, 4 >, 4 > const &a, NdArray< Simd< T, 4 >, 4 > const &b) |
| template<typename T> |
| constexpr NdArray< T, 3 > | superdex::DotMatVec (NdArray< T, 3, 3 > const &a, NdArray< T, 3 > const &b) |
| template<typename T, size_t N, size_t M> |
| constexpr NdArray< T, N > | superdex::DotMatVec (NdArray< T, N, M > const &a, NdArray< T, M > const &b) |
| template<typename T, size_t N, size_t M> |
| constexpr NdArray< T, N > | superdex::DotMatVec (NdArray< T, N, M > const &a, Span< T const > b) |
| template<typename T, size_t N, size_t M> |
| void | superdex::DotMatVec (NdArray< T, N, M > const &a, Span< T const > b, Span< T > out) |
| template<typename T, size_t D0> |
| Simd< T, 4 > | superdex::DotMatVec3x3 (NdArray< Simd< T, 4 >, D0 > const &m, Simd< T, 4 > v) |
| template<size_t N, typename T, size_t D0> |
| Simd< T, 4 > | superdex::DotMatVec3xN (NdArray< Simd< T, 4 >, D0 > const &m, Simd< T, 4 > v) |
| template<typename T> |
| Simd< T, 4 > | superdex::DotMatVec4x4 (NdArray< Simd< T, 4 >, 4 > const &m, Simd< T, 4 > v) |
| template<typename T, size_t N, size_t M> |
| constexpr NdArray< T, M > | superdex::DotVecMat (NdArray< T, N > const &a, NdArray< T, N, M > const &b) |
| template<typename T> |
| Simd< T, 4 > | superdex::DotVecMat2x3 (Simd< T, 4 > v, NdArray< Simd< T, 4 >, 2 > const &m) |
| template<typename T, size_t D0> |
| Simd< T, 4 > | superdex::DotVecMat3x3 (Simd< T, 4 > v, NdArray< Simd< T, 4 >, D0 > const &m) |
| template<typename T> |
| Simd< T, 4 > | superdex::DotVecMat4x4 (Simd< T, 4 > a, NdArray< Simd< T, 4 >, 4 > const &b) |
| template<size_t N, typename T = real> |
| constexpr NdArray< T, N, N > | superdex::Eye () |
| template<typename T> |
| constexpr NdArray< T, 2, 2 > | superdex::Invert (NdArray< T, 2, 2 > const &a) |
| template<typename T> |
| constexpr NdArray< T, 2, 2 > | superdex::Invert (NdArray< T, 2, 2 > const &a, T det) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Invert (NdArray< T, 3, 3 > const &a) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Invert (NdArray< T, 3, 3 > const &a, T det) |
| template<typename T> |
| constexpr NdArray< T, 4, 4 > | superdex::Invert (NdArray< T, 4, 4 > const &A) |
| template<typename T> |
| Simd< T, 4 > | superdex::Invert2x2 (Simd< T, 4 > const &mat, T det) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Invert3x3 (NdArray< Simd< T, 4 >, 3 > const &mat) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Invert3x3 (NdArray< Simd< T, 4 >, 3 > const &mat, Simd< T, 4 > det) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Invert3x3 (NdArray< Simd< T, 4 >, 3 > const &mat, T det) |
| template<typename T> |
| constexpr NdArray< Simd< T, 4 >, 4 > | superdex::Invert4x4 (NdArray< Simd< T, 4 >, 4 > const &A) |
| template<typename T> |
| constexpr void | superdex::InvertRowMajor4x4 (T const m[16], T invOut[16]) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 4 > | superdex::InvertTransformation (NdArray< Simd< T, 4 >, 4 > const &mat) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 4 > | superdex::InvertTransformationTransposed (NdArray< Simd< T, 4 >, 4 > const &mat) |
| template<typename T> |
| constexpr Simd< T, 4 > | superdex::InvSkew3 (NdArray< Simd< T, 4 >, 3 > const &matrix) |
| template<typename T, size_t D0, size_t D1> |
| constexpr auto | superdex::LargestRow (NdArray< T, D0, D1 > const &A, T *sqrNorm=nullptr) |
| auto | superdex::LargestRowColSym2x2 (VSymMatrix2x2r A, Vec4r &outNormSqr) |
| auto | superdex::LargestRowColSym3x3 (VSymMatrix3x3r A, Vec4r &outNormSqr) |
| template<typename T> |
| constexpr T | superdex::Minor4x4 (T const m[16], int r0, int r1, int r2, int c0, int c1, int c2) |
| template<typename T, size_t N, size_t M> |
| T | superdex::Norm (NdArray< T, N, M > const &a) |
| template<typename T, size_t D0, int D1, std::enable_if_t< D0 > = 3 && D1 >= 3, superdex::ConceptMatch> |
| T | superdex::Norm3x3 (NdArray< Simd< T, D1 >, D0 > const &a) |
| template<typename T, size_t N, size_t M> |
| constexpr T | superdex::NormSqr (NdArray< T, N, M > const &a) |
| template<typename T, size_t D0, int D1, std::enable_if_t< D0 > = 3 && D1 >= 3, superdex::ConceptMatch> |
| T | superdex::NormSqr3x3 (NdArray< Simd< T, D1 >, D0 > const &a) |
| template<typename T> |
| constexpr NdArray< T, 2, 2 > | superdex::Outer (NdArray< T, 2 > const &a, NdArray< T, 2 > const &b) |
| template<typename T> |
| constexpr NdArray< T, 3, 2 > | superdex::Outer (NdArray< T, 3 > const &a, NdArray< T, 2 > const &b) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Outer (NdArray< T, 3 > const &a, NdArray< T, 3 > const &b) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 2, 2 > | superdex::Outer2 (Simd< T, 4 > const &a, Simd< T, 4 > const &b) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3, 3 > | superdex::Outer3 (NdArray< Simd< T, 4 >, 3 > const &mat, Simd< T, 4 > const &vec) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3, 3, 3 > | superdex::Outer3 (NdArray< Simd< T, 4 >, 3 > const &mat0, NdArray< Simd< T, 4 >, 3 > const &mat1) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3, 3, 3 > | superdex::Outer3 (NdArray< Simd< T, 4 >, 3, 3 > const &ten, Simd< T, 4 > const &vec) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Outer3 (Simd< T, 4 > a, Simd< T, 4 > b) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3, 3 > | superdex::Outer3 (Simd< T, 4 > const &vec, NdArray< Simd< T, 4 >, 3 > const &mat) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 3, 3, 3 > | superdex::Outer3 (Simd< T, 4 > const &vec, NdArray< Simd< T, 4 >, 3, 3 > const &ten) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 2 > | superdex::OuterSym3 (Simd< T, 4 > a, Simd< T, 4 > b) |
| template<typename T> |
| void | superdex::PseudoInvert (NdArray< T, 3, 2 > const &a, NdArray< T, 2, 3 > *outInv, T *outDet) |
| template<typename T> |
| constexpr NdArray< T, 3, 3 > | superdex::Skew (NdArray< T, 3 > const &v) |
| template<typename T> |
| constexpr NdArray< Simd< T, 4 >, 3 > | superdex::Skew3 (Simd< T, 4 > const &vector) |
| template<typename T> |
| constexpr NdArray< T, 2, 2 > | superdex::SymMatrix2x2 (T a00, T a01, T a11) |
| template<typename T, size_t DimTotal = 3, size_t DimTrace = DimTotal> |
| constexpr T | superdex::Trace (NdArray< T, DimTotal, DimTotal > const &mat) |
| template<typename T> |
| constexpr T | superdex::Trace2x2 (Simd< T, 4 > const &mat) |
| template<typename T> |
| constexpr T | superdex::Trace3x3 (NdArray< Simd< T, 4 >, 3 > const &mat) |
| template<typename T, size_t N, size_t M> |
| constexpr NdArray< T, M, N > | superdex::Transpose (NdArray< T, N, M > const &mat) |
| template<typename T> |
| Simd< T, 4 > | superdex::Transpose2x2 (Simd< T, 4 > const &m) |
| template<typename T, size_t D0> |
| NdArray< Simd< T, 4 >, 3 > | superdex::Transpose3x3 (NdArray< Simd< T, 4 >, D0 > const &m) |
| template<typename T> |
| NdArray< Simd< T, 4 >, 4 > | superdex::Transpose4x4 (NdArray< Simd< T, 4 >, 4 > const &m) |
| template<typename T, size_t N> |
| Simd< T, 4 > | superdex::VDet3x3 (NdArray< Simd< T, 4 >, N > const &A) |
| template<size_t N, typename T> |
| NdArray< Simd< T, 4 >, N > | superdex::VDiagonalMatrix (Simd< T, 4 > const &diagonalVector) |
| template<size_t N, typename T> |
| NdArray< Simd< T, 4 >, N > | superdex::VDiagonalMatrix (T valueOnDiagonal) |
| template<typename T = real> |
| NdArray< Simd< T, 4 >, 3, 3 > | superdex::VDSkew3 () |
| template<size_t N, typename T = real> |
| NdArray< Simd< T, 4 >, N > | superdex::VEye () |