next up previous contents index
Next: ストレステンソル Up: セル可変構造最適化 Previous: セル可変構造最適化   Contents   Index

概要

OpenMX Ver.3.9 ではセル可変の構造最適化を拘束条件あり/なしの双方で使用可能となっています。 関連するキーワードは以下の通りです。

   MD.Type                     RFC5       # OptC1|OptC2|OptC3|OptC4|OptC5
                                          # OptC6|OptC7|RFC5|RFC6|RFC7
   MD.Opt.DIIS.History          3         # default=3
   MD.Opt.StartDIIS             5         # default=5
   MD.Opt.EveryDIIS            200        # default=200
   MD.maxIter                  100        # default=1
   MD.Opt.criterion          1.0e-4       # default=0.0003 (Hartree/Bohr)
上記のキーワードは「構造最適化」セクションとまったく同じものなので、 セル可変の構造最適化は従来の構造最適化と同様に制御可能です。 セル可変の構造最適化はplus U法を含めたコリニア計算のみに利用可能です。 ただしDFT-D2法及びDFT-D3法によるvdW相互作用はサポートしていません。 セル可変の構造最適化は「MD.Type」によって指定し、以下のオプションが選択可能です。

目的に応じて上記のオプションを選択して下さい。将来的には、上記以外の拘束条件も実装予定です。

セル可変の構造最適化の例として、ダイヤモンド構造の格子ベクトルと内部座標の同時最適化を以下に示します。 計算は以下のコマンドによって行います。

     % mpirun -np 16 openmx Cdia-RFC5.dat > Cdia-RFC5.std &
  
入力ファイル「Cdia-RFC5.dat」は「work/cellopt_example」ディレクトリに収められていますので、同じ計算を実施することが可能です。 この計算例では、初期構造は以下のように歪んでいます。
   Atoms.Number         2
   Atoms.SpeciesAndCoordinates.Unit   frac # Ang|AU
   <Atoms.SpeciesAndCoordinates
      1    C    0.10000000000000    0.00000000000000   -0.05000000000000     2.0     2.0
      2    C    0.25000000000000    0.25000000000000    0.25000000000000     2.0     2.0
   Atoms.SpeciesAndCoordinates>
   Atoms.UnitVectors.Unit             Ang # Ang|AU
   <Atoms.UnitVectors
     1.6400  1.6400  0.0000
     1.6400  0.0000  1.6400
     0.0000  1.6400  1.6400
   Atoms.UnitVectors>
クラスタ計算機(Intel Xeon of 2.6 GHz)では12回の最適化ステップに326秒を要しました。 全エネルギーと原子座標もしくは格子ベクトルに対する全エネルギーの最大勾配を「System.Name.out」にて確認できます。 この計算例の場合には、「Cdia-RFC5.out」にて以下の情報を得ることができます。
***********************************************************
***********************************************************
                History of cell optimization
***********************************************************
***********************************************************

MD_iter   SD_scaling     |Maximum force|   Maximum step        Utot             Enpy           Volume
                         (Hartree/Bohr)        (Ang)         (Hartree)        (Hartree)        (Ang^3)

  1       1.25981732       0.16438857       0.10583545     -11.59621750     -11.59621750       8.82188800
  2       1.25981732       0.08853079       0.05902053     -11.64994330     -11.64994330       9.81261691
  3       1.25981732       0.04581932       0.03054622     -11.66453803     -11.66453803      10.28662955
  4       1.25981732       0.02205340       0.01470227     -11.66928384     -11.66928384      10.56026328
  5       3.14954331       0.01336972       0.02228286     -11.67121215     -11.67121215      10.73689973
  6       3.14954331       0.00678359       0.01130598     -11.67332696     -11.67332696      11.04288573
  7       3.14954331       0.00487464       0.01195765     -11.67421713     -11.67421713      11.13669753
  8       3.14954331       0.00354039       0.02370087     -11.67479906     -11.67479906      11.18107598
  9       3.14954331       0.00157491       0.00373195     -11.67534267     -11.67534267      11.29495641
 10       3.14954331       0.00137813       0.00160469     -11.67537385     -11.67537385      11.34330266
 11       3.14954331       0.00067979       0.00165878     -11.67538616     -11.67538616      11.37836604
 12       3.14954331       0.00003708       0.00000000     -11.67538985     -11.67538985      11.39519327

最大勾配の絶対値が速やかに収束しており、閾値である$0.0003$ Hartree/bohrに到達していることが見て取れます。 「work/cellopt_example」に、その他のセル可変構造最適化の例が含まれていますので参考にして下さい。