Difference between revisions of "ALPS 2 Tutorials:MC-08 Quantum Phase Transition/ja"

From ALPS
Jump to: navigation, search
m (Text replace - "http://alps.comp-phys.org/static/tutorials2.1.0" to "http://alps.comp-phys.org/static/tutorials2.2.0")
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
  
このチュートリアルでは、量子スピンモデルで量子臨界点を検出する方法を学習します。ここで対象とするモデルは立方格子の梯子状の二量体の量子ハイゼンベルグモデルです。足に<math>J_0</math>の結合と横木に<math>J_1</math>結合を持つ梯子は<math>J_2</math>の強さで結合しています。このモデルは少し異なりますが、[http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]のFig.1を参照してください。このチュートリアルでは、<math>J_2</math>結合間をさせる<math>J_0=J_1=1</math>を考えます。二次元のハイゼンベルグモデル(Mermin‐Wagnerの定理)の有限温度では相転移が存在しないにもかかわらず、異なる定常状態が<math>T=0</math>で現れる可能性があります。
+
このチュートリアルでは、量子スピンモデルでの量子臨界点を検出する方法を学習します。ここで対象とするモデルは梯子状に二量体化した正方格子量子ハイゼンベルグモデルです。つまり、足に<math>J_0</math>の結合と横木に<math>J_1</math>結合を持つ梯子が<math>J_2</math>の強さで結合したものです。記号が少し異なりますが、[http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]のFig.1を参照してください。このチュートリアルでは、<math>J_0=J_1=1</math>とし、梯子間結合<math>J_2</math>を変化させる場合を考えます。二次元のハイゼンベルグモデルでは有限温度で相転移が存在しない(Mermin-Wangerの定理)にもかかわらず、<math>T=0</math>では異なる基底状態間の相転移が起きえます。
  
 
[[Image:CoupledLadder.jpg | ]]
 
[[Image:CoupledLadder.jpg | ]]
  
= 相転移の特定 =  
+
= 相の同定 =  
  
 
<!--First of all, we consider the two simple limits of decoupled ladders (<math>J_2=0</math>) and of the isotropic square lattice (<math>J_2=1</math>). The decoupled ladders have a ground-state with short-range correlations and exhibit a finite spin gap : this is a spin liquid phase. On the other hand, the square lattice displays long-range order with a finite staggered magnetization : this is an antiferromagnetic Néel phase.  
 
<!--First of all, we consider the two simple limits of decoupled ladders (<math>J_2=0</math>) and of the isotropic square lattice (<math>J_2=1</math>). The decoupled ladders have a ground-state with short-range correlations and exhibit a finite spin gap : this is a spin liquid phase. On the other hand, the square lattice displays long-range order with a finite staggered magnetization : this is an antiferromagnetic Néel phase.  
  
 
A simple and illustrative way of probing these two different physics is by looking at the magnetic susceptibility <math>\chi</math>. Let us simulate an 8x8 system using the following set of temperatures in the two different cases. Plot and compare the magnetic susceptibility in both the decoupled  (<math>J_2=0</math>) and isotropic (<math>J_2=1</math>) situations. For decoupled ladders, the susceptibility exhibits an activated behaviour at low temperature due to the presence of the spin gap, whereas on the square lattice the susceptibility tends to a constant at low T. Please note that on a finite system, <math>\chi</math> will always eventually tend to zero at small enough temperature due to the presence of a finite-size gap - this is however not our topic of interest here.
 
A simple and illustrative way of probing these two different physics is by looking at the magnetic susceptibility <math>\chi</math>. Let us simulate an 8x8 system using the following set of temperatures in the two different cases. Plot and compare the magnetic susceptibility in both the decoupled  (<math>J_2=0</math>) and isotropic (<math>J_2=1</math>) situations. For decoupled ladders, the susceptibility exhibits an activated behaviour at low temperature due to the presence of the spin gap, whereas on the square lattice the susceptibility tends to a constant at low T. Please note that on a finite system, <math>\chi</math> will always eventually tend to zero at small enough temperature due to the presence of a finite-size gap - this is however not our topic of interest here.
You can run the simulation on the command line using the parameter file [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8a parm8a]:-->
+
You can run the simulation on the command line using the parameter file [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8a parm8a]:-->
  
まず最初に、2つのシンプルな制限を設けます。分離している梯子(<math>J_2=0</math>)と等方的な正方格子(<math>J_2=1</math>)です。分離した梯子は短距離相関と基底状態を持っており、有限のスピンギャップを示します。これは液相でのスピンです。一方、正方格子では、有限のスタガード磁化と長距離秩序が表示されます。これは反強磁性ネール相を示します。
+
まず最初に、2つのシンプルな極限、分離している梯子(<math>J_2=0</math>)と等方的な正方格子(<math>J_2=1</math>)を考えます。分離した梯子は短距離相関をもつ基底状態を持っており、有限のスピンギャップを示します。これはスピン液体相です。一方、正方格子では、有限のスタッガード磁化をもつ長距離秩序が現れます。これは反強磁性ネール相です。
このような2つの異なった二つの相の問題に対するシンプルな方法は、磁化率で<math>\chi</math>をを見ることです。この2つの異なったケースについて以下の温度を用いて8x8のシミュレーションをおこなってみましょう。プロットとで帯磁率を比較し、両方の(<math> J_2=0</math>)と等方性(<math> J_2=1</math>)状況で分離する必要があります。分離した梯子で、磁化率は、スピンギャップの存在に起因する低い温度で活性化の挙動を示します。しかし、正方格子の系では、磁化率は低いTで定数のように振る舞います。有限系では、<math>\chi</math>は常に、最終的には有限サイズのギャップが存在するため、小さいTでゼロになる傾向があることに注意してください。これらのチュートリアルはファイル[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8a parm8a]で実行することができます。
+
このような異なった2つの相を区別するシンプルな方法は、帯磁率<math>\chi</math>を見ることです。この2つの異なったケースについて以下の温度を用いて8x8のシミュレーションをおこなってみましょう。梯子極限(<math> J_2=0</math>)と等方極限(<math> J_2=1</math>)との両方で帯磁率をプロットし、比較してください。分離した梯子では、スピンギャップの存在により低い温度で帯磁率が0から立ち上がる挙動を示します。しかし、正方格子では、帯磁率は低いTで有限にとどまります。有限系では、常に有限サイズ由来のスピンギャップが存在するため、<math>\chi</math>は小さいけれど有限のTでゼロになることに注意してください。これらのチュートリアルはファイル[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8a parm8a]で実行することができます。
  
 
  parameter2xml parm8a
 
  parameter2xml parm8a
 
  loop parm8a.in.xml
 
  loop parm8a.in.xml
  
