HΦの演習問題 (解説)三澤 貴宏
東京大学物性研究所 特任研究員（PCoMS PI）

例題1: spin 1/2 dimer (full diag)
例題2: spin 1/2 chain (Lanczos)
例題3: J1-J2 Heisenberg model(Lanczos,TPQ)
例題4: Kitaev model (Lanczos,TPQ)
例題5: Hubbard chain (Lanczos,TPQ)
好きなものからやって下さい
ほとんどlaptop PCでできるはずです(TPQはちょっと重いですが…)
もちろん、自分のやりたい別の課題もやっても OKです例題1: Heisenberg dimer, Hubbard dimer~0 S~1
H = JS
H=t(c†0 c1 + h.c.) + U (n0" n0# + n1" n1# )1. 全対角化でエネルギー固有値を求めましょう。
Emin=-3/4(1重), Emax=1/4(３重縮退) となるはず
2. S=1,2/3,2 …として同じことをやりましょう
Emin=-S(S+1), Emax=S2 となるはず
3.Hubbard 模型でも同じことをやってみましょうpU(half filling , Sz=0) E = 0, U,⇥ (1 ± 1 + (4t/U )2 )2

4. Lanczos法, LOBCG法で計算してみましょう例題1:解答 I
1-1. Heisenberg dimerの解答

1-2. spin-S Heisenberg dimerの解答

L = 2
model = "Spin"method = "FullDiag"lattice = "chain"
J = 0.5
2Sz = 0L = 2
model = "Spin"method = "FullDiag"lattice = "chain"
J = 0.5
2Sz = 02S =2J=0.5なのは2サイトで2S=2とするとS=1になります

周期境界条件だとJ(指定しなければ2S=1)。

を二回数えてしまうため

2S=3,2S=4などとすれば、S=3/2, S=2の模型を取り扱えます。

例題1:解答 II
1-3. Hubbard dimerの解答
L = 2
model = "Hubbard"
method = "FullDiag"lattice = "chain"t = 0.5
U = 4
2Sz = 0nelec = 2

これも、t=0.5なのは2サイトで

1-4. Heisenberg dimerの解答
L = 2
model = "Spin"method = "Lanczos"
lattice = "chain"
J = 0.5
2Sz = 0L = 2
model = "Spin"method = "CG"lattice = "chain"
J = 0.5
2Sz = 0周期境界条件だとtmethod=“Lanczos”, “CG”とすることでLanczos,を二回数えてしまうためLOBCGの計算ができます。
Lanczosは正しい値はでてききますが、収束判定条件がヒルベルト空間が小さい場合に対応していないためエラーメッセージがでるので注意して下さい例題2: Heisenberg chain
H=JX

Si Sjhi,ji

1. Lanczosでエネルギーを計算 (サイズL= 20位まで)→基底状態と第一励起状態のエネルギー差(ギャップ)を計算→ギャップの大きさを1/Lでプロットしてみましょう
2.高磁場をかけてLanczos、LOBCGで計算してみましょう
3.S=1のハイゼンベルク模型でも同じことをやってみましょう(Haldane gap)
4. (発展)S(q,omega)を計算してみましょう。

例題2:解答 I
1-1. Heisenberg chainの解答
L = 12model = "Spin"method = "Lanczos"
lattice = "chain"
J = 1.0
2Sz = 0

結果: output/zvo_Lanczos_Step.dat
E0＝-5.3873909174 ,E1= -5.0315434037
ΔE= E1-E0 ~0.355
L依存性は次のページ

例題 2: S = 1/2 Heisenberg chain
結果

0.5

a + b*x
Lanczos

0.4はギャップの閉じるぎりぎりのところにあり、log L の対数補正が現れるので結構数値解析が難しい\DeltaS = 1/2 Heisenberg chain

0.3
0.2
0.1
00

0.02

0.04

0.06

0.08

0.1

1/L

S = 1/2 XY chain (Jz = 0, Jx = 1.0) ではもっと綺麗にかける→ 練習問題・S=1 Heisenberg chainにするとギャップが見えるはず(Haldane gap)
→練習問題 [input fileで 2S=2 とするだけ]

10 / 17

例題2:解答 II
1-2. Heisenberg chainの解答
L = 12model = "SpinGC"
method = "Lanczos"
lattice = "chain"
J = 1.0
H = 10.0

L = 12model = "SpinGC"
method = "CG"lattice = "chain"
J = 1.0
H = 10.0
exct =4

Hをかける→SpinGC（Sz非保存）
Lanczos→偽縮退が見える
stp = 74 -57.0000000000 -56.9998301292
stp = 76 -57.0000000000 -56.9999967206
stp = 78 -57.0000000000 -56.9999998797
CG→偽縮退はみえない
i=i=i=i=0 Energy=-57.000000 N= 12.000000
1 Energy=-49.000000 N= 12.000000
2 Energy=-48.866025 N= 12.000000
3 Energy=-48.866025 N= 12.000000

例題2:解答 III
1-3. Heisenberg chainの解答
L = 12model = "Spin"method = "Lanczos"
lattice = "chain"
J = 1.0
2Sz = 02S = 2

L依存性は各自の演習問題
1-4. S(q,omega)
別ページにアップ予定

例題3: J1-J2ハイゼンベルク模型
H = J1X

Si Sj + J 2

hi,ji

X

S i Sjhhi,jii

1. Lanczosでエネルギーを計算 (サイズ4 4位)
2. TPQで比熱を計算(J2/J1~0.5でどうなるか？)
3. (発展)余裕があればスピン相関も計算してみましょう
スクリプトの例
L = 4W = 4model = "Spin"method = "Lanczos"
lattice = "square lattice"J = 2.0
J’ = 1.0
2Sz = 0can be a finite-size efI'ect. Then, we conjecture a phase diagram for this model as shown in Fig. 4(b). Since themagnetizations behave very smoothly we expect second-

例題3: 基底状態の答え

J1-J2 Heisenberg model, Ns=4×4, J1=2.0
E. Dagotto and A. Moreo, PRB (R) 39 , 4744 (1989)

TABLE I. Ground-state energy (Ep) and first excited-stateenergy (E~) per site (both singlets with zero momentum) of the2D Heisenberg model with frustration as a function of J2 on a4X41attice. The error is in the last digit.
Ep0.950-statez near-state). For(Es)nberg

