Skip to main content

multiplicative_sum_connectivity

Function multiplicative_sum_connectivity 

Source
pub fn multiplicative_sum_connectivity(graph: &Graph) -> IgraphResult<f64>
Expand description

Compute the multiplicative sum-connectivity index.

Πsc(G) = Π_{(u,v)∈E} 1/√(du+dv)

Edges with du+dv == 0 are skipped. Self-loops are skipped. Returns 1.0 for edgeless graphs (empty product).

Uses log-sum to avoid overflow: Πsc = exp(-½ Σ ln(du+dv)).

§Examples

use rust_igraph::{Graph, multiplicative_sum_connectivity};

// K_3: 3 edges, d=(2,2), each 1/√4 = 1/2 → (1/2)³ = 1/8
let g = Graph::from_edges(&[(0,1),(1,2),(0,2)], false, Some(3)).unwrap();
assert!((multiplicative_sum_connectivity(&g).unwrap() - 0.125).abs() < 1e-10);