====== 概要 ====== 強磁性体の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分解状態密度のデータである。