function [ X ] = GSE( N )
%GUE(N) Generate GUE matrix of size NxN

e0 = eye(2);
e1 = [1i 0; 0 -1i];
e2 = [0 1; -1 0];
e3 = [0 1i; 1i 0];
A = (kron(randn(N),e0) + kron(randn(N), e1) ...
    + kron(randn(N),e2) + kron(randn(N),e3)) / sqrt(8*N);
X = A + A';
end

