1.パソコンMD計算システム概要

 

[1−1] 特徴

 

 本システムの特徴を以下に記す。

 

1)     プログラムは主として32bitパーソナルコンピュータとWindows NT/2000/XP環境を用いて開発してきた。計算を主とするプログラムはほぼ標準的なFortran(77)の文法の枠内で記述されているので移植性は非常に高く、UNIXワークステーションやスーパーコンピュータを始めFORTRAN(77、90、95)コンパイラの使えるほとんどのコンピュータに容易に移行できる。ただし、HPF(High Performance Fortran)への移植は注意を要するようである(いずれ対応するか?)。いくつかの解析・表示プログラムはF-BASIC(富士通)およびFree Basicで記述されている。

 

2)     扱える原子・分子は基本的には球対称分子あるいは単原子イオンからなる結晶あるいは液体/ガラスを対象とした分子動力学法(MD)シミュレーションシステムである。これらの混合物、気体との共存系などについても、計算方式に関する制限はない。原子間相互作用ポテンシャル関数は、例えば、次のような、

 

      uij(rij)= zizje2/rij + fo(bi+bj)exp[(ai+aj-rij)/(bi+bj)] +

             Dij{exp[-2βij(rij-r*ij)]-2exp[-βij(rij-r*ij)]}

 

BUSING-IDA-GILBERT型+MORSE項、およびFUMI-TOSI型(WOODCOCK-ANGELL)+PAULING因子などが使える。いずれにも分散力項(-cicj/rij6)を入れることができる。他の2体ポテンシャルモデルの採用も容易であろう。H2OやNH3などのような簡単な無機分子のために、さらに3体力項も適用可能である。また典型元素金属の長距離振動ポテンシャルモデルなども含まれる。また、N2、O2、その他の簡単な分子についても計算可能である場合があるので、開発元へ問い合わすこと。有機分子についても対応予定である。

 

3) 結晶および液体のそれぞれ初期座標と速度の生成のためのプログラム(MXDINPUT)と、その入力のための結晶構造データベース(XTALDATA.DAT)が付属しており、簡単な会話的入力により種々の結晶構造の配置、あるいは液体やガラスのための乱数構造がMD計算のための初期座標として得られる。また結晶の初期配置から直ちに液体/ガラスのMD計算が始められる。結晶MDから液体MDへ移行して、融解を行う計算を続行することが可能である。

 

4)MXDORTOについては、基本セルの形状は、立方体、直方体など軸角が90度の系に対応している。斜交軸の系(単斜晶系と三斜晶系)には適用できない。六方晶系と三方晶系は軸変換して直方体セルに変換することによりMXDORTOで計算可能である。この変換はMD初期データ作成プログラム(MXDINPUT)に含まれており、選択することにより直方体基本セルになる。

MXDTRICLについては、平行六面体の基本セルが使える。したがって、三斜晶系と単斜晶系の物質、および三方晶系と六方晶系のγ=120°の単位セルに適用可能である。また、相転移のシミュレーションには多くの場合こちらを使用する必要があろう。但し、同じ粒子数で計算時間はMXDORTOのおよそ2倍を必要とする。

 

5)クーロンエネルギーと力の計算はEWALD法による。そのα因子(ガウス分布の幅、収束加速因子)は基本セルの大きさと逆格子点数に従って自動的に設定される。入力データとして設定することも可能である。

 

6)粒子の動かし方には修正Verletの方法を用いており、系全体の並進運動を止めるための運動量(あるいは重心)補正は自動的に行なう。

 

7)温度・圧力の制御が可能である。温度制御(温度一定MD)には修正Woodcockの方法(粒子速度の強制スケーリング)かNoseの方法かを選ぶことができる。圧力制御(圧力一定MD)には、試行錯誤法によるabc軸長の調節(強制スケーリング)、あるいはAndersenの方法の直方体セルへの拡張によるもの(MXDORTO)の2通りが用意されている。これらを組み合わせて温度圧力一定MDが実行できる。MXDTRICLでの圧力制御は今のところ強制スケーリングの方法のみである。

 

8)低温、質量の小さな粒子から成る系、相互作用の強い場合など、量子力学効果が無視できない系について量子力学補正を行ないつつMD計算を行なうことができる(準古典的MD法)。これによりデバイ温度よりやや低い温度領域において比熱などの挙動をより精確に計算できる。

 

9)計算時間は基本セル内の粒子数とEWALD法逆空間項の範囲にもよるが、少数粒子系ではほぼ粒子数の2乗に比例し、多数粒子系では2乗より少なくなる。

 

