QEでの振動モード計算メモ
をテンプレートにして作成
AND検索
OR検索
開始行:
#image(https://mkanzaki.sakura.ne.jp/images/quartz-A1-mod...
//#image(https://mkanzaki.sakura.ne.jp/images/coesite-Ag-...
#contents
*Quantum-ESPRESSOで振動モードを計算する時のメモ (2013/10/...
**更新情報(あまりタイムスタンプは変更せずに随時更新して...
(2024/08/1) 赤外の強度計算については[[PDielecの使用法メモ...
(2023/12/17) ラマン強度計算にforsteriteの例を追加。これは...
(2023/12/8) 敢えて(プログラムをちょっとイジって)pbe(GGA...
(2023/11/24) ph.x結果からgif動画を作るph2gif.pyを公開。そ...
(2023/11/16) ph2vesta.pyを更新。オプションを追加。「a」を...
(2023/11/14) ph2vesta.pyを更新。今回から予め結晶構造のVES...
(2023/04/02) 「計算と実測スペクトルが合わない時」を追加。
(2023/02/10) enstatite多形の低周波数振動モード動画を最後...
(2022/12/12) またph2vesta.pyにバグ発見。E, Tの縮重したモ...
**Quantum Espressoによる基準振動数の計算
基準振動モードの振動数だけが知りたい場合にはph.xで(lram...
なお、Quantum EspressoのPHonon/examplesディレクトリにph...
pw.x、ph.xの計算を並列で行う時は、同じ並列(コア/CPU)数...
% mpirun -np 8 pw.x < test.scf.in > test.scf.out &
なお、xtlファイルを作るためにpw.xの後に以下を実行する。
% ./pwout2xtl.py test.scf.out
これでtest.scf.out.xtlができるので、それをVESTAで読み込...
% mpirun -np 8 ph.x < test.ph.in > test.ph.out &
% mpirun -np 8 dynmat.x < test.dm.in > test.dm.out &
振動モードの振動数が必要なだけなら、q=0だけの計算でいい...
ph.xの計算出力では3つの並進運動の振動数(低周波数に出て...
pw.x(ph.xも同様)では入力構造から点群を推定しているが、...
ph.xの出力では各振動モードについて点群の指標に基づいて...
なおassignしてくれる指標であるが、ほとんどの場合正しい...
GGAの場合(pbe-*.UPF)、計算した振動数は実測よりも低波数...
pbesol-PAW (*.pbesol-n-kjpaw_psl.UPF)で計算したstishovi...
,モード,実測シフト,計算シフト
,BSUB{SIZE(9){1g}},231 cmSUP{SIZE(9){-1}},217 cmSUP{SIZE(...
,ESUB{SIZE(9){g}},589 cmSUP{SIZE(9){-1}},571 cmSUP{SIZE(9...
,ASUB{SIZE(9){1g}},754 cmSUP{SIZE(9){-1}},733 cmSUP{SIZE(...
,BSUB{SIZE(9){2g}},966 cmSUP{SIZE(9){-1}},927 cmSUP{SIZE(...
なお、stishoviteは圧力によって変位型の相転移をして、CaC...
#image(https://mkanzaki.sakura.ne.jp/images/vibration_mod...
**VESTAでの矢印表示用コード(ph2vesta.py) [#gafeab7d]
振動モード計算をした場合、各モードで原子がどう変位する...
例えばstishoviteの計算例でテストする場合は、(3つのフ...
%./ph2vesta.py stishovite.ph.out stishovite.dyn stishovi...
とタイプしてみる。コードが実行されない時は実行権限の問題...
実行するとモードのリストが出るので、見たいモードを選ん...
arrowの色、長さ、太さは0を入力すると変更できる(現在arr...
とりあえず、沢山モードがある計算データを1個づつVESTAの...
#image(https://mkanzaki.sakura.ne.jp/images/vib_mode.png,...
**ラマン強度の計算
実のところQuantum Espressoはあまりラマン強度計算のため...
まず知っておくべきことは、現在のところ(〜ver. 7.2)ノル...
それらの対応をして、ph.xでlraman = .true.にして、振動数...
少しSiOSUB{SIZE(9){2}}鉱物でやってみたが、ノルム保存の...
stishoviteの場合の入力・出力ファイル等を添付している(...
石英で計算した例(青)を実測ラマンスペクトル(赤)と一...
#image(https://mkanzaki.sakura.ne.jp/images/quartz-Raman-...
もう1つの計算例でforsterite(MgSUB{SIZE(9){2}}SiOSUB{SI...
#image(https://mkanzaki.sakura.ne.jp/images/dft-Raman-for...
**計算と実測スペクトルが合わない時
先の石英のように多くの場合は計算と実測は結構合う。しか...
**example15のworkaround
Quantum EspressoのPHonon/examplesディレクトリのexample1...
なお、GGAの場合でも、[[このサイト:https://minerals.chaz...
変更前
IF (xclib_dft_is('gradient').and.(lraman.or.elop)) cal...
'third order derivatives not implemented with GGA', 1)
変更後
IF (xclib_dft_is('gradient').and.(lraman.or.elop)) cal...
'third order derivatives not implemented with GGA', 0)
その後にmake phでphだけコンパイルし直すとGGAでもエラーで...
なので、lramanのコメントアウトを外して、pseudopotential...
ちなみに[[ここ:https://ma.issp.u-tokyo.ac.jp/app-post/2...
上記のstishoviteの例も参考にしてください。
**振動モードのgif動画作成
振動モードを動画的に表示するコードph2gif.pyを作りました...
下はbrucite Mg(OH)SUB{SIZE(9){2}}のOHの伸縮モードで、上...
これらのモードは基本的にはOH伸縮振動だけですが、それら...
#image(https://mkanzaki.sakura.ne.jp/images/brucite-A1g-O...
#image(https://mkanzaki.sakura.ne.jp/images/brucite-A2u-O...
**さらに動画の例
これは現在研究している異極鉱hemimorphite(ZnSUB{SIZE(9)...
#image(https://mkanzaki.sakura.ne.jp/images/hemi-II-A1-mo...
**さらに動画の例(MgSiOSUB{SIZE(9){3}}エンスタタイト)
エンスタタイト(enstatite)は常圧常温で3つの多形(orthoen...
そういう低周波数のモードがどういう振動なのか気になった...
#image(https://mkanzaki.sakura.ne.jp/images/orthoenstatit...
CENTER:orthoenstatite Ag 81.8 cmSUP{SIZE(9){-1}}
#image(https://mkanzaki.sakura.ne.jp/images/clinoenstatit...
CENTER:low-clinoenstatite Ag 119.9 cmSUP{SIZE(9){-1}}
#image(https://mkanzaki.sakura.ne.jp/images/protoenstatit...
CENTER:protoenstatite Ag 106.5 cmSUP{SIZE(9){-1}}
終了行:
#image(https://mkanzaki.sakura.ne.jp/images/quartz-A1-mod...
//#image(https://mkanzaki.sakura.ne.jp/images/coesite-Ag-...
#contents
*Quantum-ESPRESSOで振動モードを計算する時のメモ (2013/10/...
**更新情報(あまりタイムスタンプは変更せずに随時更新して...
(2024/08/1) 赤外の強度計算については[[PDielecの使用法メモ...
(2023/12/17) ラマン強度計算にforsteriteの例を追加。これは...
(2023/12/8) 敢えて(プログラムをちょっとイジって)pbe(GGA...
(2023/11/24) ph.x結果からgif動画を作るph2gif.pyを公開。そ...
(2023/11/16) ph2vesta.pyを更新。オプションを追加。「a」を...
(2023/11/14) ph2vesta.pyを更新。今回から予め結晶構造のVES...
(2023/04/02) 「計算と実測スペクトルが合わない時」を追加。
(2023/02/10) enstatite多形の低周波数振動モード動画を最後...
(2022/12/12) またph2vesta.pyにバグ発見。E, Tの縮重したモ...
**Quantum Espressoによる基準振動数の計算
基準振動モードの振動数だけが知りたい場合にはph.xで(lram...
なお、Quantum EspressoのPHonon/examplesディレクトリにph...
pw.x、ph.xの計算を並列で行う時は、同じ並列(コア/CPU)数...
% mpirun -np 8 pw.x < test.scf.in > test.scf.out &
なお、xtlファイルを作るためにpw.xの後に以下を実行する。
% ./pwout2xtl.py test.scf.out
これでtest.scf.out.xtlができるので、それをVESTAで読み込...
% mpirun -np 8 ph.x < test.ph.in > test.ph.out &
% mpirun -np 8 dynmat.x < test.dm.in > test.dm.out &
振動モードの振動数が必要なだけなら、q=0だけの計算でいい...
ph.xの計算出力では3つの並進運動の振動数(低周波数に出て...
pw.x(ph.xも同様)では入力構造から点群を推定しているが、...
ph.xの出力では各振動モードについて点群の指標に基づいて...
なおassignしてくれる指標であるが、ほとんどの場合正しい...
GGAの場合(pbe-*.UPF)、計算した振動数は実測よりも低波数...
pbesol-PAW (*.pbesol-n-kjpaw_psl.UPF)で計算したstishovi...
,モード,実測シフト,計算シフト
,BSUB{SIZE(9){1g}},231 cmSUP{SIZE(9){-1}},217 cmSUP{SIZE(...
,ESUB{SIZE(9){g}},589 cmSUP{SIZE(9){-1}},571 cmSUP{SIZE(9...
,ASUB{SIZE(9){1g}},754 cmSUP{SIZE(9){-1}},733 cmSUP{SIZE(...
,BSUB{SIZE(9){2g}},966 cmSUP{SIZE(9){-1}},927 cmSUP{SIZE(...
なお、stishoviteは圧力によって変位型の相転移をして、CaC...
#image(https://mkanzaki.sakura.ne.jp/images/vibration_mod...
**VESTAでの矢印表示用コード(ph2vesta.py) [#gafeab7d]
振動モード計算をした場合、各モードで原子がどう変位する...
例えばstishoviteの計算例でテストする場合は、(3つのフ...
%./ph2vesta.py stishovite.ph.out stishovite.dyn stishovi...
とタイプしてみる。コードが実行されない時は実行権限の問題...
実行するとモードのリストが出るので、見たいモードを選ん...
arrowの色、長さ、太さは0を入力すると変更できる(現在arr...
とりあえず、沢山モードがある計算データを1個づつVESTAの...
#image(https://mkanzaki.sakura.ne.jp/images/vib_mode.png,...
**ラマン強度の計算
実のところQuantum Espressoはあまりラマン強度計算のため...
まず知っておくべきことは、現在のところ(〜ver. 7.2)ノル...
それらの対応をして、ph.xでlraman = .true.にして、振動数...
少しSiOSUB{SIZE(9){2}}鉱物でやってみたが、ノルム保存の...
stishoviteの場合の入力・出力ファイル等を添付している(...
石英で計算した例(青)を実測ラマンスペクトル(赤)と一...
#image(https://mkanzaki.sakura.ne.jp/images/quartz-Raman-...
もう1つの計算例でforsterite(MgSUB{SIZE(9){2}}SiOSUB{SI...
#image(https://mkanzaki.sakura.ne.jp/images/dft-Raman-for...
**計算と実測スペクトルが合わない時
先の石英のように多くの場合は計算と実測は結構合う。しか...
**example15のworkaround
Quantum EspressoのPHonon/examplesディレクトリのexample1...
なお、GGAの場合でも、[[このサイト:https://minerals.chaz...
変更前
IF (xclib_dft_is('gradient').and.(lraman.or.elop)) cal...
'third order derivatives not implemented with GGA', 1)
変更後
IF (xclib_dft_is('gradient').and.(lraman.or.elop)) cal...
'third order derivatives not implemented with GGA', 0)
その後にmake phでphだけコンパイルし直すとGGAでもエラーで...
なので、lramanのコメントアウトを外して、pseudopotential...
ちなみに[[ここ:https://ma.issp.u-tokyo.ac.jp/app-post/2...
上記のstishoviteの例も参考にしてください。
**振動モードのgif動画作成
振動モードを動画的に表示するコードph2gif.pyを作りました...
下はbrucite Mg(OH)SUB{SIZE(9){2}}のOHの伸縮モードで、上...
これらのモードは基本的にはOH伸縮振動だけですが、それら...
#image(https://mkanzaki.sakura.ne.jp/images/brucite-A1g-O...
#image(https://mkanzaki.sakura.ne.jp/images/brucite-A2u-O...
**さらに動画の例
これは現在研究している異極鉱hemimorphite(ZnSUB{SIZE(9)...
#image(https://mkanzaki.sakura.ne.jp/images/hemi-II-A1-mo...
**さらに動画の例(MgSiOSUB{SIZE(9){3}}エンスタタイト)
エンスタタイト(enstatite)は常圧常温で3つの多形(orthoen...
そういう低周波数のモードがどういう振動なのか気になった...
#image(https://mkanzaki.sakura.ne.jp/images/orthoenstatit...
CENTER:orthoenstatite Ag 81.8 cmSUP{SIZE(9){-1}}
#image(https://mkanzaki.sakura.ne.jp/images/clinoenstatit...
CENTER:low-clinoenstatite Ag 119.9 cmSUP{SIZE(9){-1}}
#image(https://mkanzaki.sakura.ne.jp/images/protoenstatit...
CENTER:protoenstatite Ag 106.5 cmSUP{SIZE(9){-1}}
ページ名: