3#ifndef pRC_ALGORITHMS_CHOLESKY_H
4#define pRC_ALGORITHMS_CHOLESKY_H
13 requires(R::Dimension == 2) && (R::size(0) == R::size(1))
16 constexpr auto N = R::size(0);
18 decltype(
auto) u = [&a]() ->
decltype(
auto)
27 "Cholesky decomposition failed: Input is not upper "
28 "triangular part of self-adjoint matrix.");
45 "Cholesky decomposition failed: Input is not lower "
46 "triangular part of self-adjoint matrix.");
59 "Cholesky decomposition failed: Input is not "
69 "Unsupported cholesky decomposition hint.");
77 for(
Index k = 0; k <
i; ++k)
83 for(
Index j =
i + 1; j < N; ++j)
85 for(
Index k = 0; k <
i; ++k)
101 "Cholesky decomposition failed: U is not upper "
108 "Cholesky decomposition failed: Product is not self "
120 return forward<X>(a);
Definition concepts.hpp:25
Definition concepts.hpp:19
Definition declarations.hpp:45
int i
Definition gmock-matchers-comparisons_test.cc:603
int x
Definition gmock-matchers-containers_test.cc:376
static void error(Xs &&...args)
Definition log.hpp:14
Hint
Definition hint.hpp:9
Definition cholesky.hpp:10
static constexpr auto sqrt(T const &a)
Definition sqrt.hpp:11
static constexpr Conditional< C, RemoveConstReference< X >, RemoveConst< X > > copy(X &&a)
Definition copy.hpp:13
static constexpr auto upperTriangular(X &&a)
Definition upper_triangular.hpp:14
Size Index
Definition basics.hpp:32
std::remove_reference_t< T > RemoveReference
Definition basics.hpp:41
static constexpr auto innerProduct(TA const &a, TB const &b)
Definition inner_product.hpp:11
static constexpr auto cholesky(X &&a)
Definition cholesky.hpp:14
static constexpr auto transpose(JacobiRotation< T > const &a)
Definition jacobi_rotation.hpp:306
static constexpr auto adjoint(JacobiRotation< T > const &a)
Definition jacobi_rotation.hpp:312
static constexpr auto isLowerTriangular(X &&a, TT const &tolerance=NumericLimits< TT >::tolerance())
Definition is_lower_triangular.hpp:14
static constexpr auto isApprox(XE &&expected, XA &&approx, TT const &tolerance=NumericLimits< TT >::tolerance())
Definition is_approx.hpp:14
constexpr auto cDebugLevel
Definition config.hpp:48
static constexpr auto range(F &&f, Xs &&...args)
Definition range.hpp:18
static constexpr decltype(auto) real(X &&a)
Definition real.hpp:12
static constexpr auto isUpperTriangular(X &&a, TT const &tolerance=NumericLimits< TT >::tolerance())
Definition is_upper_triangular.hpp:14
static constexpr auto zero()
Definition zero.hpp:12
static constexpr decltype(auto) eval(X &&a)
Definition eval.hpp:12
static constexpr auto norm(T const &a)
Definition norm.hpp:12
static constexpr auto isSelfAdjoint(X &&a, TT const &tolerance=NumericLimits< TT >::tolerance())
Definition is_self_adjoint.hpp:14