akreon-linalg
Fixed-size linear algebra and numerical methods in C++26.
Loading...
Searching...
No Matches
operator_traits.hpp File Reference
Include dependency graph for operator_traits.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  linalg::space_traits< SymmetricMatrix< Mat > >
 type traits definition for symmetric matrices (subspace of R^n) More...
 
struct  linalg::coordinate_map< SymmetricMatrix< Mat > >
 
struct  linalg::mat_traits< Endomorphism< Mat, Derived > >
 mat type traits definition for linear operator More...
 
struct  linalg::mat_traits< SymmetricOperator< Mat, Derived > >
 mat type traits definition for symmetric operator More...
 
struct  linalg::mat_traits< SymmetricMatrix< Mat > >
 mat type traits definition for symmetric matrices More...
 
struct  linalg::mat_traits< Hessenberg< Mat > >
 mat type traits definition for hessenberg matrices More...
 
struct  linalg::mat_traits< Hessian< Mat, Type > >
 mat type traits definition for hessian matrices More...
 
struct  linalg::mat_traits< LDL< Mat > >
 mat type traits definition for LDL More...
 
struct  linalg::mat_traits< QuadraticRep< Mat, Circ > >
 mat type traits definition for P(x) More...
 
struct  linalg::mat_traits< Cholesky< Mat > >
 mat type traits definition for Cholesky More...
 
struct  linalg::vector_traits< Endomorphism< Mat, Derived > >
 vec type traits for linear operator More...
 
struct  linalg::vector_traits< SymmetricOperator< Mat, Derived > >
 vec type traits for symmetric operator More...
 
struct  linalg::vector_traits< SymmetricMatrix< Mat > >
 vec type traits for symmetric matrices More...
 
struct  linalg::vector_traits< Hessenberg< Mat > >
 vec type traits for hessenberg matrices More...
 
struct  linalg::vector_traits< Hessian< Mat, Type > >
 vec type traits for hessian matrices More...
 
struct  linalg::vector_traits< LDL< Mat > >
 vec type traits for LDL matrices More...
 
struct  linalg::vector_traits< QuadraticRep< Mat, Circ > >
 vec type traits for quadratic rep matrices More...
 
struct  linalg::vector_traits< Cholesky< Mat > >
 vec type traits for cholesky matrices More...
 
struct  linalg::is_symmetric_matrix_space< Space >
 symmetric matrix space type trait More...
 
struct  linalg::is_symmetric_matrix_space< SymmetricMatrix< Mat > >
 symmetric matrix space type trait More...
 
struct  linalg::operator_traits< Matrix< T, Rows, Cols > >
 
struct  linalg::operator_traits< Operator >
 

Namespaces

namespace  linalg
 

Concepts

concept  linalg::LinearOperator
 
concept  linalg::EndomorphicOperator
 

Typedefs

template<class Operator >
using linalg::operator_traits_t = operator_traits< remove_cvref_t< Operator > >
 
template<class Operator >
using linalg::operator_scalar_t = typename operator_traits_t< Operator >::scalar_type
 
template<class Operator >
using linalg::operator_domain_t = typename operator_traits_t< Operator >::domain_type
 
template<class Operator >
using linalg::operator_codomain_t = typename operator_traits_t< Operator >::codomain_type
 
template<class Operator >
using linalg::operator_matrix_t = typename operator_traits_t< Operator >::matrix_type
 

Enumerations

enum struct  linalg::SymmetricOperatorType {
  linalg::INV = 0 , linalg::IND , linalg::PSD , linalg::PD ,
  linalg::NSD , linalg::ND
}
 simple enum to define symmetric matrix types INV = Invalid IND = Indefinite PSD = Positive Semidefinite PD = Positive Definite NSD = Negative Semidefinite ND = Negative Definite More...
 
enum struct  linalg::DifferentialType { linalg::PUSHFORWARD , linalg::PULLBACK }
 differential type More...
 

Functions

template<MatrixContainer Mat>
constexpr auto linalg::apply (const Mat &matrix, const operator_domain_t< Mat > &vector) -> operator_codomain_t< Mat >
 

Variables

template<typename Space >
constexpr bool linalg::is_symmetric_matrix_space_v
 symmetric matrix space type trait var