LAMMPSで格子変形を許して構造緩和をする

LAMMPSで格子変形を許して構造緩和をさせる(fix 1 box/relax tri 0を指定してminimize commandを実行する)とき、初期構造が著しく歪んでいるせいで一度minimizeさせるだけでは収束しきらないことがある。 このケースにハマっている人をたまに見るので、収束させるためのスクリプトの書き方を以下のnotebookにまとめた。

ポイントとしては

  • 一度に全ての自由度を動かさない(例えば、原子位置->原子位置+体積->原子位置+格子の順にminimizeしていく)
  • ftol(force vectorのL2ノルム)が期待通り小さくなっていることを確認する
  • maxiterの上限いっぱいまでiterationが回っていないことを確認する

くらいに気をつけるといいと思う。

gist.github.com