12#include "detray/algebra/generic/algorithms/matrix/determinant/hard_coded.hpp"
13#include "detray/algebra/generic/algorithms/matrix/determinant/partial_pivot_lud.hpp"
14#include "detray/algebra/generic/algorithms/matrix/inverse/hard_coded.hpp"
15#include "detray/algebra/generic/algorithms/matrix/inverse/partial_pivot_lud.hpp"
17namespace detray::algebra::generic {
23template <std::size_t N,
typename... Args>
30template <
typename... Args>
37template <concepts::square_matrix M>
44template <std::size_t N,
typename... Args>
51template <
typename... Args>
58template <concepts::square_matrix M>
matrix::determinant::hard_coded< Args... > type
Direct determinant implementation selected for rank two.
Definition algorithm_selector.hpp:33
Get the type of determinant algorithm according to matrix dimension.
Definition algorithm_selector.hpp:24
matrix::determinant::partial_pivot_lud< Args... > type
Determinant implementation selected for rank N.
Definition algorithm_selector.hpp:26
matrix::inverse::hard_coded< Args... > type
Direct inversion implementation selected for rank two.
Definition algorithm_selector.hpp:54
Get the type of inversion algorithm according to matrix dimension.
Definition algorithm_selector.hpp:45
matrix::inverse::partial_pivot_lud< Args... > type
Inversion implementation selected for rank N.
Definition algorithm_selector.hpp:47
"Determinant getter", assuming a N X N matrix
Definition hard_coded.hpp:23
Compute a determinant from an LU decomposition with partial pivoting.
Definition partial_pivot_lud.hpp:21
"inverse getter", assuming a N X N matrix
Definition hard_coded.hpp:24
Invert a square matrix using LU decomposition with partial pivoting.
Definition partial_pivot_lud.hpp:21