|
| constexpr | Matrix () |
| |
| template<typename... Args, std::enable_if_t< sizeof...(Args)==Col &&std::conjunction_v< std::is_convertible< Args, Vector< Row, T > >... >, int > = 0> |
| constexpr | Matrix (Args... basics) |
| |
| template<typename... Args, std::enable_if_t< sizeof...(Args)==Row *Col &&std::conjunction_v< std::is_convertible< Args, T >... >, int > = 0> |
| constexpr | Matrix (Args... elems) |
| |
| constexpr auto | Transpose () const |
| |
| constexpr T | Trace () const |
| |
| constexpr auto | Symmetric () const |
| |
| constexpr auto | Antisymmetric () const |
| |
| const T & | At (const std::size_t i, const std::size_t j) const |
| |
| T & | At (const std::size_t i, const std::size_t j) |
| |
| constexpr const T & | operator() (const std::size_t i, const std::size_t j) const |
| |
| constexpr T & | operator() (const std::size_t i, const std::size_t j) |
| |
| template<typename U > |
| constexpr auto | operator+ (const Matrix< Row, Col, U > &other) const |
| |
| template<typename U > |
| constexpr auto | operator- (const Matrix< Row, Col, U > &other) const |
| |
| constexpr auto | operator- () const |
| |
| template<typename U > |
| constexpr auto | operator* (U scalar) const |
| |
| template<typename U > |
| constexpr auto | operator* (const Vector< Row, U > &v) const |
| |
| template<typename U , std::size_t OtherCol> |
| constexpr auto | operator* (const Matrix< Col, OtherCol, U > &other) const |
| |
| template<typename U > |
| constexpr Matrix & | operator+= (const Matrix< Row, Col, U > &other) |
| |
| template<typename U > |
| constexpr Matrix & | operator-= (const Matrix< Row, Col, U > &other) |
| |
| template<typename U > |
| constexpr Matrix & | operator*= (U scalar) |
| |
| template<typename U > |
| constexpr bool | operator== (const Matrix< Row, Col, U > &other) const |
| |
| template<typename U > |
| constexpr bool | operator!= (const Matrix< Row, Col, U > &other) const |
| |
| template<typename UnitT > |
| Matrix< Row, Col, Quantity< UnitT > > | As () const |
| |
|
| template<std::size_t... Cs> |
| constexpr | Matrix (const std::array< T, Row *Col > &flat, std::index_sequence< Cs... >) |
| |
| template<std::size_t... Rs, std::size_t... Cs> |
| constexpr auto | TransposeImpl (std::index_sequence< Rs... >, std::index_sequence< Cs... >) const |
| |
| template<std::size_t R, std::size_t... Cs> |
| constexpr Vector< Col, T > | MakeTransposeCol (std::index_sequence< Cs... >) const |
| |
| template<std::size_t... Rs> |
| constexpr T | TraceImpl (std::index_sequence< Rs... >) const |
| |
| template<typename U , std::size_t... Cs> |
| constexpr auto | AddImpl (const Matrix< Row, Col, U > &other, std::index_sequence< Cs... >) const |
| |
| template<typename U , std::size_t... Cs> |
| constexpr auto | SubImpl (const Matrix< Row, Col, U > &other, std::index_sequence< Cs... >) const |
| |
| template<std::size_t... Cs> |
| constexpr auto | NegImpl (std::index_sequence< Cs... >) const |
| |
| template<typename U , std::size_t... Cs> |
| constexpr auto | ScaleImpl (U scalar, std::index_sequence< Cs... >) const |
| |
| template<typename UnitT , std::size_t... Cs> |
| constexpr Matrix< Row, Col, Quantity< UnitT > > | AsImpl (std::index_sequence< Cs... >) const |
| |
template<std::size_t Row, std::size_t Col,
typename T>
struct Phyth::Matrix< Row, Col, T >
Definition at line 15 of file Matrix.hpp.