num::randommat::factorize¶
Defined in header <linear/graph/randommat/approxchol.hpp>
template <typename Float = double, std::integral Index = num::idx, typename Rng = rng64,
typename Queue = structures::basic_degree_queue<Index>>
cholesky_factor<Float, Index>
factorize(const adjacency_list<Float, Index> &input_G,
std::type_identity_t<Index> samples = 1, bool exact_mode = false,
Rng *rng = nullptr, clique_sampler sampler = clique_sampler::gks_2023,
std::optional<Index> pinned_vertex = std::nullopt); // (1)
template <typename Float = double, std::integral Index = num::idx, typename Rng = rng64,
typename Queue = structures::basic_degree_queue<Index>,
detail::gks_2023_algorithm Algorithm = gao_kyng_spielman_2023::ac_t>
cholesky_factor<Float, Index>
factorize(const adjacency_list<Float, Index> &G, Algorithm, Rng *rng = nullptr,
std::optional<Index> pinned_vertex = std::nullopt); // (2)
(1) Factorize a multigraph Laplacian into approximate or exact Cholesky factor \(L L^T\).
(2) Apply the Gao--Kyng--Spielman AC/AC2 clique sampler explicitly.