|
template<int M, int N, typename T > |
constexpr matMxN< M, N, T > | gl::operator+ (const matMxN< M, N, T > &A, const matMxN< M, N, T > &B) |
|
template<int M, int N, typename T > |
constexpr matMxN< M, N, T > | gl::operator- (const matMxN< M, N, T > &A, const matMxN< M, N, T > &B) |
|
template<int M, int N, typename T > |
constexpr matMxN< M, N, T > | gl::operator- (const matMxN< M, N, T > &A) |
|
template<int M, int N, typename T > |
constexpr matMxN< M, N, T > | gl::operator* (T x, const matMxN< M, N, T > &A) |
|
template<int M, int N, typename T > |
constexpr matMxN< M, N, T > | gl::operator* (const matMxN< M, N, T > &A, T x) |
|
template<int M, int N, typename T > |
constexpr vecN< M, T > | gl::operator* (const matMxN< M, N, T > &A, const vecN< N, T > &x) |
|
template<int M, int N, int O, typename T > |
constexpr matMxN< M, O, T > | gl::operator* (const matMxN< M, N, T > &A, const matMxN< N, O, T > &B) |
|
template<int M, int N, typename T > |
constexpr matMxN< N, M, T > | gl::transpose (const matMxN< M, N, T > &A) |
|
template<typename T > |
constexpr T | gl::determinant (const matMxN< 2, 2, T > &A) |
|
template<typename T > |
constexpr T | gl::determinant (const matMxN< 3, 3, T > &A) |
|
template<typename T > |
constexpr T | gl::determinant (const matMxN< 4, 4, T > &A) |
|
template<typename T > |
constexpr matMxN< 2, 2, T > | gl::inverse (const matMxN< 2, 2, T > &A) |
|
template<typename T > |
constexpr matMxN< 3, 3, T > | gl::inverse (const matMxN< 3, 3, T > &A) |
|
template<typename T > |
constexpr matMxN< 4, 4, T > | gl::inverse (const matMxN< 4, 4, T > &A) |
|
template<int M, int N, typename T > |
constexpr T | gl::norm2_2 (const matMxN< M, N, T > &A) |
|
template<int M, int N, typename T > |
std::ostream & | gl::operator<< (std::ostream &os, const matMxN< M, N, T > &A) |
|