laplacian_matrix {igraph} | R Documentation |
Graph Laplacian
Description
The Laplacian of a graph.
Usage
laplacian_matrix(
graph,
normalized = FALSE,
weights = NULL,
sparse = igraph_opt("sparsematrices")
)
Arguments
graph |
The input graph. |
normalized |
Whether to calculate the normalized Laplacian. See definitions below. |
weights |
An optional vector giving edge weights for weighted Laplacian
matrix. If this is |
sparse |
Logical scalar, whether to return the result as a sparse
matrix. The |
Details
The Laplacian Matrix of a graph is a symmetric matrix having the same number of rows and columns as the number of vertices in the graph and element (i,j) is d[i], the degree of vertex i if if i==j, -1 if i!=j and there is an edge between vertices i and j and 0 otherwise.
A normalized version of the Laplacian Matrix is similar: element (i,j) is 1 if i==j, -1/sqrt(d[i] d[j]) if i!=j and there is an edge between vertices i and j and 0 otherwise.
The weighted version of the Laplacian simply works with the weighted degree instead of the plain degree. I.e. (i,j) is d[i], the weighted degree of vertex i if if i==j, -w if i!=j and there is an edge between vertices i and j with weight w, and 0 otherwise. The weighted degree of a vertex is the sum of the weights of its adjacent edges.
Value
A numeric matrix.
Author(s)
Gabor Csardi csardi.gabor@gmail.com
Examples
g <- make_ring(10)
laplacian_matrix(g)
laplacian_matrix(g, norm = TRUE)
laplacian_matrix(g, norm = TRUE, sparse = FALSE)