dendecdenの家

知らなかったことや思ったことを書きます

Quantum Espresso の使い方!

 ---注意---

 当ブログ筆者はQuantum Espressoのチュートリアルをクリアできた程度の知識なので、シミュレーションデータの正確性などの物性に関する質問には答えられません。

 -----------

1. 参考資料

参考にしたブログを紹介します。

・インストールからチュートリアルまで

www.cmpt.phys.tohoku.ac.jp

QEの詳しい参考資料

 


 

・インプットファイルの作成や、QuantumEspressoとBoltzTrapの連携など

gomisai.blog75.fc2.com

2. 目的

Quantum Espressoが実行できたので、その方法の記録。

当ブログ筆者は工学部だが、半導体等の電子物性解析ソフトに触れてみたかった。

 

3. 実行環境と準備 

 実行するPCは、可能な限り多い計算スレッドと大きなRAMが良い。特に、RAMの容量によってはエラーが出てしまうので注意。

・使用したPC

CPU   : Xeon e3-1240 V3 (4C 8T 3.4GHz)

RAM  : 16 GB

GPU   : GTX650

OS     : Ubuntu 18.04.5 LTS (64 bit)

HDD  : 500 GB

 

---< 追記, 20201108>---

Quantum Espresso 6.5でビルド失敗( Ubuntu 20.04 LTSでも失敗)

スクリプトの構文ミスが原因かも。

QE 5.4 を使う

 

 ・事前に必要なこと

Quantum Espresso本体のダウンロード

https://www.quantum-espresso.org/download

解凍(展開)して適当な場所に置く

(今回は"q-e-qe5.4"のファイルで、置き場所は"/home/a/hatena_QE/")

 

f:id:dendecden:20201024220751p:plain

ビルド用のアプリをapt-getで入れる

$ sudo apt-get update

$ sudo apt-get upgrade -y

$ sudo apt-get install build-essential 

 

4. Quantum Espressoのビルド

  オプションはQEのマニュアルを見て適時追加。当ブログでは動けばいいのでオプションを追加しない。

 cd でq-e-qe5.4ファイルに入る

$ cd /home/a/hatena_QE/q-e-qe5.4

コンフィグ設定を行い、ビルドする。

$ ./configure

$ make all

 ビルドオプションも存在し、指定したパッケージのみをビルドすることができる。今回は"all"としていて、QEに含まれるすべてのパッケージをビルドしている。

ビルドは数十分かかることもある。

 q-e-qe5.4ファイル内の"bin"を見ると、計算用の実行ファイルが作成されている。

 

f:id:dendecden:20201024220916p:plain

 

---"make all "で error がでた場合---

・Quantum Espressoファイル内で"make clean"を行う。

これで、先ほどの"make all"で作成されたファイルが削除される。

原因と解決方法として、

・build-essentialを入れていない 

$ sudo apt-get install build-essential をする

・Quantum Espressoファイルを権限がないところに入れた

(ファイルを/home/<ユーザー名>に移す)

・OSでHDDデータ操作がロックされている 。

再起動する 

・OSのインストール自体が失敗している。

再インストールする

 

が考えられる。特に、VirtualBoxでは下2項目が生じやすい。

これでも解決しないのなら、当ブログ以外で調べてほしい。

-------------

errorが出ていないなら、ビルドが成功している。

 

f:id:dendecden:20201024221003p:plain

5. パスを通す

 作成したファイルにパスを通す。

/home/<ユーザー名> の.profile か.bashrcをテキストエディタで開く。見当たらない場合は、ファイルマネージャーウィンドウ内で右クリックして、「隠しファイルを表示」をチェック。

f:id:dendecden:20201024221333p:plain

 .profile (.bashrc )の最下行に以下の文を追加する。

export PATH=$PATH:/home/a/hatena_QE/q-e-qe-5.4/bin/:

export PATH=$PATH:~/: が既にあるのなら、その後ろに /home/a/hatena_QE/q-e-qe-5.4/bin/: を追加。

 

 6. チュートリアルをやる

  1.参考資料にリンクがあるので、ぜひやってみよう。ここでは、当ブログ筆者の失敗例を紹介する

・peseudoファイルの参照を間違えた。

 .inファイル内の項目 &control 内

peseudo_dir = '../peseudo/' ,

赤文字部分を、ダウンロードしたpeseudoファイルのあるパスに書き換える。次に、

ATOMIC_SPECIES
C 12.0107 C.pz-van_ak.UPF

赤文字部分を、ダウンロードしたpeseudoファイル名に書き換える。

 

・計算が最後まで実行されない。エラーログを見たら、” Too many bands are not converged from nscf calculation”と書いてある。

nscf計算で多発した。RAM容量が足りないときに生じる(要検証)

よくあるエラーなので、次の解決法が知られている。

  • &system 内の ecutwfc を増やす。(例 ecutwfc = 60 から ecutwfc = 160)

  • &electron 内の conv_thr を減らす。(例 conv_thr = 10d-14 から conv_thr = 10d-8)

 参考:

http://www.democritos.it/pipermail/pw_forum/2011-September/022049.html

 

おまけ1:Quantum Espressoの入力ファイル作成はどうしたら?

ありがたいことに、次のブログで紹介されている。

gomisai.blog75.fc2.com

 

 おまけ2:Boltz Trapのインストール

Boltz Trapは次のリンクからダウンロードする。

https://www.imc.tuwien.ac.at/forschungsbereich_theoretische_chemie/forschungsgruppen/prof_dr_gkh_madsen_theoretical_materials_chemistry/boltztrap/

f:id:dendecden:20201024211016p:plain

ダウンロードしたファイルを解凍し、適当な場所に移動。

端末で解凍したファイルへ行く。

$ cd /home/a/boltzTrap-1.2.5/src

ここから、QuantumEspress同様にビルドするのだが、BoltzTraPの参照しているアプリは古すぎて別のアプリに統合されていおり、現在のUbuntuでは単体でインストールできない。このため、統合したアプリをインストールし、Makefileを編集し統合先のアプリを参照させる。

 

まず、統合したアプリ(libatlas3-base liblapack3-base)をインストールする。

$ sudo apt-get install libatlas3-base liblapack3-base -y

 ここで、インストール先のパスをコピーする 

f:id:dendecden:20201024222018p:plain

src 内の"Makefile"をテキストエディタで開く 

f:id:dendecden:20201024221545p:plain

LIBS = -lipack -lblas

の-lipack -lblasをインストール先に書き換える。

f:id:dendecden:20201024222225p:plain

今回は、 

LIBS = /usr/lib/x86_64-linux-gnu/atlas/libblas.so.3 /usr/lib/x86_64-linux-gnu/atlas/libblapack.so.3

 となる。編集後、保存して閉じ、

$ make

とすると、ビルドが始まる。

あとは、srcに実行ファイルがあるのでここにパスを通す。

 

おまけ2のおまけ:BoltzTrapの基礎

当ブログ筆者の失敗事例である。

BoltzTrapを実行する時、そのディレクトリ名はインプットファイル名と一致させる必要がある。

例えば、インプットファイルを「Mg2Si.intrans」としたときに、インプットファイルは「Mg2Si」というファイルの中にある必要がある。

 f:id:dendecden:20201024222732p:plain

画像のような状態で、

$ cd /home/a/test/20201018/Mg2Si

$ x_trans BoltzTraP

をすると計算が実行する。

 

 終わり

本記事はUbuntuの基本的な扱い方まで書いてあり、有識者にははがゆい記事という印象を持つかもしれません。ゆるして。