akreon-linalg
Fixed-size linear algebra and numerical methods in C++26.
Loading...
Searching...
No Matches
linalg::MatrixContainer Concept Reference

Trait-registered, fixed-shape matrix over a supported scalar field. More...

#include <matrix_concepts.hpp>

Concept definition

template<class Mat>
concept linalg::MatrixContainer = requires {
{ mat_rows_v<Mat> } -> std::convertible_to<std::size_t>;
{ mat_cols_v<Mat> } -> std::convertible_to<std::size_t>;
Trait-registered, fixed-shape matrix over a supported scalar field.
constexpr std::size_t mat_rows_v
Registered compile-time row count after cv/ref normalization.

Detailed Description

Trait-registered, fixed-shape matrix over a supported scalar field.

Satisfaction requires mat_traits<remove_cvref_t<Mat>> to provide a field scalar plus compile-time row and column counts. This is intentionally a metadata/container classification; it does not by itself require indexing, arithmetic, symmetry, or coordinate-space semantics. Algorithms that need those operations express the additional requirements at their own boundary.

Definition at line 26 of file matrix_concepts.hpp.