pub enum GraphAlgorithmParams {
Show 24 variants
PageRank(GraphPageRankParams),
PersonalizedPageRank(GraphPersonalizedPageRankParams),
Bfs(Box<GraphBfsParams>),
Louvain(GraphLouvainParams),
EigenvectorCentrality(GraphEigenvectorCentralityParams),
KatzCentrality(GraphKatzCentralityParams),
Hits(GraphHitsParams),
BetweennessCentrality(GraphBetweennessCentralityParams),
EdgeBetweennessCentrality(GraphEdgeBetweennessCentralityParams),
Sssp(GraphSsspParams),
DegreesAll(GraphDegreesAllParams),
InDegreesAll(GraphInDegreesAllParams),
OutDegreesAll(GraphOutDegreesAllParams),
WeaklyConnectedComponents(GraphWccParams),
StronglyConnectedComponents(GraphSccParams),
TriangleCountAll(GraphTriangleCountAllParams),
CoreNumber(GraphCoreNumberParams),
KCore(GraphKCoreParams),
MinimumSpanningTree(GraphMstParams),
Leiden(GraphLeidenParams),
Ecg(GraphEcgParams),
SpectralModularityMaximization(GraphSpectralClusteringParams),
ForceAtlas2(GraphForceAtlas2Params),
Similarity(GraphSimilarityParams),
}Expand description
Algorithm-specific parameters.
Variants§
PageRank(GraphPageRankParams)
PageRank damping, convergence tolerance, and iteration cap.
PersonalizedPageRank(GraphPersonalizedPageRankParams)
PageRank solver options with a relation-backed personalization vector.
Bfs(Box<GraphBfsParams>)
Breadth-first traversal source, depth bound, predicates, and optional path output.
Louvain(GraphLouvainParams)
Louvain modularity optimization controls.
EigenvectorCentrality(GraphEigenvectorCentralityParams)
Power-iteration tolerance and cap for vertex eigenvector scores.
KatzCentrality(GraphKatzCentralityParams)
Attenuation, constant contribution, and convergence controls for Katz scores.
Hits(GraphHitsParams)
Convergence controls and optional normalization for hub and authority scores.
BetweennessCentrality(GraphBetweennessCentralityParams)
Vertex betweenness seed selection, normalization, and endpoint inclusion.
EdgeBetweennessCentrality(GraphEdgeBetweennessCentralityParams)
Edge betweenness seed selection and normalization.
Sssp(GraphSsspParams)
Single-source weighted shortest-path source and optional distance cutoff.
DegreesAll(GraphDegreesAllParams)
Request both incoming and outgoing degree counts for every vertex.
InDegreesAll(GraphInDegreesAllParams)
Request incoming degree counts for every vertex.
OutDegreesAll(GraphOutDegreesAllParams)
Request outgoing degree counts for every vertex.
WeaklyConnectedComponents(GraphWccParams)
Label vertices connected when edge direction is ignored.
StronglyConnectedComponents(GraphSccParams)
Label vertices mutually reachable along directed edges.
TriangleCountAll(GraphTriangleCountAllParams)
Count triangles incident to every vertex.
CoreNumber(GraphCoreNumberParams)
Select the degree convention used to compute vertex core numbers.
KCore(GraphKCoreParams)
Select the minimum core degree and degree convention for the returned edge list.
MinimumSpanningTree(GraphMstParams)
Request a minimum-weight spanning edge list without additional solver options.
Leiden(GraphLeidenParams)
Leiden community resolution, iteration bound, and random seed.
Ecg(GraphEcgParams)
Ensemble clustering weights, ensemble size, modularity controls, and random seed.
SpectralModularityMaximization(GraphSpectralClusteringParams)
Spectral clustering count, eigensolver tolerance, and random seed.
ForceAtlas2(GraphForceAtlas2Params)
ForceAtlas2 iteration controls and optional per-vertex attributes and initial positions.
Similarity(GraphSimilarityParams)
Explicit vertex-pair relation shared by Jaccard, Sorensen, overlap, and cosine metrics.
Implementations§
Source§impl GraphAlgorithmParams
impl GraphAlgorithmParams
Sourcepub const fn supports_algorithm(&self, algorithm: GraphAlgorithm) -> bool
pub const fn supports_algorithm(&self, algorithm: GraphAlgorithm) -> bool
Whether this payload is valid for an algorithm variant.
Similarity deliberately has one shared payload for four metric
identities. The metric stays in GraphAlgorithm so the pair side
input and its validation cannot drift across copied parameter variants.
Sourcepub fn side_input_ordinals(&self) -> Box<dyn Iterator<Item = usize> + '_>
pub fn side_input_ordinals(&self) -> Box<dyn Iterator<Item = usize> + '_>
Visits every relation-backed side-input ordinal in stable execution order.