Wolfram 언어

랜덤 행렬

Dyson의 쿨롬 (Coulomb) 가스

CircularOrthogonalMatrixDistribution을 따르는 행렬 고유값의 결합 분포는 역 온도가인 원형의 Dyson의 쿨롬 가스 Bolzmann 분포와 일치합니다. 입자 당 평균 해밀턴 (운동 부분 제외)를 정의합니다.

In[1]:=
Click for copyable input
hamiltonian[Z_] := Module[{n = Length[Z]}, Log[n]/2 - Sum[Total[Log[Abs[Differences[Z, 1, k]]]], {k, n - 1}]/n ]

해밀턴 분포를 정의합니다.

In[2]:=
Click for copyable input
h\[ScriptCapitalD] = MatrixPropertyDistribution[hamiltonian[Eigenvalues[x]], x \[Distributed] CircularOrthogonalMatrixDistribution[n]];

다양한 크기의 시스템의 해밀턴 샘플의 평균을 계산합니다.

In[3]:=
Click for copyable input
means = Table[{n, Mean[RandomVariate[h\[ScriptCapitalD], 1000]]}, {n, 10, 100, 10}];

샘플 평균을 플롯하고 열역학적 한계와 비교합니다.

전체 Wolfram 언어 입력 표시하기
In[4]:=
Click for copyable input
Show[ListPlot[means, PlotStyle -> {Red, PointSize[Medium]}, Filling -> Axis, PlotRange -> {0.3, 0.37}, FrameLabel -> {Style["n", Black, 14], Style["\[LeftAngleBracket]H\[RightAngleBracket]", Black, 14]}, PlotTheme -> "Detailed"], Plot[1/2 (Log[2] + PolyGamma[0, 3/2]), {x, 0, 100}, PlotTheme -> "Detailed"]]
Out[4]=

관련 예제

de en es fr ja pt-br ru zh