9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Quantum ESPRESSO入出力結果(原子構造)の可視化方法

Last updated at Posted at 2021-01-21

物質の構造はその電子状態に大きな影響を与えます。誤った構造を与えると当然誤った結果が得られますので、作成した入力ファイルが自分の計算したい構造であるか、計算の前に確認するのはとても重要です。また構造最適化を行って得られた構造は正しく最適化されているか、また最適化して得られた構造を解析して実験あるいは高精度計算と比べてどの程度の誤差で計算されているか評価するのはとても重要です。
ここではQuantum-ESPRESSOの入出力ファイルに記述されている原子構造を可視化するための幾つかの方法を紹介します。

入力ファイルの可視化

pwi2xsf.shの利用

まずESPRESSOのroot directory以下にある

PW/tools

をコマンドサーチパスに追加します。bashを使用している場合は例えば~/.bashrc

PATH=${PATH}:${HOME}/QE/src/qe-6.6/PW/tools

を書き加え

source ~/.bashrc

を実行すれば良いでしょう。

which pwi2xsf.sh
which pwi2xsf.x

を実行してコマンドが表示されれば問題無く実行できる筈です。

計算を行うディレクトリにおいて

pwi2xsf.sh scf.in

を実行します。ここでscf.inは使用する入力ファイル名にあわせて適宜変更して下さい。
入力ファイルの構造の記述に問題が無ければXSF形式の構造がスクリーンに出力され、さらにpwi2xsf.xsf_outというXSF形式のファイルが生成されますので適宜名前と拡張子を変えてVESTAVMDなどを利用して可視化して構造の確認を行います。
Quantum-ESPRESSOディストリービューションに含まれるpwi2xsf.f90は比較的古いため、新しい入力ファイルの記法に対応していない場合がありますので注意が必要です。例えばibrav=0の場合、Quantum-ESPRESSOではcelldm(1)を指定するとエラーが出力され止まりますが、pwi2xsf.shを実行するためにはcelldm(1)=1.d0など出力結果に影響を与えない数値を与えておく必要があります。

最新のXCrySDenに含まれるpwi2xsf.shとpwi2xsf.f90を使うという選択しもありますが、VESTAを使用する場合

 DIM-GROUP
 3   1

と空白に対応していませんので、xsfファイルを編集してから利用する必要があります(どちらにしても一手間かかってしまうようです)。pwi2xsf.f90を修正して使うのが良いですね。

XCrySDenの利用

XCrySDen
XCrySDenはQuantum-ESPRESSOの入力ファイルを直接読み込んで可視化することが可能です。

xcrysden

と実行し、Quantum-ESPRESSOの入力ファイルを指定して開いても良いですし、以下を実行しても良いでしょう。

xcrysden --pwi [QE input file]

ここでQE input fileはQuantum-ESPRESSOの入力ファイル名です。

Quantum ESPRESSO input generator and structure visualizerの利用

Quantum ESPRESSO input generator and structure visualizer
上記ページで入力ファイルをアップロードすることで構造の可視化が可能です。
cifファイル等 (*.cif, *.xyz, *.xsf, *.pdb, POSCAR) をアップロードして入力ファイルの作成を行うことも可能です。

ASEの利用

Atomic Simulation Environmentを利用すると構造を簡単に可視化できます。

ase-gui

ASEをインストールした環境で以下を実行するだけで構造を直接可視化できます。

ase-gui [QE input file]

構造の出力と可視化

例えば以下のスクリプトを実行することで入力ファイルに記述された構造をXYZなどのファイルに出力可能です。入力ファイルがh2.scf.inだとすると

import ase
from ase.io import read, write
h2=ase.io.read("h2.scf.in")
write('h2.xyz',h2)

を実行するとh2.xyzが出力されます。これを別のVESTAなどのソフトで可視化すると良いでしょう。ASEからVESTAなどを立ち上げても良いでしょう(ファイルフォーマットはASEのサイトを参考のこと)。
出力ファイルも同様にして可視化が可能です。

出力ファイルの可視化

pwo2xsf.shの利用

pwo2xsf.shpw.xの出力ファイルを読み込みXSF形式のファイルを生成します。
先ずはpwo2xsf.shへのコマンドサーチパスが通っているか確認します。

which pwo2xsf.sh

初期構造をXSFファイルに書き出すためには

pwo2xsf.sh -ic relax.out

を実行します。ここでrelax.outには出力ファイルを指定します。このままでは構造はスクリーンに出力されますので

pwo2xsf.sh -ic relax.out > ic.xsf

などとレダイレクションします。

最新の構造を書き出すためには

pwo2xsf.sh -lc > lc.xsf

とすれば良いでしょう。他のオプションは

pwo2xsf.sh

と引数無しでコマンドを実行し確認することができます。

:bangbang: 注意 :bangbang:
Quantum-ESPRESSOディストリビューションに含まれるpwo2xsf.shのバージョンは古いため、出力ファイルにwarningが書き出された際にうまく対応できないことがあります。その場合はXCrySdenの最新版(1.6.2)のscripts/以下に含まれるpwo2xsf.shを使用すると良いでしょう。

XCrySDenの利用

XCrySDenはQuantum-ESPRESSOの出力ファイルを直接読み込んで可視化することも可能です。入力ファイルと同様に

xcrysden

を実行してQuantum-ESPRESSOの出力ファイルを開くか、直接

xcrysden --pwo [QE output file]

を実行することで構造最適化の過程をムービーにしたり、最適化後の構造を表示することが可能です。

Materials Cloudの利用

Materials CloudのWork>ToolsにリンクされているQuantum ESPRESSO input generator and structure visualizerにQuantum ESPRESSOの入力ファイルをアップロードすると新しくPWscf計算の入力ファイルを作成されるだけでなく、ウェブ上で構造を見ることができます。

XMLファイルの利用

outdirにXMLファイルが出力されます。AiiDAのパーサーを利用して可視化することも可能でしょう。ただし自分にはほぼ経験がありませんので、情報があれば更新します。

9
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?