akreon-linalg
Fixed-size linear algebra and numerical methods in C++26.
Loading...
Searching...
No Matches
linalg::SymmetricMatrixInverse< MatIn > Struct Template Reference

Symmetric matrix inverse via LDL^T. More...

#include <matrix_inverse.hpp>

Public Types

using Mat = linalg::remove_cvref_t< MatIn >
 
using T = matrix_scalar_t< Mat >
 

Public Member Functions

constexpr auto operator() (const Mat &A) const
 Compute the inverse by solving against identity columns.
 
constexpr auto apply (const Mat &A) const
 Compute the inverse by solving against identity columns.
 

Static Public Attributes

static constexpr std::size_t N = mat_rows_v<Mat>
 

Detailed Description

template<SquareMatrix MatIn>
struct linalg::SymmetricMatrixInverse< MatIn >

Symmetric matrix inverse via LDL^T.

Template Parameters
MatInSquare symmetric input matrix type.

Definition at line 65 of file matrix_inverse.hpp.

Member Typedef Documentation

◆ Mat

template<SquareMatrix MatIn>
using linalg::SymmetricMatrixInverse< MatIn >::Mat = linalg::remove_cvref_t<MatIn>

Definition at line 66 of file matrix_inverse.hpp.

◆ T

template<SquareMatrix MatIn>
using linalg::SymmetricMatrixInverse< MatIn >::T = matrix_scalar_t<Mat>

Definition at line 67 of file matrix_inverse.hpp.

Member Function Documentation

◆ apply()

template<SquareMatrix MatIn>
constexpr auto linalg::SymmetricMatrixInverse< MatIn >::apply ( const Mat &  A) const
inlineconstexpr

Compute the inverse by solving against identity columns.

Parameters
[in]ASquare symmetric input matrix.
Returns
Tuple (Mat inverse, NumericalEvent event); inverse is complete only when event is NONE.

Definition at line 87 of file matrix_inverse.hpp.

References linalg::constexpr_abs(), linalg::FACTORIZATION_FAILED, linalg::is_fatal_event(), linalg::mat_rows_v, linalg::SymmetricMatrixInverse< MatIn >::N, and linalg::NONE.

Referenced by linalg::SymmetricMatrixInverse< MatIn >::operator()().

◆ operator()()

template<SquareMatrix MatIn>
constexpr auto linalg::SymmetricMatrixInverse< MatIn >::operator() ( const Mat &  A) const
inlineconstexpr

Compute the inverse by solving against identity columns.

Parameters
[in]ASquare symmetric input matrix.
Returns
Tuple (Mat inverse, NumericalEvent event); inverse is complete only when event is NONE.

Definition at line 78 of file matrix_inverse.hpp.

References linalg::SymmetricMatrixInverse< MatIn >::apply(), and linalg::mat_rows_v.

Member Data Documentation

◆ N

template<SquareMatrix MatIn>
constexpr std::size_t linalg::SymmetricMatrixInverse< MatIn >::N = mat_rows_v<Mat>
staticconstexpr

Definition at line 68 of file matrix_inverse.hpp.

Referenced by linalg::SymmetricMatrixInverse< MatIn >::apply().


The documentation for this struct was generated from the following file: