水の平衡状態の分子動力学計算

OpenFOAM 4.x

ケース

$FOAM_TUTORIALS/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater

概要

分子動力学計算(Molecular Dynamics、MD計算)を行い、水の平衡状態を計算します。

粒子の性質はディレクトリ constant 内のファイル moleculeProperties、idList で定義しています。またディレクトリ system 内のファイル potentialDict 内で外力、粒子間ポテンシャルなどを、ファイル mdInitialiseDict で初期条件を、ファイル mdEquilibrationDict で平衡時の温度を定義しています。

モデルの X、Y、Z 軸方向のサイズはそれぞれ4.22 nm で、それぞれ周期境界条件になっています。

モデル形状 モデル形状

粒子の初期位置はメッシュに基づいて決定されます。メッシュは以下の通りです。

メッシュ メッシュ

計算結果は以下の通りです。

0秒での粒子分布 0秒での粒子分布
5.0e-12での粒子分布 5.0×10-12秒での粒子分布

また各ポテンシャルの距離ごとのエネルギー、力がファイル O-O 、ファイル electrostatic に出力されます。ファイルは 1 列目が距離、2列目がエネルギー、3列目が力になっています。

ファイル O-O に出力された距離-エネルギーの計算結果 ファイル O-O に出力された距離-エネルギーの計算結果
ファイル O-O に出力された距離-力の計算結果 ファイル O-O に出力された距離-力の計算結果
ファイル electrostatic に出力された距離-エネルギーの計算結果 ファイル electrostatic に出力された距離-エネルギーの計算結果
ファイル electrostatic に出力された距離-力の計算結果 ファイル electrostatic に出力された距離-力の計算結果

可視化操作の手順

離散粒子を可視化するには paraFoam コマンドで ParaView にデータを読み込み後、パイプラインブラウザーの Properties タブで以下の様に設定して再度 Apply ボタンを押します。

  • Mesh Parts リストでは「moleculeCloud」のみチェック
  • Volume Fields リストは全てのアイテムのチェックを外す
  • Lagrangian Fields リストは全てのアイテムをチェック
表示アイテムの選択 表示アイテムの選択

実行コマンド

cp -r $FOAM_TUTORIALS/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater periodicCubeWater
cd periodicCubeWater

blockMesh
mdInitialise
mdEquilibrationFoam

paraFoam

gnuplot
gnuplot> plot "O-O" using 1:2
gnuplot> plot "O-O" using 1:3
gnuplot> plot "electrostatic" using 1:2
gnuplot> plot "electrostatic" using 1:3

計算時間

43分37.74秒 ※シングル、Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz

参照