User Tools

Site Tools


wien2k:軌道ポテンシャル

概要

  • バンド計算では電子相関の効果が無視されるため、一般にバンドギャップを過小評価してしまいます
  • 相関の効果を取り入れることができ、計算コストがもっとも安いのが、軌道ポテンシャルを手で入れる方法です
  • 特にd電子系やf電子系といった局在が強い系に対して有効です。
  • 組み合わせる手法によってLDA+U法、あるいはGGA+U法とも呼ばれます
  • 非磁性体の場合を解説します。反強磁性体の場合は反強磁性を参照してください

計算方法

  1. 事前にSCF計算を行います。収束は粗めで構いません。このときスピン分極を許した計算にします
    $ instgen_lapw -ask  # 全部 n (non-magnetic) にする
    $ init_lapw -b -numk 1000 -rkmax 8.5 -sp
    $ runsp_c_lapw -i 100 -p
    • runsp_c_lapw はSCF計算において各原子の磁気モーメントがゼロになるように制限します
    • プログラム上は軌道ポテンシャルを入れない runsp_c_lapw 計算はスキップできますが、予期せぬ状態に収束してしまうことがあります。必ず軌道ポテンシャルなしの計算を最初にしてください
  2. 軌道ポテンシャルの設定ファイルを作成します
    $ init_orb_lapw -orb
     You have the following atoms:
    1 : Ni1
    2 : Ni2
    3 : O
    3 : O
    Enter the name, l, U(Ry) and J of the Atoms (eg. Fe 2 0.3 0.0; exit with RETURN):Ni 2 0.88 0
    Enter the name, l, U(Ry) and J of the Atoms (eg. Fe 2 0.3 0.0; exit with RETURN):
  3. 入力ファイルが表示されるので、正しく設定されたか確認します
    • NiO.indm
      • 2行目: +Uを入れる原子の数
      • 3,4行: +Uを入れる原子のインデックス(NiO.structで確認。Ni1の場合は1、Ni2の場合は2になっているはず)、+Uをいれる軌道の数(今回はd軌道の1つ)、+Uを入れる軌道の種類(d軌道ならl=2)
      • 5行目: LDA+Uは 0 0 で固定。詳しくはUser's Guideの7.10節
        NiO.indm
        -12.0         Emin cutoff
        2               number of atoms
        1  1 2      index of atom, number of l, l
        2  1 2      index of atom, number of l, l
         0 0          r-index,(l,s) index
    • NiO.inorb
      • 1行目: nmodはLDA+U計算なら1、natorbは+Uする原子の数、 iprは1にすれば出力がより詳細になる
      • 2行目: 変更不可
      • 3, 4行目: iatomは+Uを入れる原子のインデックス、nlorbはその原子で+Uを入れる軌道の数、lorbはその軌道の軌道角運動量(今の場合はd電子なのでl=2)
      • 5行目: ポテンシャルの入れ方。詳しくはUser's guideの7.4節参照
        • AMF(0) … 金属などの弱相関系に使用。
        • SIC(1) … モット絶縁体などの強相関電子系に使用。
        • HMF(2) … 平均場的にハバードUを入れる。現在は非推奨。
      • 6, 7行目: クーロン相互作用Uの値とフント結合Jの値。単位はRyなので注意
        NiO.inorb
         1 2 0        nmod, natorb, ipt
        PRATT   1.0  
        1  1 2      index of atom, number of l, l
        2  1 2      index of atom, number of l, l
          1               nsic 0..AMF, 1..SIC, 2..HFM
         0.44   0      U J (Ry)
         0.44   0      U J (Ry)
  4. ブロイデン法の履歴を削除して(削除しないままSCF計算を実行してしまうとファイルが壊れてしまうので注意)、オプション-orbをつけて実行します
    $ rm *.broyd*
    $ runsp_c_lapw -cc 0.0001 -ec 0.00001 -i 100 -orb -p
    • 計算の収束の確認などでk点数を変更する場合は次のようにします
      $ x_lapw kgen
      $ runsp_c_lapw -cc 0.0001 -ec 0.00001 -i 100 -orb -p -NI
    • 軌道ポテンシャルの大きさを変更するときは NiO.inorb を直接編集してください。
    • 軌道ポテンシャルが入っている状態でSCFを再計算するときは、ブロイデン法の履歴を削除しないでください。
    • 軌道ポテンシャルをいれる軌道の種類は途中で変更できないので、変更したい場合は最初から(init_lapwから)やり直してください。

スピン分極を許しているので x_lapw を使う場合は -up が必要です。 また x_lapw lapw1 および x_lapw lapwso を実行する際は、必ずオプション -orb をつけて実行してください。

$ x_lapw lapw1 -up -orb -p
wien2k/軌道ポテンシャル.txt · Last modified: 2021/06/27 22:04 by 127.0.0.1