\[eq:HeatSol\]), the solution of the wave equation can be expanded in terms of the eigenvectors of the Laplacian. However, unlike the heat equation where the solution eventually converges to the first eigenvector of the Laplacian, in the wave equation all the eigenvectors remain eternally excited (a consequence of the second derivative of $u$ with respect to time). This observation is used to develop a simple, yet powerful, distributed eigenvector computation algorithm. The algorithm involves evolving the wave equation on the graph and then computing the eigenvectors using local FFTs. The graph decomposition/partitioning algorithm based on the discretized wave equation on the graph, given by $$\begin{aligned}
    \u_{i}(t) = 2\u_{i}(t-1) - \u_{i}(t-2) - c^2\displaystyle\sum_{j\in\mathcal{N}(i)}\L_{ij}
    \u_{j}(t-1)\,,
    \label{onenodewave}\end{aligned}$$ where $\sum_{j\in\mathcal{N}(i)}\L_{ij}\u_{j}(t-1)$ originates from the discretization of the spatial derivatives in the wave equation. The rest of the terms originate from discretization of the $\partial^{2} u/\partial t^{2}$ term in the wave equation. To update $\u_{i}$ using Eq. \[onenodewave\], one needs only the value of $\u_{j}$ at neighboring nodes and the connecting edge weights (along with previous values of $\u_{i}$).

The main steps of the algorithm are shown as Algorithm \[alg:WaveAlg\]. Note that at each node (node $i$ in the algorithm) one only needs nearest neighbor weights 