({{, (RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution])[n] 
represents a circular quaternion matrix distribution with matrix dimensions {2 n,2 n} over the field of complex numbers.}})

OpenersNotesSection(Spacer1)Details

(RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution]) is also known as circular quaternion ensemble, or CQE.

(RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution]) represents a uniform distribution over the compact symplectic square matrices of dimension n. It is also known as the Haar measure on the unitary symplectic group USp(2 n).

Each realization of (RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution]) is represented as a unitary matrix x that preserves the symplectic form (Transpose[x]).J.x==J, where J is a symplectic matrix (RefLink[KroneckerProduct, paclet:ref/KroneckerProduct])[{{0,-1},{1,0}},(RefLink[IdentityMatrix, paclet:ref/IdentityMatrix])[n]].

The dimension parameter n can be any positive integer.

(RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution]) can be used with such functions as (RefLink[MatrixPropertyDistribution, paclet:ref/MatrixPropertyDistribution]) and (RefLink[RandomVariate, paclet:ref/RandomVariate]).

OpenersPrimaryExamplesSection(Spacer1)Examples  (7)

OpenersExampleSection0(Spacer1)Basic Examples  (2)

Generate a pseudorandom CQE matrix:

dim=5;
g=RandomVariate[CircularQuaternionMatrixDistribution[dim]];

MatrixPlot[g//Arg,PlotTheme->"Minimal",ImageSize->Small]

It is unitary and preserves the symplectic matrix 𝒥:

𝒥=KroneckerProduct[{{0,-1},{1,0}},IdentityMatrix[dim,SparseArray]];

UnitaryMatrixQ[g] ∧ Chop[Transpose[g].𝒥.g]==𝒥

Represent the eigenvalues of a random matrix by (RefLink[MatrixPropertyDistribution, paclet:ref/MatrixPropertyDistribution]) and sample from it:

RandomVariate[MatrixPropertyDistribution[Eigenvalues[x],x\[Distributed]CircularQuaternionMatrixDistribution[3]]]

OpenersExampleSection1(Spacer1)Scope  (3)

Generate a random matrix from unitary symplectic group USp(2):

RandomVariate[CircularQuaternionMatrixDistribution[2]]

Generate a set of random matrices from unitary symplectic group:

RandomVariate[CircularQuaternionMatrixDistribution[2],2]

Compute statistical properties numerically:

gap𝒟=MatrixPropertyDistribution[Max[Differences[Sort[Arg[Eigenvalues[𝓂]]]]],𝓂\[Distributed]CircularQuaternionMatrixDistribution[20]];

NExpectation[Exp[-δ],δ\[Distributed]gap𝒟]

OpenersExampleSection3(Spacer1)Properties & Relations  (2)

Distribution of phase angle of the eigenvalues:

dim=150;
args=RandomVariate[MatrixPropertyDistribution[Arg[Eigenvalues[x]],x\[Distributed]CircularQuaternionMatrixDistribution[dim]],100];

Histogram[Join@@args,{-Pi,Pi,2Pi/40},PDF]

Compute the spacing between eigenvalues:

diffs=Join@@Map[Composition[Differences,Sort],(args/Pi)dim];

Compare the histogram of sample level spacings with the closed form, also known as Wigner surmise for Dyson index 2:

WignerSurmisePDF[x_,β:2]:=2(4 x/Pi)^2 Exp[(-4/Pi) x^2]

Show[Histogram[diffs,{0.1},PDF],Plot[WignerSurmisePDF[x,2],{x,0,3}]]

For eigenvectors of (RefLink[CircularQuaternionMatrixDistribution, paclet:ref/CircularQuaternionMatrixDistribution]) with dimension n large, the scaled modulus of the elements is (χ^2) distributed:

𝒟=MatrixPropertyDistribution[Flatten[Abs[Eigenvectors[𝓂]]^2],𝓂\[Distributed]CircularQuaternionMatrixDistribution[50]];

data=2Normalize[Join@@RandomVariate[𝒟,100],Mean];

Compare the histogram with (RefLink[PDF, paclet:ref/PDF]) of (RefLink[ChiSquareDistribution, paclet:ref/ChiSquareDistribution]):

Show[Histogram[data,"Scott",PDF],Plot[PDF[ChiSquareDistribution[2],x],{x,0,8}]]

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[CircularOrthogonalMatrixDistribution, paclet:ref/CircularOrthogonalMatrixDistribution])  ▪  (RefLink[CircularUnitaryMatrixDistribution, paclet:ref/CircularUnitaryMatrixDistribution])  ▪  (RefLink[CircularRealMatrixDistribution, paclet:ref/CircularRealMatrixDistribution])  ▪  (RefLink[CircularSymplecticMatrixDistribution, paclet:ref/CircularSymplecticMatrixDistribution])  ▪  (RefLink[MatrixPropertyDistribution, paclet:ref/MatrixPropertyDistribution])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Matrix Distributions, paclet:guide/MatrixDistributions])}})}})