power¶
-
power
(G, k)[source]¶ Returns the specified power of a graph.
The \(k\)-th power of a simple graph \(G = (V, E)\) is the graph \(G^k\) whose vertex set is \(V\), two distinct vertices \(u,v\) are adjacent in \(G^k\) if and only if the shortest path distance between \(u\) and \(v\) in \(G\) is at most \(k\).
Parameters: - G (graph) – A NetworkX simple graph object.
- k (positive integer) – The power to which to raise the graph \(G\).
Returns: \(G\) to the \(k\)-th power.
Return type: NetworkX simple graph
Raises: ValueError
– If the exponent \(k\) is not positive.NetworkXError
– If G is not a simple graph.
Examples
>>> G = nx.path_graph(4) >>> nx.power(G,2).edges() [(0, 1), (0, 2), (1, 2), (1, 3), (2, 3)] >>> nx.power(G,3).edges() [(0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3)]
A complete graph of order n is returned if k is greater than equal to n/2 for a cycle graph of even order n, and if k is greater than equal to (n-1)/2 for a cycle graph of odd order.
>>> G = nx.cycle_graph(5) >>> nx.power(G,2).edges() == nx.complete_graph(5).edges() True >>> G = nx.cycle_graph(8) >>> nx.power(G,4).edges() == nx.complete_graph(8).edges() True
References
[1] - Bondy, U. S. R. Murty, Graph Theory. Springer, 2008.
Notes
Exercise 3.1.6 of Graph Theory by J. A. Bondy and U. S. R. Murty [1].