Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

directed_laplacian_matrix

directed_laplacian_matrix(G, nodelist=None, weight='weight', walk_type=None, alpha=0.95)[source]

Return the directed Laplacian matrix of G.

The graph directed Laplacian is the matrix

L=I(Φ1/2PΦ1/2+Φ1/2PTΦ1/2)/2

where I is the identity matrix, P is the transition matrix of the graph, and Φ a matrix with the Perron vector of P in the diagonal and zeros elsewhere.

Depending on the value of walk_type, P can be the transition matrix induced by a random walk, a lazy random walk, or a random walk with teleportation (PageRank).

Parameters:

G : DiGraph

A NetworkX graph

nodelist : list, optional

The rows and columns are ordered according to the nodes in nodelist. If nodelist is None, then the ordering is produced by G.nodes().

weight : string or None, optional (default=’weight’)

The edge data key used to compute each value in the matrix. If None, then each edge has weight 1.

walk_type : string or None, optional (default=None)

If None, P is selected depending on the properties of the graph. Otherwise is one of ‘random’, ‘lazy’, or ‘pagerank’

alpha : real

(1 - alpha) is the teleportation probability used with pagerank

Returns:

L : NumPy array

Normalized Laplacian of G.

Raises:

NetworkXError

If NumPy cannot be imported

NetworkXNotImplemnted

If G is not a DiGraph

See also

laplacian_matrix

Notes

Only implemented for DiGraphs

References

[R325]Fan Chung (2005). Laplacians and the Cheeger inequality for directed graphs. Annals of Combinatorics, 9(1), 2005