====== 概要 ======
強磁性体のNiをもとに、状態密度を軌道の重みで分けた部分状態密度を計算します
====== 計算手順 ======
擬ポテンシャルとして、ウルトラソフト型の Ni.pz-nd-rrkjus.UPF をダウンロードしました
===== SCF計算 =====
&control
calculation='scf'
prefix='Ni'
pseudo_dir = './pseudo/'
outdir='./tmp/'
/
&system
ibrav=2, celldm(1) =6.48, nat=1, ntyp=1,
nspin = 2, starting_magnetization(1)=0.7,
ecutwfc = 24.0, ecutrho = 288.0,
occupations='smearing', smearing='mv', degauss=0.02
/
&electrons
conv_thr = 1.0e-10
mixing_beta = 0.7
/
ATOMIC_SPECIES
Ni 58.69 Ni.pz-nd-rrkjus.UPF
ATOMIC_POSITIONS
Ni 0.0 0.0 0.0
K_POINTS automatic
8 8 8 1 1 1
$ pw.x < Ni.scf.in > Ni.scf.out
===== 状態密度 =====
k点を細かく取って、それぞれの点でのエネルギーを求める。
Ni.scf.inをコピーして作成する。
&control
calculation = 'nscf'
prefix = 'ni',
pseudo_dir = './pseudo/'
outdir = './tmp/'
/
&system
ibrav = 2, celldm(1) = 6.48, nat = 1, ntyp = 1,
nspin = 2,
starting_magnetization(1) = 0.7,
ecutwfc = 24.0, ecutrho = 288.0, nbnd = 8,
occupations = 'tetrahedra'
/
&electrons
conv_thr = 1.0e-10
mixing_beta = 0.7
/
ATOMIC_SPECIES
Ni 58.69 Ni.pz-nd-rrkjus.UPF
ATOMIC_POSITIONS
Ni 0.0 0.0 0.0
K_POINTS automatic
12 12 12 0 0 0
$ pw.x < ni.dos.in > ni.dos.out
次に、状態密度を計算する。
&dos
outdir = './tmp/'
prefix = 'Ni'
fildos = 'Ni.dos'
Emin = 5.0, Emax = 25.0, DeltaE = 0.1
ngauss = 1, degauss = 0.02
/
^変数^初期値^説明^
|Emin|なし|状態密度のプロットの下限エネルギー。単位はeV|
|Emax|なし|状態密度のプロットの上限エネルギー。単位はeV|
|DeltaE|なし|状態密度のプロットのエネルギーの刻み幅。単位はeV|
|ngauss|0|ブロードニングの方法。0:Simple Gaussian, 1:Methfessel-Paxton, -1:"cold smearing" (Marzari-Vanderbilt-DeVita-Payne)|
|degauss|なし|ブロードニングの幅。単位はRy|
$ dos.x < Ni.dos2.in > Ni.dos2.out
Ni.dos というファイルに、アップスピンとダウンスピン、それを合計したものの状態密度が出力される。
最後に、状態密度を軌道ごとに分解する
&projwfc
outdir = './tmp/'
prefix = 'Ni'
Emin = 5.0, Emax = 25.0, DeltaE = 0.1
ngauss = 1, degauss = 0.02
/
$ projwfc.x < Ni.pdos.in > Ni.pdos.out
Ni.pdos_atm#1(Ni)_wfc#1(s) にs軌道の部分状態密度が、Ni.pdos_atm#1(Ni)_wfc#2(d) にd電子の部分状態密度が、Ni.pdos_totに全状態密度が出力される。
出力されたファイルでのd軌道の部分状態密度であるが、左から順にd3z2−r2, dzx, dzy, dx2−y2, dxyである。
詳しくはマニュアル /PP/Doc/INPUT PROJWFC.html を参照すること。
===== k分解状態密度 =====
Ni.scf.inをコピーして、Ni.bands.inを作成する。
&control にある calculation を scf から bands に変更する。
K_POINTSをバンドの経路に変更する
&control
calculation='bands'
prefix='Ni'
pseudo_dir = './pseudo/'
outdir='./tmp/'
/
&system
ibrav=2, celldm(1) =6.48, nat=1, ntyp=1,
nspin = 2, starting_magnetization(1)=0.7,
ecutwfc = 24.0, ecutrho = 288.0,
occupations='smearing', smearing='mv', degauss=0.02
/
&electrons
conv_thr = 1.0e-10
mixing_beta = 0.7
/
ATOMIC_SPECIES
Ni 58.69 Ni.pz-nd-rrkjus.UPF
ATOMIC_POSITIONS
Ni 0.0 0.0 0.0
K_POINTS tpiba_b
3
1.0 0.0 0.0 40
gG 56
1.0 1.0 0.0 1
$ pw.x < Ni.bands.in > Ni.bands.out
projwfc.xを使って部分状態密度を計算する
&projwfc
outdir = './tmp/'
prefix = 'Ni'
ngauss = 0, degauss = 0.036748
DeltaE = 0.01
kresolveddos = .true.
filpdos = 'Ni.k'
/
$ projwfc.x < Ni.kpdos.in > Ni.kpdos.out
すると Ni.kpdos.out というファイルの他に、Ni.k.pdos_tot, Ni.k.pdos_atm#1(Ni)_wfc#1(s), Ni.k.pdos atm#1(Ni)_wfc#2(d) というファイルができるはずである。
これはそれぞれ両方、 s電子のみ、d電子のみのk分解状態密度のデータである。