cotila  1.2.1
A compile time linear algebra system
Functions
math.h File Reference

Mathematical operations on matrices. More...

#include <algorithm>
#include <cotila/scalar/math.h>
#include <cotila/vector/vector.h>
#include <cotila/vector/math.h>
#include <cotila/matrix/matrix.h>
#include <cotila/matrix/utility.h>
#include <cotila/detail/assert.h>

Go to the source code of this file.

Functions

template<typename T , std::size_t M, std::size_t N>
constexpr matrix< T, M, N > cotila::conj (const matrix< T, M, N > &m)
 computes the elementwise complex conjugate More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< detail::remove_complex_t< T >, M, N > cotila::real (const matrix< T, M, N > &m)
 computes the elementwise real More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< detail::remove_complex_t< T >, M, N > cotila::imag (const matrix< T, M, N > &m)
 computes the elementwise imag More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< T, N, M > cotila::transpose (const matrix< T, M, N > &m)
 computes the transpose More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< T, N, M > cotila::hermitian (const matrix< T, M, N > &m)
 computes the Hermitian transpose More...
 
template<typename T , std::size_t M, std::size_t N, std::size_t P>
constexpr matrix< T, M, P > cotila::matmul (const matrix< T, M, N > &a, const matrix< T, N, P > &b)
 computes the matrix product More...
 
template<typename T , std::size_t M, std::size_t N, std::size_t P, std::size_t Q>
constexpr matrix< T, M *P, N *Q > cotila::kron (const matrix< T, M, N > &a, const matrix< T, P, Q > &b)
 Computes the kronecker tensor product. More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr T cotila::macs (const matrix< T, M, N > &m)
 Computes the maximum absolute column sum norm. More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr T cotila::mars (const matrix< T, M, N > &m)
 Computes the maximum absolute row sum norm. More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< T, M, N > cotila::rref (const matrix< T, M, N > &m)
 Compute the reduced row echelon form. More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr matrix< T, M, N > cotila::rref (const matrix< T, M, N > &m, T tolerance)
 Compute the reduced row echelon form. More...
 
template<typename T , std::size_t M, std::size_t N>
constexpr std::size_t cotila::rank (const matrix< T, M, N > &m)
 Compute the rank. More...
 
template<typename T , std::size_t M>
constexpr T cotila::det (const matrix< T, M, M > &m)
 Compute the determinant. More...
 
template<typename T , std::size_t M>
constexpr matrix< T, M, M > cotila::inverse (const matrix< T, M, M > &m)
 computes the matrix inverse More...
 
template<typename T , std::size_t M>
constexpr T cotila::trace (const matrix< T, M, M > &m)
 computes the trace More...