pub fn digraph_transitivity<G>(graph: G) -> f64where
G: NodeIndexable + IntoNodeIdentifiers + IntoNeighborsDirected + Send + Sync,
G::NodeId: Hash + Eq + Send + Sync,
Expand description
Compute the transitivity of a directed graph.
The transitivity of a directed graph is 3*number of triangles/number of all possible triangles. A triangle is a connected triple of nodes. Different edge orientations counts as different triangles.
This function is multithreaded and will launch a thread pool with threads equal to the number
of CPUs by default. You can tune the number of threads with the RAYON_NUM_THREADS
environment variable. For example, setting RAYON_NUM_THREADS=4
would limit the thread pool
to 4 threads.
The function implicitly assumes that there are no parallel edges or self loops. It may produce incorrect/unexpected results if the input graph has self loops or parallel edges.