====== 概要 ====== 強磁性体の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 = 'mp' 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をコピーして作成します。 変更箇所は以下の2ヶ所です。 * calculations='nscf'にする * k点の数を多めに取る &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 = 'smearing' smearing = 'mp' 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 12 12 12 0 0 0 $ pw.x < ni.nscf.in > ni.nscf.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.dos.in > Ni.dos.out Ni.dos というファイルに、アップスピンとダウンスピン、それを合計したものの状態密度が出力されます。 最後に、状態密度を軌道ごとに分解します。 Ni.dos.inをコピーしてNi.pdos.inというファイル名にしてください。 変更箇所はありません。 &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です。 詳しくは[[https://www.quantum-espresso.org/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分解状態密度のデータである。 ===== 注意 ===== nscf計算でoccupations='tetrahedra'とすると、状態密度は自動的にテトラヘドロン法を使ったものになります。