|
|
| Matrix ()=default |
| | Create matrix with all elements set to 0.
|
| |
|
| ~Matrix ()=default |
| | Default destructor.
|
| |
| | Matrix (const Matrix< T, m, n > &mat)=default |
| | Default copy constructor. More...
|
| |
| | Matrix (Matrix< T, m, n > &&mat)=default |
| | Default move constructor. More...
|
| |
| Matrix< T, m, n > & | operator= (const Matrix< T, m, n > &mat)=default |
| | Default assignment operator. More...
|
| |
| Matrix< T, m, n > & | operator= (Matrix< T, m, n > &&mat)=default |
| | Default move assignment operator. More...
|
| |
| constexpr | Matrix (std::initializer_list< std::initializer_list< T >> matrix_data) |
| | Create matrix. Throws invalid argument if passed data doesn't match with amount of rows or columns. More...
|
| |
| constexpr std::size_t | get_m () const noexcept |
| | Get the amount of rows of the matrix. More...
|
| |
| constexpr std::size_t | get_n () const noexcept |
| | Get the amount of cols of the matrix. More...
|
| |
| constexpr std::array< T, n > & | operator[] (std::size_t pos) noexcept |
| | Get row of matrix at pos. No bounds checkin. More...
|
| |
| constexpr const std::array< T, n > & | operator[] (std::size_t pos) const noexcept |
| | Get row of matrix at pos. No bounds checkin. More...
|
| |
| constexpr std::array< T, n > & | at (std::size_t pos) |
| | Get row of matrix at pos. Throw out of range exception if out of range. More...
|
| |
| constexpr const std::array< T, n > & | at (std::size_t pos) const |
| | Get row of matrix at pos. Throw out of range exception if out of range. More...
|
| |
| constexpr bool | fuzzy_equal (const Matrix< T, m, n > &mat, T fuzz) const noexcept |
| | Fuzzy compare 2 matrices. More...
|
| |
| constexpr bool | operator== (const Matrix< T, m, n > &mat) noexcept |
| | Compare two matrices. More...
|
| |
| constexpr bool | operator!= (const Matrix< T, m, n > &mat) noexcept |
| | Compare two matrices. More...
|
| |
| constexpr void | operator+= (T scalar) noexcept |
| | Add a scalar from every element of the matrix. More...
|
| |
| constexpr void | operator-= (T scalar) noexcept |
| | Subtract a scalar from every element of the matrix. More...
|
| |
| constexpr void | operator*= (T scalar) noexcept |
| | Multiply every element of the matrix with a scalar. More...
|
| |
| constexpr void | operator/= (T scalar) noexcept |
| | Divide every element of the matrix with a scalar. More...
|
| |
| constexpr void | operator+= (const Matrix< T, m, n > &mat) noexcept |
| | Add a matrix to another matrix. More...
|
| |
| constexpr void | operator-= (const Matrix< T, m, n > &mat) noexcept |
| | Subtract a matrix to another matrix. More...
|
| |
| constexpr Matrix< T, m, n > | operator+ (const Matrix< T, m, n > &mat) const noexcept |
| | Add a matrix to another matrix. Returns a new matrix. More...
|
| |
| constexpr Matrix< T, m, n > | operator- (const Matrix< T, m, n > &mat) const noexcept |
| | Subtract a matrix from another matrix. Returns a new matrix. More...
|
| |
| template<std::size_t p> |
| constexpr Matrix< T, m, p > | operator* (const Matrix< T, n, p > &mat) const noexcept |
| | Multiply a matrix with the current matrix. More...
|
| |
| template<std::size_t p> |
| constexpr Matrix< T, m, n+p > | horizontal_augment (const Matrix< T, m, p > &mat) const noexcept |
| | Right augment the current matrix with the provided matrix. More...
|
| |
| template<std::size_t p> |
| constexpr Matrix< T, m+p, n > | vertical_augment (const Matrix< T, p, n > &mat) const noexcept |
| | Bottom augment the current matrix with the provided matrix. More...
|
| |
| template<std::size_t y, std::size_t x, std::size_t p, std::size_t q> |
| constexpr Matrix< T, p, q > | slice () const noexcept |
| | Create a new matrix from the current one where some columns and rows are sliced of. More...
|
| |
| constexpr Matrix< T, n, m > | transpose () const noexcept |
| | Transpose the matrix. More...
|
| |
| constexpr std::optional< Matrix< T, m, n > > | inverse () const noexcept |
| | Get the inverse of the matrix, implemented by using gauss-jordan. This operation is only available for square matrices/. More...
|
| |
| constexpr T | get_magnitude () const noexcept |
| | Get the magnitude of the matrix. This is equivalent to the euclidean distance. More...
|
| |
| std::string | str () const |
| | Get a string representation. More...
|
| |
template<typename T, std::size_t m, std::size_t n>
class HLR::Kinematics::Matrix< T, m, n >
Create a matrix with numerical values.
- Template Parameters
-
| T | The numerical type to elements have. |
| m | Amount of rows |
| n | Amount of columns |