User Tools

Site Tools


quantumespresso:構造緩和

Differences

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

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
quantumespresso:構造緩和 [2018/02/22 20:20]
koudai 作成
quantumespresso:構造緩和 [2018/02/22 20:35]
koudai [注意]
Line 16: Line 16:
 格子定数はそのままに、単位胞内の原子の位置を緩和させます。 Siの単位胞内における原子の位置は、格子定数を単位として安定な構造で(0,0,0)と(0.25,0.25,0.25)にありますが、原子を少しずらした点において構造緩和をさせてみます。 格子定数はそのままに、単位胞内の原子の位置を緩和させます。 Siの単位胞内における原子の位置は、格子定数を単位として安定な構造で(0,0,0)と(0.25,0.25,0.25)にありますが、原子を少しずらした点において構造緩和をさせてみます。
  
-<file si.relax.in>+<file si.relax.in>
  
 &control &control
Line 41: Line 41:
 K_POINTS automatic K_POINTS automatic
   6 6 6 1 1 1   6 6 6 1 1 1
-  </file>+</file>
  
 構造緩和計算では、calculation='relax'を指定します。 関連するオプションの意味は次の通りです。 構造緩和計算では、calculation='relax'を指定します。 関連するオプションの意味は次の通りです。
Line 55: Line 55:
 実行は次のようにします。 実行は次のようにします。
  
-    $ pw.x < si.relax.in > si.relax.out+  $ pw.x < si.relax.in > si.relax.out
  
 結果は次のようになります。 結果は次のようになります。
  
-    si.relax.out +<file - si.relax.out>
 (略) (略)
 Begin final coordinates Begin final coordinates
Line 69: Line 68:
 End final coordinates End final coordinates
 (略) (略)
 +</file>
  
 原子位置が(0.25,0.25,0.25)付近に動いたことが確認できます。 原子位置が(0.25,0.25,0.25)付近に動いたことが確認できます。
- 
-格子定数の構造緩和 † 
  
-今度は格子定数の構造緩和を行います。 Siの格子定数はボーア半径単位で10.2程度ですが、ここから少しずらして構造緩和をさせてみます。 
  
-    si.vc-relax.in+====== 格子定数の構造緩和 ====== 
 + 
 +今度は格子定数の構造緩和を行います。 Siの格子定数はボーア半径単位で10.2程度ですが、ここから少しずらして構造緩和をさせてみます。
  
 +<file - si.vc-relax.in>
 &control &control
    calculation='vc-relax'    calculation='vc-relax'
Line 103: Line 103:
 K_POINTS automatic K_POINTS automatic
   6 6 6 1 1 1   6 6 6 1 1 1
 +</file>
  
 今度はcalculation='vc-relax'とします。 また、新しい項目&cellが必要です。 今度はcalculation='vc-relax'とします。 また、新しい項目&cellが必要です。
Line 108: Line 109:
 実行は次のようにします。 実行は次のようにします。
  
-    $ pw.x < si.vc-relax.in > si.vc-relax.out+  $ pw.x < si.vc-relax.in > si.vc-relax.out
  
 結果は次のとおりです。 結果は次のとおりです。
  
-    si.vc-relax.out +<file - si.vc-relax.out>
 (略) (略)
      crystal axes: (cart. coord. in units of alat)      crystal axes: (cart. coord. in units of alat)
Line 133: Line 133:
 End final coordinates End final coordinates
 (略) (略)
 +</file>
  
 もともと基本並進ベクトルが格子定数を単位としてa(1)=(-0.5, 0, 0.5)だったのが(-0.510132378, 0.000000000, 0.510132378)に拡大しています。 そのため、構造緩和によって得られた格子定数はボーア半径を単位として10.0*0.510132378/0.5=10.20・・・となります。 もともと基本並進ベクトルが格子定数を単位としてa(1)=(-0.5, 0, 0.5)だったのが(-0.510132378, 0.000000000, 0.510132378)に拡大しています。 そのため、構造緩和によって得られた格子定数はボーア半径を単位として10.0*0.510132378/0.5=10.20・・・となります。
- 
-注意 † 
  
-    実はvc-relax計算は原子位置の緩和も同時に行っていますが、ほとんどの場合はうまくいかないのでrelax計算と組み合わせる必要があり。 +===== 注意 ===== 
-    vc-relax計算で構造緩和を行うとき、計算に必要なパラメータは最初の格子定数と原子位置の計算から出したものを使い続けます。計算が正しいか確認するため、入力ファイルを得られたパラメータでもう一度vc-relax計算をすると良いでしょう。 + 
-    構造緩和の結果、結晶が別の対称性になってしまう場合、プログラムが以下のエラーを出して止まってしまいます。その場合は&systemに対称性を考慮しないというオプションnosym=.true.を加えてください。+  * 実はvc-relax計算は原子位置の緩和も同時に行っていますほとんどの場合はうまくいかないので、先にrelax計算を行ってからvc-relaxを実行ししょう。 
 +  vc-relax計算で構造緩和を行うとき、計算に必要なパラメータは最初の格子定数と原子位置の計算から出したものを使い続けます。計算が正しいか確認するため、入力ファイルを得られたパラメータでもう一度vc-relax計算をすると良いでしょう。 
 +  構造緩和の結果、結晶が別の対称性になってしまう場合、プログラムが以下のエラーを出して止まってしまいます。その場合は&systemに対称性を考慮しないというオプションnosym=.true.を加えてください。 
 + 
 +  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
 +      Error in routine checkallsym (2): 
 +      not orthogonal operation 
 +  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
 + 
 + 
 + 
 +====== 金属の場合 ====== 
 + 
 +金属の場合はFermi面の情報が必要ですので、 
 + 
 +  occupations='tetrahedra_opt'
  
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +を使用してください。 
-        Error in routine checkallsym (2): +このときのk点は、原点を含む 
-        not orthogonal operation +  K_POINTS automatic 
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+    12 12 12 1 1 1 
 +などとします。
  
 +* http://qe-forge.org/pipermail/pw_forum/2017-October/114051.html
  
quantumespresso/構造緩和.txt · Last modified: 2024/03/30 23:58 by koudai