1#ifndef SCRAN_CLUSTER_MULTILEVEL_HPP
2#define SCRAN_CLUSTER_MULTILEVEL_HPP
7#include "raiigraph/raiigraph.hpp"
8#include "sanisizer/sanisizer.hpp"
86 const raiigraph::RNGScope rngs(options.
seed);
89 const auto membership = output.
membership.get();
90 const auto memberships = (options.
report_levels ? output.
levels.get() :
static_cast<igraph_matrix_int_t*
>(NULL));
92 const auto status = igraph_community_multilevel(
101 raiigraph::check_code(status);
117 const auto weight_view = igraph_vector_view(weights.data(), sanisizer::cast<igraph_int_t>(weights.size()));
Graph-based clustering of single-cell data.
Definition build_snn_graph.hpp:22
void cluster_multilevel(const igraph_t *graph, const igraph_vector_t *weights, const ClusterMultilevelOptions &options, ClusterMultilevelResults &output)
Definition cluster_multilevel.hpp:85
Options for cluster_multilevel().
Definition cluster_multilevel.hpp:22
igraph_real_t resolution
Definition cluster_multilevel.hpp:27
bool report_modularity
Definition cluster_multilevel.hpp:42
igraph_uint_t seed
Definition cluster_multilevel.hpp:32
bool report_levels
Definition cluster_multilevel.hpp:37
Result of cluster_multilevel().
Definition cluster_multilevel.hpp:48
raiigraph::RealVector modularity
Definition cluster_multilevel.hpp:67
raiigraph::IntegerVector membership
Definition cluster_multilevel.hpp:53
raiigraph::IntegerMatrix levels
Definition cluster_multilevel.hpp:60