Eigenvalue histogram of a rank-one perturbed GOE matrix demonstrating the BBP phase transition. As perturbation theta increases, the largest eigenvalue separates from the Wigner semicircle bulk. Point process plots show top 10, lowest 10, and near-zero eigenvalues. Adjust matrix size N and theta via synced slider pairs.
Skip to simulation visualization
This simulation uses WebAssembly and the Eigen library to compute eigenvalues
of a (modified) Gaussian Orthogonal Ensemble (GOE) matrix. We introduce a rank-1 perturbation governed by
a parameter $\theta$:
$$A\mapsto A + \theta \cdot e_1e_1^T,$$ where $A$ is the original GOE matrix, and $e_1$ is the first basis vector.
There is the BBP phase transition phenomenon: for large enough $|\theta|$,
the top eigenvalue “spikes” out of the traditional GOE spectrum.
Upper 10×10 Corner of Matrix:
Lowest 5 Eigenvalues:
5 Eigenvalues around zero:
Top 5 Eigenvalues:
Lowest 10 Eigenvalues:
20 Eigenvalues Around Zero:
Top 10 Eigenvalues:
Histogram of eigenvalues:
code
(note: parameters in the code might differ from the ones in simulation results below)-
Link to code(This simulation is interactive, written in JavaScript, see the source code of this page at the link) -
Link to code(C++ code for the simulation)