<!--or by using the python script  [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8a.py tutorial8a.py]-->
+
<!--or by using the python script  [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8a.py tutorial8a.py]-->
  
またはPythonスクリプトを使用して、[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8a.py tutorial8a.py]
+
またはPythonスクリプトを使用して、[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8a.py tutorial8a.py]
 
   
 
   
 
  import pyalps
 
  import pyalps
Line 61: Line 61:
 
Here is an example how you can load perform this analysis in python:-->
 
Here is an example how you can load perform this analysis in python:-->
  
<math>J_2=0</math>では、スピンギャップの値は、次の式([http://link.aps.org/doi/10.1103/PhysRevB.50.13515 Phys. Rev. B 50, 13515 (1994)]で派生した)<math>\chi=A/\sqrt{T}\exp(-\Delta/T)</math>を使用して、帯磁率の有限温度の振る舞いによって、推定することができます。<math>A</math>とスピンギャップ <math>\Delta</math>はフィッティングパラメータです。<math>T\leq1</math>をフィッティングしてみてください。そして、スピンギャップの正確な値を見積もってください。([http://link.aps.org/doi/10.1103/PhysRevLett.73.886 Phys. Rev. Lett. 73, 886 (1994)] or [http://link.aps.org/doi/10.1103/PhysRevLett.77.1865 Phys. Rev. Lett. 77, 1865 (1996)])のような文献の値と比較してみてください。
+
<math>J_2=0</math>では、スピンギャップの値は、次の式([http://link.aps.org/doi/10.1103/PhysRevB.50.13515 Phys. Rev. B 50, 13515 (1994)]の中で導出されます)<math>\chi=A/\sqrt{T}\exp(-\Delta/T)</math>を使用して、帯磁率の有限温度の振る舞いによって、推定することができます。<math>A</math>とスピンギャップ <math>\Delta</math>はフィッティングパラメータです。<math>T\leq1</math>の範囲でフィッティングを行い、スピンギャップの値を見積もってください。([http://link.aps.org/doi/10.1103/PhysRevLett.73.886 Phys. Rev. Lett. 73, 886 (1994)] or [http://link.aps.org/doi/10.1103/PhysRevLett.77.1865 Phys. Rev. Lett. 77, 1865 (1996)])のような文献の値と比較してみてください。
ここにpythonでのサンプル例を示します。参照してください。
+
pythonでの解析のサンプルを示します。
  
  
Line 79: Line 79:
 
     lines[-1].set_label('$J_2=%.4s$: $\chi = \\frac{%.4s}{T}\exp(\\frac{-%.4s}{T})$' % (data.props['J2'], prefactor,gap))
 
     lines[-1].set_label('$J_2=%.4s$: $\chi = \\frac{%.4s}{T}\exp(\\frac{-%.4s}{T})$' % (data.props['J2'], prefactor,gap))
  
= 相転移の場所 =  
+
= 相転移点を見つける =  
  
<!--Having identified two different phases at <math>J_2=0</math> and <math>J_2=1</math>, there must be (at least) one quantum phase transition separating them. We scan the coupling range <math> J_2 \in [0.2,0.4] </math> for system sizes <math>L=8,10,12,16</math> and simulate the model at an inverse temperate <math>\beta=2.L</math> using the parameter-file [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8b parm8b] or the python script [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8b.py tutorial8b.py]:
+
<!--Having identified two different phases at <math>J_2=0</math> and <math>J_2=1</math>, there must be (at least) one quantum phase transition separating them. We scan the coupling range <math> J_2 \in [0.2,0.4] </math> for system sizes <math>L=8,10,12,16</math> and simulate the model at an inverse temperate <math>\beta=2.L</math> using the parameter-file [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8b parm8b] or the python script [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8b.py tutorial8b.py]:
 
-->
 
-->
2つの相、<math>J_2=0</math>と<math>J_2=1</math>を比較するために、少なくとも1つの量子相転移を分離しなくていはいけません。結合範囲を<math> J_2 \in [0.2,0.4] </math>、システムサイズ<math>L=8,10,12,16</math>、逆温度<math>\beta=2.L</math>の条件でシミュレーションをおこないます。他のパラメータはファイル[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8b parm8b]です。また、pythonスクリプトは[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8b.py tutorial8b.py]です。
+
<math>J_2=0</math>と<math>J_2=1</math>との2点が異なる相にあるとわかったならば、この2つの相を分離する転移点が少なくとも1つ存在する必要があります。結合定数<math> J_2 \in [0.2,0.4] </math>、システムサイズ<math>L=8,10,12,16</math>、逆温度<math>\beta=2.L</math>の条件でシミュレーションをおこないます。パラメータファイルは[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8b parm8b]です。また、pythonスクリプトは[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8b.py tutorial8b.py]です。
  
 
  import pyalps
 
  import pyalps
Line 119: Line 119:
  
  
== staggered磁化、バインダーキュムラント、スピン剛性==
+
== スタッガード磁化、Binder キュムラント、スピン剛性==
  
 
<!--As in the classical Monte Carlo Tutorial we pinpoint the phase transition by an analysis of the Binder cumulant <math>U_4=< m_s^4> /<m_s^2>^2</math> of the staggered magnetization <math>m_s</math>, which is the order parameter of the antiferromagnetic phase. Since the crossing point of the Binder cumulant shows large deviations at small system sizes for the model studied in this tutorial, we will also consider the spin stiffness, which has smaller finite-size corrections ([http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]). This observable is given by <math>\rho_s = \frac{3}{4\beta} <w_x^2 + w_y^2></math> with winding numbers <math>w_x,w_y</math> of worldlines along the x- and y-direction and it scales as <math>\rho_s \propto L^{d-2-z}</math> at the quantum critical point, where d is the dimension of the system and z is the dynamical critical exponent. With <math>z=1</math> the quantity <math>\rho_sL</math> crosses at the critical point for different system system sizes <math>L</math>. Note that the fact that Binder cumulant and spin stiffness cross actually indicate that the phase transition is continuous, and not first order.-->
 
<!--As in the classical Monte Carlo Tutorial we pinpoint the phase transition by an analysis of the Binder cumulant <math>U_4=< m_s^4> /<m_s^2>^2</math> of the staggered magnetization <math>m_s</math>, which is the order parameter of the antiferromagnetic phase. Since the crossing point of the Binder cumulant shows large deviations at small system sizes for the model studied in this tutorial, we will also consider the spin stiffness, which has smaller finite-size corrections ([http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]). This observable is given by <math>\rho_s = \frac{3}{4\beta} <w_x^2 + w_y^2></math> with winding numbers <math>w_x,w_y</math> of worldlines along the x- and y-direction and it scales as <math>\rho_s \propto L^{d-2-z}</math> at the quantum critical point, where d is the dimension of the system and z is the dynamical critical exponent. With <math>z=1</math> the quantity <math>\rho_sL</math> crosses at the critical point for different system system sizes <math>L</math>. Note that the fact that Binder cumulant and spin stiffness cross actually indicate that the phase transition is continuous, and not first order.-->
  
古典モンテカルロのチュートリアルのように、反強磁性相のパラメーターであるstaggered磁化<math>m_s</math>のバインダーキュムラント<math>U_4=<m_s^4> /<m_s^2>^2</math>の分析によって相転移を特定します。バインダーキュムラントの交点は、このチュートリアルで勉強したモデルの小さなシステムのサイズに大きな偏差を示していますので、より小さい有限サイズ補正([http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)])を持つスピン剛性を考慮します。この計算量は<math>\rho_s = \frac{3}{4\beta} <w_x^2 + w_y^2></math>で与えられます。x-,y-に沿った世界線の曲線番号<math>w_x,w_y</math>で、これらは量子臨界点で<math>\rho_s \propto L^{d-2-z}</math>としてスケールします。dはシステムの次元、zは、動的臨界指数です。<math>z=1</math><math>\rho_sL</math>の量は、異なるシステムのシステムサイズが<math>L</math>の臨界点で交差しています。バインダーキュムラントとスピン剛性が交差するという事実は、実際に相転移が連続して、初めての現象ではないことを示していることに注意してください。
+
古典モンテカルロのチュートリアルのように、反強磁性相の秩序変数であるスタッガード磁化<math>m_s</math>のBinder キュムラント<math>U_4=<m_s^4> /<m_s^2>^2</math>の分析によって転移点を特定します。このチュートリアルでのモデルではBinder キュムラントの交点は大きな有限サイズ効果を示すので、有限サイズ効果のより小さいスピン剛性([http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)])を考えます。この物理量は<math>w_x,w_y</math>を世界線の空間x,y方向に沿った巻き付き数として、<math>\rho_s = \frac{3}{4\beta} <w_x^2 + w_y^2></math>で与えられます。この量は量子臨界点で<math>\rho_s \propto L^{d-2-z}</math>とスケールします。dは系の次元、zは動的臨界指数です。<math>z=1</math>の時、<math>\rho_sL</math>は、異なるシステムサイズに対し臨界点で交差しています。Binder キュムラントとスピン剛性が交差するという事実は、相転移が一次転移ではなく連続転移であることを示していることに注意してください。
 
<!--You can load and plot the observables by using the following lines:-->
 
<!--You can load and plot the observables by using the following lines:-->
  
ロードし、次の行を使用して観測量をプロットすることができます。
+
次のスクリプトを使用して観測量の読み込み、プロットができます。
  
 
  data = pyalps.loadMeasurements(pyalps.getResultFiles(pattern='parm8a.task*.out.h5'),['Binder Ratio of Staggered Magnetization','Stiffness'])
 
  data = pyalps.loadMeasurements(pyalps.getResultFiles(pattern='parm8a.task*.out.h5'),['Binder Ratio of Staggered Magnetization','Stiffness'])
Line 150: Line 150:
  
 
<!--What is your estimate of the quantum critical point?-->
 
<!--What is your estimate of the quantum critical point?-->
量子臨界点の見積りはどのようになりますか?
+
量子臨界点はどこにありますか?
  
== 有限温度の影響 ==
+
== 有限温度効果 ==
 
<!--You may have noticed that the simulations are not performed at zero temperature, but at a finite value of inverse temperature <math>\beta=T^{-1}=2L</math>.  
 
<!--You may have noticed that the simulations are not performed at zero temperature, but at a finite value of inverse temperature <math>\beta=T^{-1}=2L</math>.  
 
One needs to be sure that the physics (and in particular the estimate of the quantum critical point) is not affected by finite-temperature effects. A brute-force yet simple way of checking this is to decrease the temperature and perform the same simulations: if results are not affected, then the simulations are indeed converged. Change <math>\beta=2L</math> to <math>\beta=4L</math>, and check whether the stiffness and Binder cumulants are affected. Try now <math>\beta=L/4 </math> : are results different ?  
 
One needs to be sure that the physics (and in particular the estimate of the quantum critical point) is not affected by finite-temperature effects. A brute-force yet simple way of checking this is to decrease the temperature and perform the same simulations: if results are not affected, then the simulations are indeed converged. Change <math>\beta=2L</math> to <math>\beta=4L</math>, and check whether the stiffness and Binder cumulants are affected. Try now <math>\beta=L/4 </math> : are results different ?  
Line 160: Line 160:
 
Second, why did we choose inverse temperature <math>\beta</math> to be proportionnal to <math>L</math> ? In fact, this linear relation between time and space scales originates from the value <math>z=1</math> of the dynamical critical exponent for this quantum phase transition. You have implicitely checked it by looking at the crossings of <math>\rho_s.L</math>. In general, <math>z</math> does not need to be equal to unity, and the correct scaling of temperature with system size (in order to ensure ground-state sampling) has to be checked.
 
Second, why did we choose inverse temperature <math>\beta</math> to be proportionnal to <math>L</math> ? In fact, this linear relation between time and space scales originates from the value <math>z=1</math> of the dynamical critical exponent for this quantum phase transition. You have implicitely checked it by looking at the crossings of <math>\rho_s.L</math>. In general, <math>z</math> does not need to be equal to unity, and the correct scaling of temperature with system size (in order to ensure ground-state sampling) has to be checked.
 
-->
 
-->
このシミュレーションが温度ゼロでおこなわれず、逆温度<math>\beta=T^{-1}=2L</math>の有限値ではおこなわれたことに気づきましたか?(量子臨界点の特定の推定値)の有限温度によって影響されていないことを確認する必要があります。この簡単な確認方法は、温度を下げ、同じシミュレーションをおこなうことです。結果が影響を受けていなかったら、シミュレーションは収束するでしょう。<math>\beta=2L</math> を <math>\beta=4L</math>と修正して、剛性とバインダーキュムラントの影響を受けるかどうか確認します。また<math>\beta=L/4 </math>でためしてみてください。結果はどうでしたか?
+
このシミュレーションが温度ゼロでおこなわれず、逆温度<math>\beta=T^{-1}=2L</math>の有限値でおこなわれたことに気づきましたか?得られた結果(特に、量子臨界点の推定値)に、有限温度効果が現れていないことを確認する必要があります。このためのブルートフォースながら単純な確認方法は、温度を下げ、同じシミュレーションをおこなうことです。結果が影響を受けていなかったら、結果は同じ値に収束するでしょう。<math>\beta=2L</math> を <math>\beta=4L</math>と修正して、剛性とバインダーキュムラントが影響を受けるかどうか確認してみましょう。また<math>\beta=L/4 </math>でためしてみてください。結果はどうでしたか?
  
重要なポイントが2つあります。1つ目は、計算時間はおおよそ<math>\beta</math>に比例していることが分かると思います。実際、与えられた経路積分表示が用いられます。それは、量子相でさえ、ここで使用されるループアルゴリズムのスケーリングが最適(実際、有限TQMCアルゴリズムは空間時間体積 <math>\beta.L^d</math>より早くスケールできません)であることを意味します。
+
重要なポイントが2つあります。まず、計算時間はおおよそ<math>\beta</math>に比例していることが分かると思います。このことは、経路積分表示を用いたとすると、使用されたループアルゴリズムのスケーリングが臨界点であっても最適(実際、有限温度QMCアルゴリズムは空間時間体積 <math>\beta.L^d</math>より早くスケールできません)であることを意味します。
  
第二に、なぜ<math>L</math>に比例する逆温度<math>\beta</math>を選んだのでしょうか?実際には、時間と空間のスケールとの間のこの線形関係は、この量子相転移の動的臨界指数の値<math>z=1</math>に由来します。暗黙的に<math>\ rho_s.L</ math>をの交差を見て、それをチェックするでしょう。一般的には、<math>z</math>は団結と等しくなる必要があり、システムのサイズと温度(基底状態のサンプリングを確保するために)の正しいスケーリングをチェックする必要がありません。
+
つぎに、なぜ<math>L</math>に比例する逆温度<math>\beta</math>を選んだのでしょうか?実際には、時間と空間のスケールとの間のこの線形関係は、この量子相転移の動的臨界指数の値<math>z=1</math>に由来します。<math>\rho_s.L</math>が交差することを見て、これをチェックしたことになっています。一般的には、<math>z</math>は必ずしも1とはならないため、(基底状態のサンプリングを行うためには)システムサイズと温度の正しいスケーリングをチェックする必要があります。
  
= 臨界点の見積り =
+
= 臨界指数の見積り =
  
 
<!--You have obtained a rough estimate of the quantum critical point <math>J_2^c</math>. As in the [http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition classical case], extracting the critical exponents require more work and in particular a more precise determination of  <math>J_2^c</math>.-->
 
<!--You have obtained a rough estimate of the quantum critical point <math>J_2^c</math>. As in the [http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition classical case], extracting the critical exponents require more work and in particular a more precise determination of  <math>J_2^c</math>.-->
量子臨界点<math>J_2^c</math>のおおまかな見積りをおこないました。[http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition classical case]では、臨界指数は、より多くの計算と、特に<math>J_2^c</math>のより正確な測定を必要とします。
+
量子臨界点<math>J_2^c</math>のおおまかな見積りをおこないました。[http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition 古典系]と同様に、臨界指数の見積りには、より多くの計算と、特に<math>J_2^c</math>のより正確な測定を必要とします。
  
<!--We will obtain one by considering larger system sizes on a finer grid of <math>J_2^c</math>, the parameters are speficied in [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8d parm8d]. Please note that these simulations will take quite some CPU time and we therefore we leave it to you as an exercise.  
+
<!--We will obtain one by considering larger system sizes on a finer grid of <math>J_2^c</math>, the parameters are speficied in [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8d parm8d]. Please note that these simulations will take quite some CPU time and we therefore we leave it to you as an exercise.  
 
Plot again the Binder cumulant of the staggered magnetization <math>U_4</math> as well as the stiffness multiplied by system size <math> \rho_s.L</math> for different system sizes. The crossings of these curves should allow a more precise estimate of <math>J_2^c</math>.  
 
Plot again the Binder cumulant of the staggered magnetization <math>U_4</math> as well as the stiffness multiplied by system size <math> \rho_s.L</math> for different system sizes. The crossings of these curves should allow a more precise estimate of <math>J_2^c</math>.  
 
To obtain the critical exponent <math>\nu</math> related to the divergence of the correlation length, it is useful to consider the scaling with system size of the ''derivative'' (with respect to  <math>J_2^c</math>) of these quantities, when taken precisely at <math>J_2^c</math>. These derivatives <math>\frac{dU_4}{d J_2}</math> and <math>L \frac{d\rho_s}{d J_2}</math> can be obtained in principle as a Monte Carlo measurement, however for this tutorial, it is sufficient to perform a numerical differentiation which is possible thanks to the fine grid in <math>J_2</math>. -->
 
To obtain the critical exponent <math>\nu</math> related to the divergence of the correlation length, it is useful to consider the scaling with system size of the ''derivative'' (with respect to  <math>J_2^c</math>) of these quantities, when taken precisely at <math>J_2^c</math>. These derivatives <math>\frac{dU_4}{d J_2}</math> and <math>L \frac{d\rho_s}{d J_2}</math> can be obtained in principle as a Monte Carlo measurement, however for this tutorial, it is sufficient to perform a numerical differentiation which is possible thanks to the fine grid in <math>J_2</math>. -->
 
+
これらを求めるために、より大きな系、より細かな<math>J_2^c</math>で計算をおこないます。パラメータファイルは[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/parm8d parm8d]です。この計算にはかなりの時間がかかるので、(チュートリアルとは別の)練習問題とします。スタッガード磁化のBinder キュムラント<math>U_4</math>や、スピン剛性にシステムサイズをかけた<math> \rho_s.L</math>を異なるシステムサイズについてプロットしてください。これらの曲線の交点は、<math>J_2^c</math>のより正確な見積りの助けとなるでしょう。相関長の臨界指数<math>\nu</math>を得るためには、<math>J_2^c</math>の正確な値を求め、これらの量の<math>J_2^c</math>に関する導関数の有限サイズスケーリングを考えることが有用です。これらの微分値<math>\frac{dU_4}{d J_2}</math>や<math>L \frac{d\rho_s}{d J_2}</math>は原理的にはモンテカルロの測定量として得られますが、このチュートリアルでは、細かい<math>J_2</math>で計算しているため、数値微分で事足ります。
<math>J_2^c</math>の小さなグリッド点での大規模計算をおこないます。パラメータファイルは[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/parm8d parm8d]です。これらのシミュレーションはかなりの時間を要します。注意してください。staggered磁化<math>U_4</math> のバインダーキュムラントなど、さまざまなシステムのサイズで、システムサイズの<math> \rho_s.L</math>を掛け剛性に対してプロットしてください。これらの曲線の交点は、<math>J_2^c</math>のより正確な見積りの助けとなるでしょう。相関長の発散に関連した臨界指数<math>\nu</math>を得るためには、<math>J_2^c</math>で正確に値を求め、これらの量の''derivative''(<math>J_2^c</math>に関する)のシステムサイズのスケーリングを考慮することが有用です。これらの微分値<math>\frac{dU_4}{d J_2}</math>や<math>L \frac{d\rho_s}{d J_2}</math>はモンテカルロの計測値として最初に得られます。しかし、このチュートリアルでは、<math>J_2</math>での小さなグリッドが求められるため、数値微分を実行するのに十分です。
 
  
 
<!--Perform the numerical differentiations for the different system sizes for both quantities, and plot their values at <math>J_2^c</math> as a function of system size. Data should scale as a power law : <math>\frac{dU_4}{d J_2}(J_2^c) \propto L \frac{d\rho_s}{d J_2}(J_2^c) \propto L^{1/\nu}</math>. Which value of <math>\nu</math> do you obtain ? -->
 
<!--Perform the numerical differentiations for the different system sizes for both quantities, and plot their values at <math>J_2^c</math> as a function of system size. Data should scale as a power law : <math>\frac{dU_4}{d J_2}(J_2^c) \propto L \frac{d\rho_s}{d J_2}(J_2^c) \propto L^{1/\nu}</math>. Which value of <math>\nu</math> do you obtain ? -->
この量子数での異なるシステムサイズに対して数値微分をおこなってください。また、<math>J_2^c</math>でのそれらの値をシステムサイズの関数としてプロットしてみてください。データはべき法則でスケール<math>\frac{dU_4}{d J_2}(J_2^c) \propto L \frac{d\rho_s}{d J_2}(J_2^c) \propto L^{1/\nu}</math>すると思います。
+
それぞれのシステムサイズに対してこの2つの量の数値微分をおこない、<math>J_2^c</math>でのそれらの値をシステムサイズの関数としてプロットしてみてください。データはべき乗則でスケール<math>\frac{dU_4}{d J_2}(J_2^c) \propto L \frac{d\rho_s}{d J_2}(J_2^c) \propto L^{1/\nu}</math>するはずです。
 +
<math>\nu</math> の値はどうなりましたか?
  
 
<!--'''Exercise''' : You can visually determine the quality of your estimate by performing data collapses, as in the [http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition#Collapsing_data classical case]. The scaling forms for <math>U_4</math> and <math> \rho_s.L</math> are identical to the ones for the Binder cumulant in the classical phase transition example-->
 
<!--'''Exercise''' : You can visually determine the quality of your estimate by performing data collapses, as in the [http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition#Collapsing_data classical case]. The scaling forms for <math>U_4</math> and <math> \rho_s.L</math> are identical to the ones for the Binder cumulant in the classical phase transition example-->
-'''Exercise''' :視覚的に[http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition#Collapsing_data classical case]のように値を見積もることができると思います。<math>U_4</math>と<math> \rho_s.L</math>のスケーリングの方法は、古典相転移のバインダーキュムラントのときと同じです。
+
-'''Exercise''' :[http://alps.comp-phys.org/mediawiki/index.php/ALPS_2_Tutorials:MC-07_Phase_Transition#Collapsing_data 古典系]のように、スケーリング関数の重なり具合を見ることで臨界点や臨界指数の推定値のよさを視覚的に判断できます。<math>U_4</math>と<math> \rho_s.L</math>のスケーリングの方法は、古典相転移のBinder キュムラントのときと同じです。
  
 
<!--Besides <math>z</math> and <math>\nu</math>, the last independent exponent <math>\eta</math> can be obtained in the following way. As in the classical case, the susceptibility at the critical point should scales as <math>\chi_s (J_2^c) \sim L^{2-\eta}</math>. Note that in this last expression one needs to consider the susceptibility associated to fluctuations of the order parameter : therefore the scaling with system size of the ''staggered susceptibility'' <math>\chi_s</math>, and not of the uniform susceptibility <math>\chi</math>, has to be performed here. Plot  <math>\chi_s</math> at <math>J_2^c</math> as a function of system size, which estimate of <math>\eta</math> do you obtain ?-->
 
<!--Besides <math>z</math> and <math>\nu</math>, the last independent exponent <math>\eta</math> can be obtained in the following way. As in the classical case, the susceptibility at the critical point should scales as <math>\chi_s (J_2^c) \sim L^{2-\eta}</math>. Note that in this last expression one needs to consider the susceptibility associated to fluctuations of the order parameter : therefore the scaling with system size of the ''staggered susceptibility'' <math>\chi_s</math>, and not of the uniform susceptibility <math>\chi</math>, has to be performed here. Plot  <math>\chi_s</math> at <math>J_2^c</math> as a function of system size, which estimate of <math>\eta</math> do you obtain ?-->
<math>z</math>と<math>\nu</math>を除いて、指数<math>\eta</math>は次のように求めることが可能です。古典的な場合、臨界点での磁化率は<math>\chi_s (J_2^c) \sim L^{2-\eta}</math>のようにスケールします。この最後の式で1つのパラメータの変動に関連した磁化率を考慮する必要があることに注意してください。すなわち、ここでは均一な磁化率<math>\chi</math>ではなく、''staggered susceptibility''<math>\chi_s</math>のシステムサイズを元にスケーリングするべきです。システムサイズの関数として、<math>J_2^c</math>での<math>\chi_s</math>をプロットしてください。<math>\eta</math>はどうなりますか?
+
<math>z</math>と<math>\nu</math>以外では、臨界指数<math>\eta</math>を次のように求めることが可能です。古典的と同じく、臨界点での帯磁率は<math>\chi_s (J_2^c) \sim L^{2-\eta}</math>のようにスケールします。この式において、秩序変数のゆらぎに関する帯磁率を考える必要があることに注意してください。すなわち、一様帯磁率<math>\chi</math>ではなく、''スタッガード帯磁率'' <math>\chi_s</math>の有限サイズスケーリングです。システムサイズの関数として、<math>J_2^c</math>での<math>\chi_s</math>をプロットしてください。<math>\eta</math>はどうなりますか?
  
 
<!--The quantum phase transition studied in this tutorial belongs to the universality class of the phase transition at finite temperature of the 3d classical Heisenberg model. Compare your estimates of critical exponents <math>\nu</math> and <math>\eta</math> with the ones reported in [http://link.aps.org/doi/10.1103/PhysRevB.65.144520 Phys. Rev. B 65, 144520 (2002)] for this universality class.-->
 
<!--The quantum phase transition studied in this tutorial belongs to the universality class of the phase transition at finite temperature of the 3d classical Heisenberg model. Compare your estimates of critical exponents <math>\nu</math> and <math>\eta</math> with the ones reported in [http://link.aps.org/doi/10.1103/PhysRevB.65.144520 Phys. Rev. B 65, 144520 (2002)] for this universality class.-->
このチュートリアルでの量子相転移の学習は、3次元古典ハイゼンベルグモデルの有限温度での相転移の普遍的な問題になります。求めた臨界点<math>\nu</math>とここ[http://link.aps.org/doi/10.1103/PhysRevB.65.144520 Phys. Rev. B 65, 144520 (2002)]で述べられている値とを比較してみてください。
+
このチュートリアルで調べた量子相転移は、3次元古典ハイゼンベルグモデルの有限温度での相転移のユニバーサリティクラスに属します。求めた臨界指数<math>\nu</math>[http://link.aps.org/doi/10.1103/PhysRevB.65.144520 Phys. Rev. B 65, 144520 (2002)]とで述べられている値とを比較してみてください。
  
 
= 2番目の臨界点の推定 =
 
= 2番目の臨界点の推定 =
Line 199: Line 199:
 
  for j2 in [1.8,1.85,1.9,1.95,2.,2.05,2.1]:
 
  for j2 in [1.8,1.85,1.9,1.95,2.,2.05,2.1]:
  
and run the simulation and the plotting commands again, see [http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8c.py tutorial8c.py]. Compare your results to the high-precision results presented in [http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)] .
+
and run the simulation and the plotting commands again, see [http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8c.py tutorial8c.py]. Compare your results to the high-precision results presented in [http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)] .
 
-->
 
-->
このモデルでは、高い<math>J_2</math>の値で量子相転移を起こすだけではなく、他の量子相転移を見つけることができ、また、パラメータによって同じような解析をおこなうことが出来ます。ここでは、次の行を変更します。
+
このモデルは、量子相転移はひとつではなく、より高い<math>J_2</math>の値でも見つけることができ、そこでも同じ解析をおこなうことが出来ます。パラメータファイルの中の
  
 
  for j2 in [0.2,0.25,0.3,0.35,0.4]:
 
  for j2 in [0.2,0.25,0.3,0.35,0.4]:
  
by
+
という行を、
  
 
  for j2 in [1.8,1.85,1.9,1.95,2.,2.05,2.1]:
 
  for j2 in [1.8,1.85,1.9,1.95,2.,2.05,2.1]:
  
シミュレーションを実行し、プロットしてみてください。pythonでの実行はスクリプト[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/tutorial8c.py tutorial8c.py]を参照してください。[http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]の結果と得られた結果を比較してみてください。
+
のように変更してシミュレーションを実行し、プロットしてみてください。pythonでの実行は[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/tutorial8c.py tutorial8c.py]を参照してください。[http://prb.aps.org/abstract/PRB/v79/i1/e014410 Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)]の結果と得られた結果を比較してみてください。
  
= Vistrails での実行 =
+
= Vistrailsでの実行 =
  
Vistrailsでの実行は、[http://alps.comp-phys.org/static/tutorials2.0.0/mc-08-quantum-phase-transition/mc-08-quantum-phase-transition.vt mc-08-quantum-phase-transition.vt]を参照してください。
+
Vistrailsでの実行は、[http://alps.comp-phys.org/static/tutorials2.2.0/mc-08-quantum-phase-transition/mc-08-quantum-phase-transition.vt mc-08-quantum-phase-transition.vt]を参照してください。

Latest revision as of 23:07, 28 September 2013


このチュートリアルでは、量子スピンモデルでの量子臨界点を検出する方法を学習します。ここで対象とするモデルは梯子状に二量体化した正方格子量子ハイゼンベルグモデルです。つまり、足にJ_0の結合と横木にJ_1結合を持つ梯子がJ_2の強さで結合したものです。記号が少し異なりますが、Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)のFig.1を参照してください。このチュートリアルでは、J_0=J_1=1とし、梯子間結合J_2を変化させる場合を考えます。二次元のハイゼンベルグモデルでは有限温度で相転移が存在しない(Mermin-Wangerの定理)にもかかわらず、T=0では異なる基底状態間の相転移が起きえます。

CoupledLadder.jpg

相の同定

まず最初に、2つのシンプルな極限、分離している梯子(J_2=0)と等方的な正方格子(J_2=1)を考えます。分離した梯子は短距離相関をもつ基底状態を持っており、有限のスピンギャップを示します。これはスピン液体相です。一方、正方格子では、有限のスタッガード磁化をもつ長距離秩序が現れます。これは反強磁性ネール相です。 このような異なった2つの相を区別するシンプルな方法は、帯磁率\chiを見ることです。この2つの異なったケースについて以下の温度を用いて8x8のシミュレーションをおこなってみましょう。梯子極限( J_2=0)と等方極限( J_2=1)との両方で帯磁率をプロットし、比較してください。分離した梯子では、スピンギャップの存在により低い温度で帯磁率が0から立ち上がる挙動を示します。しかし、正方格子では、帯磁率は低いTで有限にとどまります。有限系では、常に有限サイズ由来のスピンギャップが存在するため、\chiは小さいけれど有限のTでゼロになることに注意してください。これらのチュートリアルはファイルparm8aで実行することができます。

parameter2xml parm8a
loop parm8a.in.xml


またはPythonスクリプトを使用して、tutorial8a.py

import pyalps
import matplotlib.pyplot as plt
import pyalps.pyplot
import numpy as np
import pyalps.fit_wrapper as fw
from math import sqrt

#prepare the input parameters
parms = []
for j2 in [0.,1.]:
    for t in [0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]:
        parms.append(
            { 
              'LATTICE'        : "coupled ladders", 
              'LATTICE_LIBRARY': 'lattices.xml',
              'MODEL_LIBRARY'  : 'models.xml',
              'local_S'        : 0.5,
              'ALGORITHM'      : 'loop',
              'SEED'           : 0,
              'T'              : t,
              'J0'             : 1 ,
              'J1'             : 1,
              'J2'             : j2,
              'THERMALIZATION' : 5000,
              'SWEEPS'         : 50000, 
              'MODEL'          : "spin",
              'L'              : 8,
              'W'              : 4
            }
    )

#write the input file and run the simulation
input_file = pyalps.writeInputFiles('parm8a',parms)
pyalps.runApplication('loop',input_file) 


J_2=0では、スピンギャップの値は、次の式(Phys. Rev. B 50, 13515 (1994)の中で導出されます)\chi=A/\sqrt{T}\exp(-\Delta/T)を使用して、帯磁率の有限温度の振る舞いによって、推定することができます。Aとスピンギャップ \Deltaはフィッティングパラメータです。T\leq1の範囲でフィッティングを行い、スピンギャップの値を見積もってください。(Phys. Rev. Lett. 73, 886 (1994) or Phys. Rev. Lett. 77, 1865 (1996))のような文献の値と比較してみてください。 pythonでの解析のサンプルを示します。


lines = []
for data in susc1:
    pars = [fw.Parameter(1), fw.Parameter(1)]
    data.y= data.y[data.x < 1]
    data.x= data.x[data.x < 1]
    f = lambda self, x, pars: (pars[0]()/np.sqrt(x))*np.exp(-pars[1]()/x)
    fw.fit(None, f, pars, [v.mean for v in data.y], data.x)
    prefactor = pars[0].get()
    gap = pars[1].get()
    print prefactor,gap
    
    lines += plt.plot(data.x, f(None, data.x, pars))
    lines[-1].set_label('$J_2=%.4s$: $\chi = \\frac{%.4s}{T}\exp(\\frac{-%.4s}{T})$' % (data.props['J2'], prefactor,gap))

相転移点を見つける

J_2=0J_2=1との2点が異なる相にあるとわかったならば、この2つの相を分離する転移点が少なくとも1つ存在する必要があります。結合定数 J_2 \in [0.2,0.4] 、システムサイズL=8,10,12,16、逆温度\beta=2.Lの条件でシミュレーションをおこないます。パラメータファイルはparm8bです。また、pythonスクリプトはtutorial8b.pyです。

import pyalps
import matplotlib.pyplot as plt
import pyalps.pyplot
import numpy as np

#prepare the input parameters
parms = []
for l in [8,10,12,16]:
    for j2 in [0.2,0.25,0.3,0.35,0.4]:
        parms.append(
            { 
              'LATTICE'        : "coupled ladders", 
              'LATTICE_LIBRARY': 'lattices.xml',
              'MODEL_LIBRARY'  : 'models.xml',
              'local_S'        : 0.5,
              'ALGORITHM'      : 'loop',
              'SEED'           : 0,
              'BETA'           : 2*l,
              'J0'             : 1 ,
              'J1'             : 1,
              'J2'             : j2,
              'THERMALIZATION' : 5000,
              'SWEEPS'         : 50000, 
              'MODEL'          : "spin",
              'L'              : l,
              'W'              : l/2
            }
    )

#write the input file and run the simulation
input_file = pyalps.writeInputFiles('parm8a',parms)
pyalps.runApplication('loop',input_file)


スタッガード磁化、Binder キュムラント、スピン剛性

古典モンテカルロのチュートリアルのように、反強磁性相の秩序変数であるスタッガード磁化m_sのBinder キュムラントU_4=<m_s^4> /<m_s^2>^2の分析によって転移点を特定します。このチュートリアルでのモデルではBinder キュムラントの交点は大きな有限サイズ効果を示すので、有限サイズ効果のより小さいスピン剛性(Wenzel and Janke, Phys. Rev. B 79, 014410 (2009))を考えます。この物理量はw_x,w_yを世界線の空間x,y方向に沿った巻き付き数として、\rho_s = \frac{3}{4\beta} <w_x^2 + w_y^2>で与えられます。この量は量子臨界点で\rho_s \propto L^{d-2-z}とスケールします。dは系の次元、zは動的臨界指数です。z=1の時、\rho_sLは、異なるシステムサイズに対し臨界点で交差しています。Binder キュムラントとスピン剛性が交差するという事実は、相転移が一次転移ではなく連続転移であることを示していることに注意してください。

次のスクリプトを使用して観測量の読み込み、プロットができます。

data = pyalps.loadMeasurements(pyalps.getResultFiles(pattern='parm8a.task*.out.h5'),['Binder Ratio of Staggered Magnetization','Stiffness'])
binder=pyalps.collectXY(data,x='J2',y='Binder Ratio of Staggered Magnetization', foreach=['L'])
stiffness =pyalps.collectXY(data,x='J2',y='Stiffness', foreach=['L'])

for q in stiffness:
    q.y = q.y*q.props['L']

#make plot    
plt.figure()
pyalps.pyplot.plot(stiffness)
plt.xlabel(r'$J2$')
plt.ylabel(r'Stiffness $\rho_s L$')
plt.title('coupled ladders')

plt.figure()
pyalps.pyplot.plot(binder)
plt.xlabel(r'$J_2$')
plt.ylabel(r'$g(m_s)$')
plt.title('coupled ladders')
plt.show()

量子臨界点はどこにありますか?

有限温度効果

このシミュレーションが温度ゼロでおこなわれず、逆温度\beta=T^{-1}=2Lの有限値でおこなわれたことに気づきましたか?得られた結果(特に、量子臨界点の推定値)に、有限温度効果が現れていないことを確認する必要があります。このためのブルートフォースながら単純な確認方法は、温度を下げ、同じシミュレーションをおこなうことです。結果が影響を受けていなかったら、結果は同じ値に収束するでしょう。\beta=2L\beta=4Lと修正して、剛性とバインダーキュムラントが影響を受けるかどうか確認してみましょう。また\beta=L/4 でためしてみてください。結果はどうでしたか?

重要なポイントが2つあります。まず、計算時間はおおよそ\betaに比例していることが分かると思います。このことは、経路積分表示を用いたとすると、使用されたループアルゴリズムのスケーリングが臨界点であっても最適(実際、有限温度QMCアルゴリズムは空間時間体積 \beta.L^dより早くスケールできません)であることを意味します。

つぎに、なぜLに比例する逆温度\betaを選んだのでしょうか?実際には、時間と空間のスケールとの間のこの線形関係は、この量子相転移の動的臨界指数の値z=1に由来します。\rho_s.Lが交差することを見て、これをチェックしたことになっています。一般的には、zは必ずしも1とはならないため、(基底状態のサンプリングを行うためには)システムサイズと温度の正しいスケーリングをチェックする必要があります。

臨界指数の見積り

量子臨界点J_2^cのおおまかな見積りをおこないました。古典系と同様に、臨界指数の見積りには、より多くの計算と、特にJ_2^cのより正確な測定を必要とします。

これらを求めるために、より大きな系、より細かなJ_2^cで計算をおこないます。パラメータファイルはparm8dです。この計算にはかなりの時間がかかるので、(チュートリアルとは別の)練習問題とします。スタッガード磁化のBinder キュムラントU_4や、スピン剛性にシステムサイズをかけた \rho_s.Lを異なるシステムサイズについてプロットしてください。これらの曲線の交点は、J_2^cのより正確な見積りの助けとなるでしょう。相関長の臨界指数\nuを得るためには、J_2^cの正確な値を求め、これらの量のJ_2^cに関する導関数の有限サイズスケーリングを考えることが有用です。これらの微分値\frac{dU_4}{d J_2}L \frac{d\rho_s}{d J_2}は原理的にはモンテカルロの測定量として得られますが、このチュートリアルでは、細かいJ_2で計算しているため、数値微分で事足ります。

それぞれのシステムサイズに対してこの2つの量の数値微分をおこない、J_2^cでのそれらの値をシステムサイズの関数としてプロットしてみてください。データはべき乗則でスケール\frac{dU_4}{d J_2}(J_2^c) \propto L \frac{d\rho_s}{d J_2}(J_2^c) \propto L^{1/\nu}するはずです。 \nu の値はどうなりましたか?

-Exercise :古典系のように、スケーリング関数の重なり具合を見ることで臨界点や臨界指数の推定値のよさを視覚的に判断できます。U_4 \rho_s.Lのスケーリングの方法は、古典相転移のBinder キュムラントのときと同じです。

z\nu以外では、臨界指数\etaを次のように求めることが可能です。古典的と同じく、臨界点での帯磁率は\chi_s (J_2^c) \sim L^{2-\eta}のようにスケールします。この式において、秩序変数のゆらぎに関する帯磁率を考える必要があることに注意してください。すなわち、一様帯磁率\chiではなく、スタッガード帯磁率 \chi_sの有限サイズスケーリングです。システムサイズの関数として、J_2^cでの\chi_sをプロットしてください。\etaはどうなりますか?

このチュートリアルで調べた量子相転移は、3次元古典ハイゼンベルグモデルの有限温度での相転移のユニバーサリティクラスに属します。求めた臨界指数\nuPhys. Rev. B 65, 144520 (2002)とで述べられている値とを比較してみてください。

2番目の臨界点の推定

このモデルは、量子相転移はひとつではなく、より高いJ_2の値でも見つけることができ、そこでも同じ解析をおこなうことが出来ます。パラメータファイルの中の

for j2 in [0.2,0.25,0.3,0.35,0.4]:

という行を、

for j2 in [1.8,1.85,1.9,1.95,2.,2.05,2.1]:

のように変更してシミュレーションを実行し、プロットしてみてください。pythonでの実行はtutorial8c.pyを参照してください。Wenzel and Janke, Phys. Rev. B 79, 014410 (2009)の結果と得られた結果を比較してみてください。

Vistrailsでの実行

Vistrailsでの実行は、mc-08-quantum-phase-transition.vtを参照してください。