「すぐできる 分子シミュレーション ビギナーズマニュアル」

C6の解答例


Q1.

MTH.inファイル中のパラメーターtemp0の値を300 (K)よりも大きな値に変更してMD計算を実行します。例として、temp0= 500 (K)として実行してみましょう。

temp0= 500

以下に、i) 300(K)のMDサンプル計算実行による全ステップの平均値と、ii) 500(K)のMD計算実行による全ステップの平均値を示します。特に、設定温度をより高くしたことにより、運動エネルギーがより増加したり、体積がより膨張する様子が確認できます。

i) 300(K)のときのMD計算結果

      A V E R A G E S   O V E R    1000 S T E P S                           
 NSTEP =   1000       TIME(PS) =     2.000    TEMP(K) =   293.50        PRESS =  -529.3            
 Etot   =   -2978.3118  EKtot   =     742.4529  EPtot   =   -3720.7646              
 BOND =   0.0000      ANGLE   =    0.0490   DIHED   =   0.0000       
 1-4 NB =   0.0000     1-4 EEL  =     0.0000   VDWAALS =  578.2814           
 EELEC  = -4299.0950  EHBOND  =    0.0000   RESTRAINT =  0.0000       
 EKCMT  =  360.1879  VIRIAL  =     574.7848 VOLUME    = 18830.8582       
                                              Density    =  0.6761
Ewald error estimate:   0.2271E-03

ii) 500(K)のときのMD計算結果

      A V E R A G E S   O V E R    1000 S T E P S                           
 NSTEP =   1000       TIME(PS) =     2.000    TEMP(K) =   437.55        PRESS =  -54.3            
 Etot   =   -1923.3842  EKtot   =     1106.8797  EPtot   =   -3030.2639              
 BOND =   0.0000      ANGLE   =    0.0756   DIHED   =   0.0000       
 1-4 NB =   0.0000     1-4 EEL  =     0.0000   VDWAALS =  396.4864           
 EELEC  = -3426.8259  EHBOND  =    0.0000   RESTRAINT =  0.0000       
 EKCMT  =  540.2642  VIRIAL  =     564.9218 VOLUME    = 20974.7763       
                                              Density    =  0.6046
Ewald error estimate:   0.3252E-03

Q2.

例として、MTH.inファイル中のパラメーターnstlimの値を50000に変更してMD計算を実行してみましょう。この値に変更することで、100psのMD計算を実行することになります。

nstlim= 50000

grepとawkコマンドを利用して、md.outファイルから密度の情報を抜き出します。

grep 'Density' md.out | awk '{print $3}' > density.txt

得られた密度の情報に関するファイルdensity.txtをExcelあるいはその他グラフ描画が可能なソフトウェアで読み込んでグラフを作成します。なお、density.txtファイルにおいて、最後の2行はMD計算全体での密度の平均値および標準偏差ですので、グラフ描画の際には省略します。以下に、2psのMD計算実行によるサンプル計算結果(青線)と、100psのMD計算実行による計算結果(赤線)を示します。