Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
slogdet.hpp File Reference

Signed or complex-phase logarithmic determinants from reusable LU. More...

#include "lu.hpp"
Include dependency graph for slogdet.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  uni20::linalg::LogDeterminant< S >
 Determinant represented without multiplying diagonal magnitudes. More...
 
struct  uni20::linalg::LogDeterminantResult< S >
 Logarithmic determinant with numerical diagnostics. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::linalg
 

Functions

template<class... Args>
requires requires(Args&&... args) { slogdet_with_info(std::forward<Args>(args)...); }
auto uni20::linalg::slogdet (Args &&... args)
 Return the log-determinant, including conventional zero for singular matrices.
 
template<RankedTensorView< 2 > A, class... Options>
requires RealOrComplex<tensor_element_t<A>>
auto uni20::linalg::slogdet_with_info (A const &a, Options const &... options)
 Factor and reduce with the default backends for the owned host workspace.
 
template<KernelBackendSelector Backend, RankedTensorView< 2 > A>
requires RealOrComplex<tensor_element_t<A>>
auto uni20::linalg::slogdet_with_info (Backend &&backend, A const &a, Precision p, SolveOptions< make_real_t< tensor_element_t< A > > > const &options={})
 Factor once at explicit finite precision and return a recoverable log-determinant.
 
template<KernelBackendSelector Backend, RankedTensorView< 2 > A>
requires RealOrComplex<tensor_element_t<A>>
auto uni20::linalg::slogdet_with_info (Backend &&backend, A const &a, SolveOptions< make_real_t< tensor_element_t< A > > > const &options={})
 Factor once at native or inferred finite precision and reduce its diagonal.
 
template<RealOrComplex S>
LogDeterminantResult< S > uni20::linalg::slogdet_with_info (LuFactorization< S > const &factor)
 Reduce completed factors in O(n), without refactoring or changing them.
 

Detailed Description

Signed or complex-phase logarithmic determinants from reusable LU.