This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
quantumespresso:respack [2020/08/12 21:10] koudai [分極関数の計算] |
quantumespresso:respack [2020/09/19 19:50] koudai [インプットファイル] |
||
---|---|---|---|
Line 5: | Line 5: | ||
* 誘電関数から求まる動的物理量(電子エネルギー欠損スペクトル、光学伝導度、反射率) | * 誘電関数から求まる動的物理量(電子エネルギー欠損スペクトル、光学伝導度、反射率) | ||
* 制限乱雑位相近似 (constraint random-phase approximation, | * 制限乱雑位相近似 (constraint random-phase approximation, | ||
- | * cRPAの理論はこちらのテキストの7章を参照してください https:// | + | * cRPAの理論はこちらのテキストの7章を参照してください |
+ | * https:// | ||
* 日本語および英語のマニュアルでは使用例とその結果が充実しているので、初心者でも特に困ることはないと思います | * 日本語および英語のマニュアルでは使用例とその結果が充実しているので、初心者でも特に困ることはないと思います | ||
- | | + | |
* f電子系やスピン軌道相互作用がある系には非対応 | * f電子系やスピン軌道相互作用がある系には非対応 | ||
- | * 擬ポテンシャルはノルム保存型のものにのみ対応しています。例えば以下のサイトのものを使用してください | + | * 擬ポテンシャルはノルム保存型を使用する必要があります。例えば以下のサイトからダウンロードできます |
- | * http:// | + | * http:// |
+ | * https:// | ||
Line 43: | Line 45: | ||
$ sudo make install | $ sudo make install | ||
</ | </ | ||
- | * makeにやや時間がかかります | ||
- パスをとおします< | - パスをとおします< | ||
$ echo ' | $ echo ' | ||
Line 56: | Line 57: | ||
- QuantumESPRESSO の pw.x によるSCF計算 | - QuantumESPRESSO の pw.x によるSCF計算 | ||
- RESPACKの calc_wannier による最局在ワニエ関数の計算。事前にSCF計算が必要 | - RESPACKの calc_wannier による最局在ワニエ関数の計算。事前にSCF計算が必要 | ||
- | - RESPACKの calc_chiqw による誘電関数の計算。事前にワニエ関数の計算が必要 | + | - RESPACKの calc_chiqw による誘電関数の計算。cRPAを使う場合は事前にワニエ関数の計算が必要 |
- RESPACKの calc_w3d による直接相互作用の計算。事前にcalc_chiqwのcRPA計算が必要 | - RESPACKの calc_w3d による直接相互作用の計算。事前にcalc_chiqwのcRPA計算が必要 | ||
- RESPACKの calc_j3d による交換相互作用の計算。事前にcalc_chiqwのcRPA計算が必要 | - RESPACKの calc_j3d による交換相互作用の計算。事前にcalc_chiqwのcRPA計算が必要 | ||
Line 114: | Line 115: | ||
1 2 3 4 5 6 7 8 9 !o: N_write_wannierを指定したときの、計算したいワニエ軌道の番号 | 1 2 3 4 5 6 7 8 9 !o: N_write_wannierを指定したときの、計算したいワニエ軌道の番号 | ||
& | & | ||
- | Ecut_for_eps | + | Ecut_for_eps |
- | Num_freq_grid | + | Num_freq_grid |
N_CALC_BAND | N_CALC_BAND | ||
MPI_num_proc_per_qcomm = 2, !o: コミュニティ当たりのプロセス数。MPIを使用する際に指定 | MPI_num_proc_per_qcomm = 2, !o: コミュニティ当たりのプロセス数。MPIを使用する際に指定 | ||
Line 144: | Line 145: | ||
たとえばPWscfの入力ファイルが prefix.scf.in だった場合、次のようにします。 | たとえばPWscfの入力ファイルが prefix.scf.in だった場合、次のようにします。 | ||
< | < | ||
- | $ mpirun -n 12 < prefix.scf.in > prefix.scf.out | + | $ mpirun -n 24 < prefix.scf.in > prefix.scf.out |
</ | </ | ||
* 既約k点の情報が必要なので、SCF計算 (ネームリスト< | * 既約k点の情報が必要なので、SCF計算 (ネームリスト< | ||
Line 185: | Line 186: | ||
* MPI_num_proc_per_qcommには、qの各点の計算に使用するスレッド数を指定します | * MPI_num_proc_per_qcommには、qの各点の計算に使用するスレッド数を指定します | ||
* MPIのプロセス数は MPI_num_proc_per_qcomm * MPI_num_qcomm に一致させます | * MPIのプロセス数は MPI_num_proc_per_qcomm * MPI_num_qcomm に一致させます | ||
- | * この計算に一番時間がかかります | + | * 励起状態の計算になるので、多くの非占有バンドを取り入れる必要があります |
- | * バンドの数、カットオフ、k点数、ユニットセルの体積に比例して非常に多くのメモリを消費します。普通の計算機ですとユニットセルに原子が10個くらいの物質が限界かと思われます(それ以上になる場合はスパコンの利用を検討してください)。 | + | * バンドの数、エネルギーカットオフ、k点数、ユニットセルの体積に比例して非常に多くのメモリを消費します |
* 観測される物理量としての光学応答を調べたければ通常のRPAを、相互作用パラメータを求めたければ制限RPAを使用します。それぞれ収束に必要なパラメータは異なるので注意してください。 | * 観測される物理量としての光学応答を調べたければ通常のRPAを、相互作用パラメータを求めたければ制限RPAを使用します。それぞれ収束に必要なパラメータは異なるので注意してください。 | ||
+ | * 一般に、通常のRPAの方が計算コストが大きいです | ||
===== 相互作用の計算 ===== | ===== 相互作用の計算 ===== | ||
& | & | ||
- | 事前に制限RPA法(calc_chiqw で flg_cRPA=1)を使った計算が必要です。 | + | 事前に制限RPA法(calc_chiqw で flg_cRPA=1)を使ったすべてのq (flg_calc_type = 0) での計算が必要です。 |
* 直接相互作用< | * 直接相互作用< | ||
Line 206: | Line 208: | ||
====== 計算の収束 ======= | ====== 計算の収束 ======= | ||
- | 分極関数の計算で収束させなければならないパラメータは次の2つです | + | 分極関数の計算で収束させなければならないパラメータは次の3つです |
* k点数 | * k点数 | ||
Line 214: | Line 216: | ||
最初は次の値を使用します | 最初は次の値を使用します | ||
- | * k点数 ... SCF計算で全エネルギーを収束させたもの | + | * k点数 ... ワニエでバンドが再現できる最低限の数 |
- | * Ecut_for_eps ... ecutwfcの1/ | + | * Ecut_for_eps ... 2, 3, 4 Ryあたりで計算して様子を見る |
- | 次の手順で収束させます(flg_calc_type=1としてEELSの結果をプロットして収束を確認するのが便利です) | + | 次の手順で収束させます |
- | - 多めの数のnbndでSCF計算を実行する(最初は非占有状態のバンドが50本くらいになるか、あるいはフェルミ準位より2,30eV程度上のバンドが入るくらいで試すと良い) | + | - 多めの数のnbndでSCF計算を実行する(最初はフェルミ準位より40~50eV程度上のバンドが入るくらいで試すと良い) |
- (制限RPAの場合)相互作用の大きさを求めたい軌道のワニエ基底を計算する。 | - (制限RPAの場合)相互作用の大きさを求めたい軌道のワニエ基底を計算する。 | ||
- | - N_CALC_BAND に関して分極関数を収束させる。足りなくなったらnbndを増やしたSCF計算を再び行う | + | - N_CALC_BAND に関して計算を収束させる。足りなくなったらnbndを増やしたSCF計算を再び行う |
- | - Ecut_for_eps に関して計算を収束させる。 | + | - Ecut_for_eps に関して計算を収束させる |
- | - SCF計算でk点数を増やし、分極関数を収束させる | + | - N_CALC_BANDの収束をチェックする |
+ | - SCF計算でk点数を増やし、計算を収束させる | ||
- | 有効相互作用を求める場合は、さらに Num_freq_grid(周波数のグリッド数)を増やして有効相互作用の値の収束を確認しましょう。 | + | * 有効相互作用を求める場合は、さらに Num_freq_grid(周波数のグリッド数)を増やして有効相互作用の値の収束を確認しましょう。 |
+ | * 計算が重いので、有効相互作用の有効数値は2桁出すのが精一杯かもしれません | ||
Line 241: | Line 246: | ||
omega_max=200 | omega_max=200 | ||
+ | set logscale x | ||