10) MXDORTOに関して、大規模な計算が必要なときには、計算速度の改善のため2種類のオプションがある。粒子を空間ブロックに分割して、原子間距離の探索を効率化したものと、MPIによる並列計算プログラムである。おおむね1万原子を超える系について有効である。前者で数割以上、後者ではCPUの個数倍に近い効率化が見込まれる。

 

11) MPI並列型MXDORTO/MXDTRICLプログラム、およびグランドカノニカルアンサンブルの可能なモンテカルロ法MCORTOプログラムとの入出力データの整合性を確保する。これらのプログラムも公開される。

 

12) 結果の解析のために種々のプログラムが付属している。拡散係数(mdmsd.forとmd-msd.bas)、結晶の粉末X線回折パターン(mxdpowx.forとmxd-powx.bas)、液体/ガラスのX線散乱パターン(mdxray.forとmd-xray.bas)、振動スペクトル(mxdvac.forとmxd-vac.bas)、構造の表示とそのアニメーション(mxd-stro.bas、mxd-f79p.bas。xd-movie.bas、md-movie.basなど)。諸値の履歴表示(mxd-hist.bas)、2体相関関数と積算配位数(pcf-rcn.bas)などである。

 

 

表1−1.各種コンピュータによるMD計算のベンチマークテスト結果。MXDORTOを用い、

MgSiO3融体(9000K)、100ステップの計算を行った。 またMPI並列プログラムによる

ものも後に示す。

 

MXDORTO.for: 9000 atoms, 100 steps == Single CPU

CPU

Clock

 GHz

Compiler

Options

Time

  s

 

 

Pentium 4

1.7

CVF

ifl

 

P4, sse2

612

497

 

 

Athlon MP 2000+

         2200+

         2600+

          2800+

1.533

1.667

1.800

2.130

CVF

CVF

CVF

CVF

Athlon,fast

 

391

341

285

266

MobileA64 3400+

 

Cvf

 

226

Xeon dual

 

2.8

CVF

ifl

P4, etc.

/O3 /G7 /Qaxw

307

272

Opteron 244

        246

 

        248

 

 

           250

           252

1.8

2.0

 

2.2

 

 

2.4

2.6

CVF

CVF

Ifl

Cvf

ProFortran64

PGIFortran64

Cvf

ProFortran8

 

 

 

 

-O3

-fast, -O3

 

-O

271

246

240

224

272

235

206

204

?

?

 

 

 

MXDORTOP.for === MPI parallel (100Base TX)

Cpu

Clock

GHz

Compiler

Ncpu

9000 atoms

100 steps

20000 atoms

20 steps

Time

s

Efficiency

  %

Time

s

Efficiency

      %

Athlon MP 1800+

(dual)

1.533

CVF

CVF+MPI/Pro

  1

2+2

1+1+1+1

2+2+2

2+2+2+2

446

130

130

101

95

 

85.8

85.8

67.0

58.7

389

130

105

91

73

 

74.8

92.6

71.2

66.6

Athlon MP 1800+

(dual)

 

1.533

CVF+MPICH

1

2+2

1+1+1+1

2+2+2

2+2+2+2

422

163

176

146

144

 

64.7

59.9

48.2

36.6

377

130

117

102

91

 

72.5

80.6

61.6

51.8

Pentium 4

Cash512kB

2.0

CVF+MPI/Pro

1

4

491

144

 

85.2

423

117

 

90.4

Athlon MP 2200+

(dual)

 

 

1.800

CVF+MPI/Pro

1

2

2+2

2+2+2

2+2+2+2

372

206

118

97

84

 

90.3

78.8

63.9

55.4

335

175

110

89

67

 

95.7

76.1

62.7

62.5

Athlon

2800+

(dual)

 

CVF+MPI/Pro

 

1000Base

1

2

1+1

2+2

1+1+1+1

2+2+2

2+2+2+2

 

 

255

154

140

99

94

93

96

 

82.8

91.1

64.4

67.8

45.6

33.2

 

1

2

1+1

2+2

1+1+1+1

2+2+2+2

 

 

 

554

356

290

217

191

181

30000atoms

 

77.8

95.5

63.8

72.5

38.2

Opteron

248

 

CVF+MPI/Pro

1000Base

1

2

1+1

2+2

 

 

489

257

252

139

(50 steps)

95.1

97.0

87.9

1

2

1+1

2+2

 

 

929

507

485

271

(30000*50)

91.6

95.8

85.7

 

 



 先頭へ行く

次[1−2]へ

全体目次へ行く