wien2k:軌道ポテンシャル
概要
- バンド計算では電子相関の効果が無視されるため、一般にバンドギャップを過小評価してしまいます
- 相関の効果を取り入れることができ、計算コストがもっとも安いのが、軌道ポテンシャルを手で入れる方法です
- 特にd電子系やf電子系といった局在が強い系に対して有効です。
- 組み合わせる手法によってLDA+U法、あるいはGGA+U法とも呼ばれます
- 非磁性体の場合を解説します。反強磁性体の場合は反強磁性を参照してください
計算方法
- 事前に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 計算はスキップできますが、予期せぬ状態に収束してしまうことがあります。必ず軌道ポテンシャルなしの計算を最初にしてください
- 軌道ポテンシャルの設定ファイルを作成します
$ 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):
- 入力ファイルが表示されるので、正しく設定されたか確認します
- 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)
- ブロイデン法の履歴を削除して(削除しないまま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