1. 1001. 150
1.200
1.325
1.400
1.500
1.600
1.750

—1.065 978—1.047 189—1.047 183—1.051 792—1.089 305—1.127 716—1.188 546—1.254670—1.358437—1.0160—1.0254—1.0307—1.0380—1.0804—1.1169—1.1691—1.2233—1.3072

今ならPCで数秒で計算できる。

例題4: Kitaev model
H=Jx

Xx bondSix Sjx

JyX

Siy Sjyy bondJz

XSiz Sjzz bond

1. Lanczosでエネルギーを計算 (サイズ18サイト位)
2. TPQで比熱を計算: マヨラナ粒子の兆候がみえるか？
3. (発展)次近接のスピン相関が厳密に0を確認
4. (発展)ハイゼンベルク項をたすとどうなるか？
5. (発展)磁場をかけて磁化の温度依存性から帯磁率が計算可能
スクリプトの例

W = 3
L = 3
model = "SpinGC"
method = "Lanczos"
lattice = "Honeycomb"
J0x = -1.0
J0y = 0.0J0z = 0.0
J1x = 0.0
J1y = -1.0J1z = 0.0
J2x = 0.0
J2y = 0.0J2z = -1.0

例題5: Hubbard chain
H=tX†(ci cj+ h.c.) + U

Xni" ni#ihi,ji

1. Lanczosでエネルギー・二重占有度を計算 (サイズ8サイト位)
2. TPQで比熱・二重占有度を計算:
3. (発展) 全対角化でアンサンブル平均を計算してTPQと比較

スクリプトの例
L = 8model = "FermionHubbard"
method = "Lanczos"
lattice = "chain"t = 1.0
U = 8.0
nelec = 82Sz = 0例題5: 計算例
Comparison of FullDiag, TPQ, Lanczos method
Hubbard model, L=8, U/t=8, half filling, Sz=02.5
20.25

TPQ
FullDiag
Lanczos

0.2D/Ns

E/Ns

1.5
10.5

0.15
0.1
0.05

0-0.5
10-2TPQ
FullDiag
Lanczos

10-1

10 0
T/t

101

102

0
10-2

10-1

10 0
T/t

101

10 2

TPQ method works well !