Note
This is the documentation for the current state of the development branch of rustworkx. The documentation or APIs here can change prior to being released.
rustworkx.digraph_distance_matrix#
- digraph_distance_matrix(graph, /, parallel_threshold=300, as_undirected=False, null_value=0.0)#
Get the distance matrix for a directed graph
This differs from functions like digraph_floyd_warshall_numpy in that the edge weight/data payload is not used and each edge is treated as a distance of 1.
This function is also multithreaded and will run in parallel if the number of nodes in the graph is above the value of
parallel_threshold
(it defaults to 300). If the function will be running in parallel the env varRAYON_NUM_THREADS
can be used to adjust how many threads will be used.- Parameters:
graph (PyDiGraph) – The graph to get the distance matrix for
parallel_threshold (int) – The number of nodes to calculate the the distance matrix in parallel at. It defaults to 300, but this can be tuned
as_undirected (bool) – If set to
True
the input directed graph will be treat as if each edge was bidirectional/undirected in the output distance matrix.null_value (float) – An optional float that will treated as a null value. This element will be the default in the matrix and represents the absense of a path in the graph. By default this is
0.0
.
- Returns:
The distance matrix
- Return type: