Difference between revisions of "Documentation:Running ALPS Simulations/ja"

From ALPS
Jump to: navigation, search
m (概要)
m (乱数生成器に関するコメント)
 
(2 intermediate revisions by one other user not shown)
Line 4: Line 4:
 
= 概要 =
 
= 概要 =
  
ALPS ライブラリを利用したアプリケーションにおいて、シミュレーションは、スケジューラを使って実行されます。スケジューラには実行したいシミュレーションのパラメータを与えることができます。パラメータは重複していてもかまいません(例: 温度だけ変化させた物理系のシミュレーション)。スケジューラは1つのパラメータセットごとにジョブを開始します。それは逐次計算機であっても並列計算機であってもかわりません.そして,ジョブの制限時間を超えてもデータロスを起こさないようにチェックポイントが使えるようになっています.スケジューラには、パラメータセットごとに作られるタスクファイルを指定したジョブファイルを与えます。ジョブファイル及びタスクファイルは XML フォーマットで書かれています。ここで使われる XML の スキーマの詳細は [http://xml.comp-phys.org http://xml.comp-phys.org] をご覧ください。スケジューラはこれらのファイルを読み、結果をタスクファイルに書き込みます。
+
ALPS ライブラリを利用したアプリケーションにおいて、シミュレーションは、スケジューラを使って実行されます。スケジューラには実行したいシミュレーションのパラメータを与えることができます。パラメータは重複していてもかまいません(例: 温度だけ変化させた物理系のシミュレーション)。スケジューラは1つのパラメータセットごとにジョブを開始します。それは逐次計算機であっても並列計算機であってもかわりません.そして,ジョブの制限時間を超えてもデータロスを起こさないようにチェックポイントが使えるようになっています.スケジューラには、パラメータセットごとに作られるタスクファイルを指定したジョブファイルを与えます。ジョブファイル及びタスクファイルは XML フォーマットで書かれています。ALPS で使われる XML の スキーマの詳細は [http://xml.comp-phys.org http://xml.comp-phys.org] をご覧ください。スケジューラはこれらのファイルを読み、結果をタスクファイルに書き込みます。
 
例えば、ジョブファイルは次のようなものになります:
 
例えば、ジョブファイルは次のようなものになります:
  
Line 48: Line 48:
 
= 乱数生成器に関するコメント =
 
= 乱数生成器に関するコメント =
  
 
+
Monte Carlo シミュレーションでは、常に[http://en.wikipedia.org/wiki/Pseudorandom_number_generator 擬似乱数]を利用して乱数を取り扱うことになります。
Monte Carlo シミュレーションでは常に乱数を取り扱うことになります [http://en.wikipedia.org/wiki/Pseudorandom_number_generator pseudo-random numbers]
+
今まではよい擬似乱数であったものが、あなたのアプリケーションにとっては理想的なものでなくなるという可能性は、常に、その可能性は小さいながら、否定はできません.
今まではよい擬似乱数であったものが,あなたのアプリケーションにとっては理想的なものでなくなるという可能性は常に,その可能性は小さいながら,否定はできません.
+
そのため,高精度モンテカルロシミュレーションでいつも標準的な慣習として行われているように、2つ以上の乱数生成器でシミュレーションを行うべきです。[[Tutorials:Parameters/ja#Additional parameters for Monte Carlo simulations|RNG parameter]]では、乱数生成器を自分で他のものに替えることができます。そうすることで、得られた結果の正しさを検証できます。
そのため,高精度モンテカルロシミュレーションでいつも標準的な慣習として行われているように,1つ以上の乱数生成器でシミュレーションを行うべきです.[[Tutorials:Parameters#Additional parameters for Monte Carlo simulations|RNG parameter]] では,乱数生成器を自分で他のものに替えることができます.そうすることで,得られた結果の正しさを検証できます.
 
  
 
© 2003-2010 by Simon Trebst, Matthias Troyer, and Synge Todo
 
© 2003-2010 by Simon Trebst, Matthias Troyer, and Synge Todo
  
訳 2011 松尾 春彦 (Haruhiko Matsuo)
+
訳 2011-2012 松尾 春彦 (Haruhiko Matsuo), 五十嵐 亮 (Ryo IGARASHI)

Latest revision as of 09:17, 20 August 2012


概要

ALPS ライブラリを利用したアプリケーションにおいて、シミュレーションは、スケジューラを使って実行されます。スケジューラには実行したいシミュレーションのパラメータを与えることができます。パラメータは重複していてもかまいません(例: 温度だけ変化させた物理系のシミュレーション)。スケジューラは1つのパラメータセットごとにジョブを開始します。それは逐次計算機であっても並列計算機であってもかわりません.そして,ジョブの制限時間を超えてもデータロスを起こさないようにチェックポイントが使えるようになっています.スケジューラには、パラメータセットごとに作られるタスクファイルを指定したジョブファイルを与えます。ジョブファイル及びタスクファイルは XML フォーマットで書かれています。ALPS で使われる XML の スキーマの詳細は http://xml.comp-phys.org をご覧ください。スケジューラはこれらのファイルを読み、結果をタスクファイルに書き込みます。 例えば、ジョブファイルは次のようなものになります:

<JOB>
 <OUTPUT file="parm.xml"/>
 <TASK status="new">
   <INPUT file="parm.task1.in.xml"/>
   <OUTPUT file="parm.task1.xml"/>
 </TASK>
 <TASK status="new">
   <INPUT file="parm.task2.in.xml"/>
   <OUTPUT file="parm.task2.xml"/>
 </TASK>
 <TASK status="new">
   <INPUT file="parm.task3.in.xml"/>
   <OUTPUT file="parm.task3.xml"/>
 </TASK>
</JOB>

タスクファイルは次のような内容になります:

<SIMULATION>
 <PARAMETERS>
   <PARAMETER name="L">100</PARAMETER>
   <PARAMETER name="SWEEPS">10000</PARAMETER>
   <PARAMETER name="T">0.5</PARAMETER>
   <PARAMETER name="THERMALIZATION">100</PARAMETER>
 </PARAMETERS>
</SIMULATION>

ここでは、ALPS でのシミュレーションの準備,実行及び結果を解析する手法を説明します.ALPS 2 では 3 種類のやり方があります.

  1. コマンドラインからの実行する方法 (ただし,コマンドラインから使える解析ツールは限られています)
  2. Python を使う方法
  3. 起源システムを有効にした Vistrails ワークフローシステムを使う方法

どの方法でもアウトプットファイルがいくつかできます.いずれの方法も互いに組み合わせて使うことができます.共通の特徴はシミュレーションが 3 つのフェーズに分けられることです.

  1. インプットファイルを準備する
  2. シミュレーションを実行する
  3. 結果を解析する

乱数生成器に関するコメント

Monte Carlo シミュレーションでは、常に擬似乱数を利用して乱数を取り扱うことになります。 今まではよい擬似乱数であったものが、あなたのアプリケーションにとっては理想的なものでなくなるという可能性は、常に、その可能性は小さいながら、否定はできません. そのため,高精度モンテカルロシミュレーションでいつも標準的な慣習として行われているように、2つ以上の乱数生成器でシミュレーションを行うべきです。RNG parameterでは、乱数生成器を自分で他のものに替えることができます。そうすることで、得られた結果の正しさを検証できます。

© 2003-2010 by Simon Trebst, Matthias Troyer, and Synge Todo

訳 2011-2012 松尾 春彦 (Haruhiko Matsuo), 五十嵐 亮 (Ryo IGARASHI)