HPCシステムズではエンジニアを募集しています。詳しくはこちらをご覧ください。
HPCシステムズのエンジニア達による技術ブログ

Tech Blog

VASP:事前/事後処理に使うソフトウェアの紹介

はじめに

この記事では、GUI上で操作できる無償のものを中心に、VASPの事前・事後処理を行うソフトウェアを紹介します。

入力ファイルを入手する

VASPで計算を行うためには以下4つの入力ファイルを用意する必要があります。

  • POSCAR 対象となる物質の結晶構造データ

  • POTCAR 物質中の各原子の擬ポテンシャルデータ

  • INCAR 計算方法などの設定

  • KPOINTS 計算するk点の設定

初めて利用される方がこれらのファイルをいきなり自作するのは大変です。そこでまずは, 以下のデータベースから目的の物質を探し、入力ファイルを入手することをお勧めします。

  • Materials Project

    • ユーザー登録は必要だが無料で利用できる

    • VASP用の入力ファイルをダウンロードできる(擬ポテンシャルファイルPOTCARは除く)。

    • KPOINTSファイルはバンド計算用ではない

  • AFLOWLIB

    • 登録なしで無料で利用できる

    • VASPの入力ファイルの設定を確認できる(INCARなどはダウンロードできない)

    • バンド計算用など複数のKPOINTSファイルをダウンロードできる

    • アクチノイド系はサポートしていない

Materials Projectからは、INCAR・POSCAR・KPOINTSをまとめてダウンロードできます。ただ、バンド計算用のKPOINTSファイルは提供されていないので、バンド計算をする際はAFLOWLIBで提供されているKPOINTSファイルを探すか、後述するc-Toolsの利用を検討してください。

入力ファイルを作成・編集する

次に、入力ファイルの作成や編集をしたい場合に使えるソフトウェアを紹介します。ここではpymatgenなどのpythonベースで動くCLIツールについては紹介しません。

  • VESTA

    • 結晶構造の可視化・作成が可能

    • VASPで計算実行後、電子密度分布の可視化などにも利用可能

    • 様々なファイル形式に対応しており、POSCARファイルも出力可能

  • c-Tools

    • 様々な第一原理計算ソフトウェアの入力ファイルを作成できる補助ツール

    • GUIで操作でき、バンド計算の経路を可視化可能(経路変更は不可)

    • VASPにも対応しており、INCAR・POSCAR・KPOINTSファイルを出力可能

    • POTCARファイルは自作する必要あり。

c-Toolsを利用する際の注意点: CIF形式のファイルを開く際、”_ symmetry_space_group_name_H-M”で設定されている空間群がシングルクォーテーションで囲われていない場合、c-Tools上で開くことができません。c-ToolsでCIFファイルを開けなかったとき、テキストエディタを開いて確認してください。

 #以下のような表記の場合、c-Toolsで開けない
 _symmetry_space_group_name_H-M Fm-3c
 #以下のように編集してください
 _symmetry_space_group_name_H-M 'Fm-3c'
  • VASPkit

    • VASPの事前/事後処理に特化

    • GUI上で操作はできないが、基本的に選択肢を選んでいけば入力ファイルを作成可能

    • INCAR・KPOINTS・POTCARファイルの作成可能

    • CIFからPOSCARへの変換に失敗することがある(P1の時は成功)

c-Toolsを利用する場合、CIF形式の結晶構造ファイルをVESTAなどで作成し、そのCIFファイルを読み込んで編集すると比較的容易です。 GUIで利用したい場合やバンド分散の経路を確認したい場合などでc-Toolsを利用するとよいと思います

VASPkitを利用する場合、POSCARファイルだけはVESTAで作成し、他のファイルをVASPkitで作成するという方針になると思います。 著者個人は、VASPkitは事後処理にも対応しているので使いやすいと感じました。 ただ、一部バグがあったり日本語の解説記事がほとんどないので注意が必要です。

またVASPkitはINCARファイルの調整も必要です。たとえば状態密度の計算をする際、デフォルトの設定では ISMEAR=0 (gaussian smearing method), SIGMA=0.05となっており、状態密度の結果がガタつきます。ISMEAR=-5 (tetrahedron method)に変更するかSIGMAを大きくとるように変更してください。他にも、バンド分散を計算するときはICHARG=11を有効にすべきなど、INCARを直接編集しなければならない場合があるので、生成されたファイルの確認は忘れないようにしましょう。INCARの設定に関しては、c-Toolsの方が参考になると思います。

 

出力ファイルの可視化

VASPを実行した後の結果をGUIツールを利用して可視化する方法にp4vaspがあります しかしこのソフトは現在サポートされておらず、python2系で書かれているためお勧めできません。 結果を出力する際は、以下のアプリケーションを利用することをお薦めします。

  • gnuplotなどの汎用的なグラフ出力用ソフトウェア

    • DOSやバンド分散の出力に利用

  • Xcrysden

    • フェルミ面や結晶構造の描画が可能

    • BXSF形式に対応

  • Fermisurfer

    • フェルミ面の描画に特化

    • BXSF形式とFRMSF形式に対応

ただ、VASPの出力ファイルは上述したアプリケーションに対応していません。 そのため一度、事後処理を行うことで、出力ファイルを編集する必要があります。 その際に使えるソフトウェアを紹介紹介します。

  • VASPkit

    • DOS・バンド分散はgnuplotで出力できる形式を作成可能

    • フェルミ面はBSXF形式・FRMSF形式どちらも作成可能

  • MTD-group/Fermi-Surface

    • BXSF形式のファイルを作成可能

  • 自作する

他にもpymatgenpyprocarなどのアプリケーションもありますが、python上で動かすCLIツールのため、 ここでは説明を省きました。

おわりに

無償のものを利用する以上、どうしても複数のソフトウェアを使って解析を行うことになります。一つのまとまった統合環境で解析をしたい方は、有償のソフトウェアを検討してください(フェルミ面の描画に対応していない有償のソフトウェアもあります)。