User Tools

Site Tools


quantumespresso:phonon:フォノンの計算

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
quantumespresso:phonon:フォノンの計算 [2020/11/18 20:36]
koudai [Γ点のフォノン]
quantumespresso:phonon:フォノンの計算 [2020/12/05 04:49]
koudai [Γ点のフォノン]
Line 28: Line 28:
 </file> </file>
  
-  * 金属の場合はsmearingを指定する必要がありますが、テトラヘドロン法はフォノン計算に使えません。+  * 金属の場合はsmearingを指定する必要がありますが、テトラヘドロン法はフォノン計算に使えません(以下のph.x実行時にエラーが出ます)
  
 <code> <code>
Line 57: Line 57:
  
 ^変数^初期値^説明^ ^変数^初期値^説明^
-|tr2_ph|1.0d-12|フォノンの計算の収束条件。経験的に1.0d-14を使ったほうがよい+|tr2_ph|1.0d-12|フォノンの計算の収束条件。経験的に1.0d-14を使ったほうがよい| 
-|prefix|pwscf|SCF計算で使用したプレフィックスと同じにする+|prefix|pwscf|SCF計算で使用したプレフィックスと同じにする| 
-|epsil|.false.|誘電率を計算する。Γ点の計算に必要。ただし.true.にする場合は、半導体かつΓ点の計算でないとエラーが出る+|epsil|.false.|誘電率を計算する。Γ点の計算に必要。ただし.true.にする場合は、半導体かつΓ点の計算でないとエラーが出る| 
-|outdir|./|出力ファイルの場所。| +|outdir|./|出力ファイルの場所。SCF計算のものと同じにする
-|fildyn|matdyn|結果であるdynamical matrixを出力するファイル名|+|fildyn|matdyn|結果であるdynamical matrixを出力するファイル名|
  
   * 金属の場合は、epsil=.false.として、計算するk点を 0.01 0.0 0.0 のようにΓ点から少しずらしてやるとうまくいきます。   * 金属の場合は、epsil=.false.として、計算するk点を 0.01 0.0 0.0 のようにΓ点から少しずらしてやるとうまくいきます。
Line 70: Line 70:
 $ ph.x < Si.phG.in > Si.phG.out $ ph.x < Si.phG.in > Si.phG.out
 </code> </code>
- 
-  * 金属の計算で |ddv_scf|^2 が発散してしまう場合は、SCF計算の際にdegauss=0.001など小さいものを使ってください。計算がうまく行けば、収束がうまくいく範囲でdegaussを大きくします。 
  
 結果はfildynで指定したもの(今の場合はSi.dynG)に出力されます。 結果はfildynで指定したもの(今の場合はSi.dynG)に出力されます。
Line 121: Line 119:
 </file> </file>
  
-Γ点のフォノンは q->0 の極限で定義されます。lpermは q=(q(1), q(2), q(3)) に沿って q->0 の極限をとることを指定します。+  * Γ点のフォノンは q->0 の極限で定義されます。lpermは q=(q(1), q(2), q(3)) に沿って q->0 の極限をとることを指定します。 
 +    * さっきの計算で波数を 0.01 0.0 0.0 とした場合はasrおよびlpermの行を削除して q(1) = 0.01 としてください。 
 +  * asrはacoustic sum ruleの略で、'simple'にするとΓ点で音響フォノンの振動数がゼロになるようにします。デフォルトは'no'(何もしない)です。このほか、次のものが指定できます 
 +    * zero-dim ... 分子の計算で使います 
 +    * one-dim ... 1次元系の計算(カーボンナノチューブなど)に使います 
 +    * crystal ... simpleよりも計算精度があがりますが、その分コストも増えます。simpleでうまく行かない場合はこちらにします。
  
 実行は次のようにします。 実行は次のようにします。
 <code> <code>
-$ dynmat.x < Si.dynmat.in > Si.dynmat.out+$ dynmat.x < Si.dynmatG.in > Si.dynmatG.out
 </code> </code>
  
Line 146: Line 149:
   tr2_ph=1.0d-14,   tr2_ph=1.0d-14,
   prefix='Si',   prefix='Si',
-  amass(1)=28.08, 
   outdir='./tmp/',   outdir='./tmp/',
   fildyn='Si.dynX',   fildyn='Si.dynX',
Line 186: Line 188:
  
  
-<file - Si.dynmat.in>+<file - Si.dynmatX.in>
 &inputfil &inputfil
   dyn ='Si.dynX',   dyn ='Si.dynX',
-  asr ='no'+  filxsf = 'dynmatX.axsf'
 / /
 </file> </file>
 +
 +<code>
 +$ dynmat.x < Si.dynmatX.in > Si.dynmatX.out
 +</code>
quantumespresso/phonon/フォノンの計算.txt · Last modified: 2021/06/27 22:04 (external edit)