numerics 0.1.0
Loading...
Searching...
No Matches
concepts.hpp File Reference

Storage and operator concepts for numerical routines. More...

#include "core/types.hpp"
#include "core/vector.hpp"
#include <concepts>
#include <type_traits>

Go to the source code of this file.

Namespaces

namespace  num
 

Concepts

concept  num::VectorLike
 Indexed real-valued vector interface.
 
concept  num::VecField
 Any object exposing its contiguous real storage as a Vector via .vec(). Satisfied by Vector itself, ScalarField2D, ScalarField3D, ... – lets time integrators and solvers operate on fields without depending on the fields/ module.
 
concept  num::MutableVectorLike
 Mutable indexed real-valued vector interface.
 
concept  num::ContiguousVectorLike
 Contiguous real-valued vector storage.
 
concept  num::DenseMatrixLike
 Dense row-major real matrix interface.
 
concept  num::MutableDenseMatrixLike
 Mutable dense row-major real matrix interface.
 
concept  num::ContiguousDenseMatrixLike
 Contiguous dense row-major real matrix storage.
 
concept  num::LinearOperator
 Compile-time contract for the matrix-free product y = A*x.
 
concept  num::SymmetricLinearOperator
 Operator declared to satisfy \(A=A^T\).
 
concept  num::SPDLinearOperator
 Operator declared to satisfy \(x^T A x > 0\) for all nonzero \(x\).
 

Detailed Description

Storage and operator concepts for numerical routines.

Definition in file concepts.hpp.