|
template<int n, typename T > |
using | RowVector = Matrix< 1, n, T > |
| RowVector is a 1-row Matrix.
|
|
template<int n, typename T > |
using | SquareMatrix = Matrix< n, n, T > |
| Square matrix is defined as alias with special case of Matrix<n,n,T>
|
|
template<int n, typename T > |
using | Vector = Matrix< n, 1, T > |
| Vector is defined as 1-column Matrix.
|
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | abs (const Mtype &arg) |
| Return absolute value Matrix or Vector.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | adjoint (const Mtype &arg) |
| Return adjoint Matrix.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | conj (const Mtype &arg) |
| Return conjugate Matrix or Vector.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | dagger (const Mtype &arg) |
| Return dagger of Matrix.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | imag (const Mtype &arg) |
| Return imaginary of Matrix or Vector.
|
|
template<typename Mtype1 , typename Mtype2 , std::enable_if_t< Mtype1::is_matrix() &&Mtype2::is_matrix(), int > = 0> |
auto | mul_trace (const Mtype1 &a, const Mtype2 &b) |
| Returns trace of product of two matrices.
|
|
template<typename Mt , std::enable_if_t< Mt::is_matrix(), int > = 0> |
auto | norm (const Mt &rhs) |
| Returns vector norm of Matrix.
|
|
template<typename Mt , std::enable_if_t< Mt::is_matrix() &&Mt::rows()==Mt::columns(), int > = 0> |
Mt | operator* (const Mt &a, const Mt &b) |
| Multiplication operator Square Matrix * Square Matrix.
|
|
template<typename Mtype1 , typename Mtype2 , std::enable_if_t< Mtype1::is_matrix() &&Mtype2::is_matrix(), int > = 0, typename Rtype = hila::mat_x_mat_type<Mtype1, Mtype2>, std::enable_if_t< std::is_same< Mtype1, Rtype >::value, int > = 0> |
Rtype | operator+ (Mtype1 a, const Mtype2 &b) |
| Real micro-optimization Matrix + Matrix - no extra creation of variable and copy.
|
|
template<int n, int m, typename T , typename MT > |
std::string | hila::prettyprint (const Matrix_t< n, m, T, MT > &A, int prec=8) |
| Formats Matrix_t object in a human readable way.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | real (const Mtype &arg) |
| Return real of Matrix or Vector.
|
|
template<typename Mt , std::enable_if_t< Mt::is_matrix(), int > = 0> |
auto | squarenorm (const Mt &rhs) |
| Returns square norm of Matrix.
|
|
template<int n, int m, typename T , typename MT > |
std::string | hila::to_string (const Matrix_t< n, m, T, MT > &A, int prec=8, char separator=' ') |
| Converts Matrix_t object to string.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | trace (const Mtype &arg) |
| Return trace of square Matrix.
|
|
template<typename Mtype , std::enable_if_t< Mtype::is_matrix(), int > = 0> |
auto | transpose (const Mtype &arg) |
| Return transposed Matrix or Vector.
|
|
Definition of Matrix types.
This file contains base matrix type Matrix_t which defines all general matrix type operations Matrix types are Matrix, Vector, RowVector, SquareMatrix of which Matrix is defined as a class and the rest are special cases of the Matrix class.
Definition in file matrix.h.