ALPS 2 Tutorials:Monte Carlo Point/ja

From ALPS
Revision as of 16:02, 28 March 2012 by Kota (talk | contribs) (各チュートリアルのまとめ)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


この節では、チュートリアルM01-M08で説明したALPSの基本的な使用方法の要点をまとめます。

コマンドラインでの実行

モンテカルロシミュレーションに用いる主なALPSの計算パラメータを以下にまとめます。

MODEL

計算に用いる格子モデルを指定します。

  • Ising
  • Heisenberg
  • Spin
  • boson Hubbard

モデルの指定では、スピンモデルとして、S=1/2、S=1、h=0.5や、bosonモデルとしてt=1.5、mu=0.5といった指定が可能です。

UPDATE

更新の種類を指定します。

  • local
  • cluster

LATTICE

次元、範囲、単位セルが指定された格子名を指定します。

  • "square lattice"
  • "chain lattice"
  • "ladder"
  • "coupled ladders"

ALGORITHM

アルゴリズムの選択をします。

  • loop

looperコードはアルゴリズムを選択するALGORITHMパラメータの設定が必要です。

QMCコードでStochastic Series Expansion (SSE)を使用する場合は、次のように設定してください。

REPRESENTATION="SSE";

SWEEP

モンテカルロステップ数 (熱力学的平衡後)

THERMALIZATION

熱力学的平衡計算のモンテカルロステップ数


物理量の計算の指定

デフォルト設定で計算される物理量に加え、ユーザーが任意に加えることができます。以下のように指定します。 "Correlations"と"Structure Factor"を解析値を計算し、出力します。

MEASURE[Correlations]=true;
MEASURE[Structure Factor]=true;

Pythonを用いた実行

Pythonを利用したALPSの実行方法は、基本的に次のようにシミュレーションの手順を記述したpythonスクリプトをalpspythonで実行します。

$ alpspython alps_sample.py

チュートリアルでは、様々なMCシミュレーションのpythonスクリプトを用意しています。コマンドラインでの実行方法と比較しながら理解を深めてください。

Vistrailsを用いた実行

ALPSはVistrailsを利用した実行方法にも対応しています。Vistrailsに対応できるようにビルドされたALPSパッケージでは、次のコマンドでVistrailsを呼び出します。

$ vispython

pythonと同様に、Vistrails用の様々なチュートリアルが用意してあります。各チュートリアルを参照してください。

(pythonスクリプトにも言えることですが、実際のスクリプトを見た方が理解しやすいと思います。)

各チュートリアルのまとめ

ここでは、MC-01~08の各チュートリアルに関する情報をまとめてあります。各チュートリアルの索引として参考としてください。


古典モンテカルロシミュレーションと自己相関:MC-01
model name File Command Anal_Command Python File Vistrails File Work Flow
ローカルアップデート parm1a spinmc spinmc_evaluate tutorial1a.py mc-01-autocorrelations.vt local updates
クラスターアップデート parm1b spinmc spinmc_evaluate tutorial1a.py mc-01-autocorrelations.vt cluster updates


古典MC、looperQMCコードによる磁化率の計算:MC-02
model name File Command Anal_Command Python File Vistrails File Work Flow
1次元古典ハイゼンベルグ鎖 parm2a spinmc spinmc_evaluate tutorial2a.py mc-02-susceptibilities.vt Classical Heisenberg chain
1次元古典ハイゼンベルグ梯子 parm2b spinmc spinmc_evaluate tutorial2b.py mc-02-susceptibilities.vt Classical Heisenberg ladder
1次元量子ハイゼンベルグ鎖 parm2c loop tutorial2c.py mc-02-susceptibilities.vt chain magnetization
1次元量子ハイゼンベルグ梯子 parm2d loop tutorial2d.py mc-02-susceptibilities.vt ladder magnetization
4つの系をまとめて実行 tutorial2full.py mc-02-susceptibilities.vt all combined


有向ループQMCコードによる磁化曲線の計算:MC-03
model name File Command Anal_Command Python File Vistrails File Work Flow
磁場中の1次元ハイゼンベルグ鎖 parm3a dirloop_sse dirloop_sse_evaluate tutorial3a.py mc-03-magnetization.vt Quantum Heisenberg chain
磁場中での1次元ハイゼンベルグ梯子 parm3b dirloop_sse dirloop_sse_evaluate tutorial3b.py mc-03-magnetization.vt Quantum Heisenberg ladder
2つの系をまとめて実行 tutorial3full.py mc-03-magnetization.vt all combined


QMCコードによるユーザ定義計算:MC-04
model name File Command Anal_Command Python File Vistrails File Work Flow
二次元ハイゼンベルグ正方格子 parm4 dirloop_sse dirloop_sse_evaluate tutorial4.py mc-04-measurements.vt


ワームQMCコードによるBose-Hubbardモデルのシミュレーション:MC-05
model name File Command Anal_Command Python File Vistrails File Work Flow
Bose-Hubbardモデルでの超流動密度 parm5a worm worm_evaluate tutorial5a.py mc-05-boson.vt L=4
モット絶縁体から超流動体への相転移 parm5b worm worm_evaluate tutorial5b.py mc-05-boson.vt scaling plot


拡張アンサンブル計算 (Wang-Landau)量子Heisenbergスピン鎖の熱力学的特性:MC-06
model name File Command Anal_Command Python File Vistrails File Work Flow
反強磁性Heisenberg鎖 J=-1 parm6a qwl qwl_evaluate tutorial6a.py mc-06-qwl.vt Ferromagnetic chain
反強磁性Heisenberg鎖 J=1 parm6b qwl qwl_evaluate tutorial6b.py mc-06-qwl.vt Ferromagnetic chain
3次元量子ハイゼンベルグ反強磁性 parm6c qwl qwl_evaluate tutorial6c.py mc-06-qwl.vt Ferromagnetic chain
臨界点を決めるための有限サイズスケール解析 parm6d qwl qwl_evaluate mc-06-qwl.vt Ferromagnetic chain


イジングモデルの相転移:MC-07
model name File Command Anal_Command Python File Vistrails File Work Flow
相転移のおおよその特定 parm7a spinmc spinmc_evaluate tutorial7a.py mc-07-tutorial.vt
有限サイズスケーリング法 parm7b spinmc spinmc_evaluate tutorial7b.py mc-07-tutorial.vt


量子スピンモデルの量子相転移:MC-08
model name File Command Anal_Command Python File Vistrails File Work Flow
相転移、臨界点の計算 parm8a,b,c,d loop tutorial8a,b,c,d.py mc-08-quantum-phase-transition.vt