get_ddm_from_eigendec {diffudist} | R Documentation |
Distance Matrix from Laplacian spectral decomposition
Description
Returns the diffusion distance matrix when the spectrum (more precisely, the eigendecomposition) of the Laplacian is provided as input (useful to speed up batch calculations).
For instance, the random walk normalised Laplacian I - D^{-1}A
,
which generates the classical continuous-time random walk over a network,
can be easily and obtained from the spectral decomposition of the symmetric
normalised Laplacian
\mathcal{L} = D^{-\frac{1}{2}} L D^{-\frac{1}{2}} = D^{-\frac{1}{2}} (D - A) D^{-\frac{1}{2}}
.
More specifically,
\bar{L} = I - D^{-1} A = D^{-\frac{1}{2}} \mathcal{L} D^{\frac{1}{2}}
and, since \mathcal{L}
is symmetric it can be decomposed into
\mathcal{L} = \sum_{l = 1}^N \lambda_l u_l u_l^T
, hence
\bar{L} = \sum_{l = 1}^N \lambda_l u^R_l u^L_l
where
u^L_l = u_l^T D^{\frac{1}{2}}
and u^R_l = u_l D^{-\frac{1}{2}}
.
Usage
get_ddm_from_eigendec(tau, Q, Q_inv, lambdas, verbose = FALSE)
Arguments
tau |
diffusion time (scalar) |
Q |
eigenvector matrix |
Q_inv |
inverse of the eigenvector matrix |
lambdas |
eigenvalues (vector) |
verbose |
whether warnings have to be printed or not |
Value
The diffusion distance matrix D_t
, a square numeric matrix
of the Euclidean distances between the rows of the stochastic matrix
P(t) = e^{-\tau L}
, where -L
is the Laplacian generating a
continuous-time random walk (Markov chain) over the network.
The matrix exponential is here computed using the given eigendecomposition
of the Laplacian matrix e^{-\tau L} = Q e^{-\tau \Lambda} Q^{-1}
.
References
Bertagnolli, G., & De Domenico, M. (2021). Diffusion geometry of multiplex and interdependent systems. Physical Review E, 103(4), 042301. doi:10.1103/PhysRevE.103.042301 arXiv: 2006.13032