Note
Go to the end to download the full example code.
Gaussian Ensemble
Defines Gaussian Ensemble random matrices
# Author: Alejandro Santorum Varela
# License: BSD 3-Clause
from skrmt.ensemble import GaussianEnsemble
Gaussian Ensemble contains random matrices whose inputs are gaussian distributed.
Gaussian Orthogonal Ensemble (GOE)
Random matrices of GOE have real entries gaussian distributed. These matrices are invariant under orthogonal conjugation, i.e., if \(\mathbf{X} \in \text{GOE}\) and \(\mathbf{O}\) is an orthogonal matrix, then \(\mathbf{O} \mathbf{X} \mathbf{O}^T\) is equally distributed as \(\mathbf{X}\).
They are also known as 1-Hermite random matrices (beta = 1).
A random matrix of Gaussian Orthogonal Ensemble can be sampled using scikit-rmt with the following code.
goe = GaussianEnsemble(beta=1, n=4)
print(goe.matrix)
[[-1.12173516 -1.88154934 0.99084342 -0.36152007]
[-1.88154934 0.4066097 -0.62418723 0.73193813]
[ 0.99084342 -0.62418723 -1.65812296 1.7959167 ]
[-0.36152007 0.73193813 1.7959167 -0.157581 ]]
Gaussian Unitary Ensemble (GUE)
Random matrices of GUE have complex entries gaussian distributed, i.e., their real part and their complex part are gaussian distributed. These matrices are invariant under unitary conjugation, i.e., if \(\mathbf{X} \in \text{GUE}\) and \(\mathbf{O}\) is an unitary matrix, then \(\mathbf{O} \mathbf{X} \mathbf{O}^T\) is equally distributed as \(\mathbf{X}\).
They are also known as 2-Hermite random matrices (beta = 2).
A random matrix of Gaussian Unitary Ensemble can be sampled using scikit-rmt with the following code.
gue = GaussianEnsemble(beta=2, n=4)
print(gue.matrix)
[[-1.39147258+0.j 0.10204265+0.15235105j 0.64083085+0.02625899j
-0.26261269-0.81049254j]
[ 0.10204265-0.15235105j -1.63595668+0.j -1.53717783+1.53735075j
-1.75492192+0.01811866j]
[ 0.64083085-0.02625899j -1.53717783-1.53735075j 2.28373677+0.j
0.80168935-0.78350495j]
[-0.26261269+0.81049254j -1.75492192-0.01811866j 0.80168935+0.78350495j
-2.31203799+0.j ]]
Gaussian Symplectic Ensemble (GSE)
Random matrices of GSE have quaternionic entries gaussian distributed, i.e., their four dimensions are gaussian distributed. These matrices are invariant under conjugation by the symplectic group.
They are also known as 4-Hermite random matrices (beta = 4).
A random matrix of Gaussian Symplectic Ensemble can be sampled using scikit-rmt with the following code.
gse = GaussianEnsemble(beta=4, n=2)
print(gse.matrix)
[[-2.48945835+0.j -4.10973093+2.71227021j 0. +0.j
0.99992279+0.80557055j]
[-4.10973093-2.71227021j -0.26802827+0.j -0.99992279-0.80557055j
0. +0.j ]
[ 0. +0.j -0.99992279+0.80557055j -2.48945835+0.j
-4.10973093-2.71227021j]
[ 0.99992279-0.80557055j 0. +0.j -4.10973093+2.71227021j
-0.26802827+0.j ]]
Total running time of the script: (0 minutes 0.002 seconds)