スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


PWscfでシリコンのバンド構造

3. グラフェンのバンド構造と状態密度を参考に Quantum ESPRESSO(PWscf)を用いてシリコンのバンド構造を計算してみました。

Si-band.png
Fig.1: シリコンのバンド構造



セルフコンシステント計算


以下のようにシリコンの入力ファイルを作ります。
何らかの作成補助を使うとラクかもしれません(参考: PWscfの入力作成補助)。
今回は構造緩和を行うため vc-relax を利用しました。

xtl2pw.pw Si.xtl vc-relax 1


このままだと単位胞に原子を8個含む単純立方格子なので、ブラベ格子を fcc (ibrav=2)にして ATOMIC_POSITIONS もそれに倣うように編集し、これを走らせます。

mpirun -np 4 pw.x < Si.relax.in | tee Si.relax.out


&control
calculation='vc-relax' ,
restart_mode='from_scratch' ,
prefix='Si' ,
outdir = './Si/' ,
wfcdir = './Si/' ,
pseudo_dir = './' ,
disk_io='default' ,
forc_conv_thr= 0.001 ,
verbosity = 'default' ,
nstep = 100 ,
/
&system
ibrav= 2 ,
celldm(1) = 10.26221441
nat = 2 ,
ntyp = 1 ,
ecutwfc = 50.0 ,
ecutrho = 250.0 ,
/
&electrons
electron_maxstep = 100 ,
mixing_beta = 0.7 ,
! use smaller conv_thr for better results ,
conv_thr = 1.0d-12 ,
/
&ions
ion_dynamics='bfgs' ,
/
&CELL
cell_dynamics = 'bfgs' ,
press = 0.001,
press_conv_thr = 0.05 ,
! cell_dofree = 'xyz' ,
/
ATOMIC_SPECIES
Si 28.086 Si.pbe-n-kjpaw_psl.0.1.UPF
ATOMIC_POSITIONS crystal
Si 0.000000 0.000000 0.000000 0 0 0
Si 0.250000 0.250000 0.250000 0 0 0
K_POINTS automatic
4 4 4 0 0 0


nscf計算


セルフコンシステント計算の入力ファイルをコピーして nscf 計算の入力ファイルを作成します。

cp Si.relax.in Si.nscf.in


その後、以下の点を編集します。

  • calculation='bands'
  • nbnd=12
  • K_POINTS {crystal_b}


nbnd はバンドの数です。省略すると価電子数の半分×原子の個数(Siの場合はnbnd=4)となります。そうすると、半導体の場合は、価電子帯のみが計算されることになるので、少し大きめに取っておくほうがいいと思います。今回は nbnd=12 としました。

K_POINTS {crystal_b} の後の L 20 とかは、バンド構造をプロットする特徴的なk点のパスです。
最初の数字が特徴的なk点の数(だと思う)で、文字の後の数字が分割数(だと思う)です。LはL点、gGはΓ点で、この標記で使える点の名前は Doc/brillouin_zones.pdf を参照との事です。

mpirun -np 4 pw.x < Si.nscf.in | tee Si.nscf.out


なお nscf 計算用の入力ファイルの格子定数などは、構造緩和をする前の値のままですが、実際の nscf 計算では、ちゃんと構造緩和後の値を使ってくれます。

&control
calculation='bands' ,
restart_mode='from_scratch' ,
prefix='Si' ,
outdir = './Si/' ,
wfcdir = './Si/' ,
pseudo_dir = './' ,
disk_io='default' ,
forc_conv_thr= 0.001 ,
verbosity = 'default' ,
nstep = 100 ,
/
&system
ibrav= 2 ,
celldm(1) = 10.26221441
nat = 2 ,
ntyp = 1 ,
ecutwfc = 50.0 ,
ecutrho = 250.0 ,
nbnd = 12 ,
/
&electrons
electron_maxstep = 100 ,
mixing_beta = 0.7 ,
! use smaller conv_thr for better results ,
conv_thr = 1.0d-12 ,
/
&ions
ion_dynamics='bfgs' ,
/
&CELL
cell_dynamics = 'bfgs' ,
press = 0.001,
press_conv_thr = 0.05 ,
! cell_dofree = 'xyz' ,
/
ATOMIC_SPECIES
Si 28.086 Si.pbe-n-kjpaw_psl.0.1.UPF
ATOMIC_POSITIONS crystal
Si 0.000000 0.000000 0.000000 0 0 0
Si 0.250000 0.250000 0.250000 0 0 0
K_POINTS {crystal_b}
5
L 20
gG 20
X 20
W 20
gG 20


プロット用データの出力


このまででバンド計算は完了しています。次に gnuplot でプロットしやすい形式に直します。
以下のように Si.band.in を用意します。

&bands
outdir = './Si/' ,
prefix='Si' ,
filband='Si.band' ,
lsym=.true.
/


実行ファイルは bands.x です。

mpirun -np 4 bands.x < Si.band.in | tee Si.band.out


実行後に作成された Si.band.gnu が gnuplot 用の数値データです。

プロット


gnuplot でプロットするための plt ファイルとして以下のようなものを準備しました。

set terminal pngcairo size 520,390
set output "Si-band.png"

## *** Plot range ***
x1=0.8585
x2=1.8499
x3=2.3455
xmax=3.4539
set xrange [0:xmax]
set yrange [-15:10]

ef=5.9827

set xzeroaxis
set grid x

set ylabel "Energy (eV)"
set xtics ("{L}" 0, "{/Symbol G}" x1, "{X}" x2, "{W}" x3, "{/Symbol G}" xmax)
set x2tics ("{L}" 0, "{/Symbol G}" x1, "{X}" x2, "{W}" x3, "{/Symbol G}" xmax)

plot "Si.band.gnu" u 1:($2-ef) w lp not


特徴的なk点の座標は Si.band.out の中を見ると、以下のように書かれています。

     high-symmetry point:  0.4957 0.4957 0.4957   x coordinate   0.0000
high-symmetry point: 0.0000 0.0000 0.0000 x coordinate 0.8585
high-symmetry point: 0.0000 0.9913 0.0000 x coordinate 1.8499
high-symmetry point: 0.4957 0.9913 0.0000 x coordinate 2.3455
high-symmetry point: 0.0000 0.0000 0.0000 x coordinate 3.4539


エネルギーの単位は eV のようです。

Too many bands... と言われる場合


バンド計算をすると Too many bands are not converged from nscf calculation というメッセージが出て計算が止まることがあります。Google 検索をすると対策として下記の[Pw_forum] Too many bands are not converged from nscf calculationがヒットします。

Hi,Zhiting Tian
"Too many bands are not converged" can be solved for two way:
1.increase ecutwfc
2.decrease conv_thr
or both do them.

Best
Regards
--
Yun Song,Kang
Physical Science and Technology of Inner Mongolia University.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.democritos.it/pipermail/pw_forum/attachments/20110926/8f5f3309/attachment.htm


ここに書かれている通り ecutwf を大きくするか、conv_thr を小さくすると計算できるようになります。

関連エントリ




参考URL




参考文献/使用機器




フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。


tag: バンド構造 QuantumESPRESSO PWscf 分散関係 

comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性CPAPICOPアンプecalj状態密度モンテカルロ解析常微分方程式トランジスタodeDOSインターフェースPDS5022定電流スイッチング回路分散関係半導体シェルスクリプトレベルシフト乱数HP6632A可変抵抗トランジスタ技術R6452AI2C温度解析ブレッドボードバンドギャップ確率論反強磁性セミナーバンド構造数値積分偏微分方程式非線形方程式ソルバ熱設計絶縁三端子レギュレータISO-I2CA/DコンバータシュミットトリガフォトカプラカオスPWscfGW近似LM358LEDマフィンティン半径発振回路USB数値微分TL431PC817Cサーボアナログスイッチ直流動作点解析補間カレントミラー74HC4053bzqltyチョッパアンプFFT2ちゃんねる開発環境量子力学単振り子電子負荷VESTAQuantumESPRESSO標準ロジックパラメトリック解析ブラべ格子イジング模型アセンブラLDA基本並進ベクトルBSchSMPTLP621失敗談六方最密充填構造コバルト位相図QSGWGGAスイッチト・キャパシタewidth状態方程式VCAキュリー温度繰り返し最適化仮想結晶近似不規則合金熱伝導gfortran相対論抵抗FETMaximaQuantum_ESPRESSOcygwinランダムウォークラプラス方程式スピン軌道相互作用スレーターポーリング曲線マントルシュレディンガー方程式ZnO自動計測QNAP固有値問題ダイヤモンドデータロガー井戸型ポテンシャルTLP552CIFxcrysdenゼーベック係数熱力学条件分岐MCU最小値UPS格子比熱最大値ガイガー管平均場近似過渡解析Writer509スーパーセルFXA-7020ZR差し込みグラフ第一原理計算テスタ起電力OpenMP三角波ubuntuLM555NE555ブラウン運動詰め回路ハーフメタルawkfsolveUbuntuフェルミ面TLP521トランスMAS830LPGACK1026OPA2277フィルタトレーナーバトルEAGLEノコギリ波負帰還安定性ナイキスト線図MBEP-10LMC6622SC1815CapSenseAACircuitPIC16F785入出力固定スピンモーメントFSMTeX結晶磁気異方性全エネルギーc/a合金multiplotgnuplot非線型方程式ソルバL10構造正規分布等高線ジバニャン方程式ヒストグラム確率論初期値interp1fcc面心立方構造ウィグナーザイツ胞半金属デバイ模型磁気モーメント電荷密度重積分SIC不純物問題擬ポテンシャル状態図cif2cellPWgui二相共存ウルツ鉱構造edeltquantumESPRESSOフォノンリジッドバンド模型スワップ領域BaO岩塩構造ルチル構造マテリアルデザインspecx.fフラクタルマンデルブロ集合キーボードRealforceクーロン散乱三次元疎行列縮退化学反応関数フィッティング最小二乗法Excel直流解析PCTS-110TS-112日本語パラメータ・モデル等価回路モデル文字列ポケモンGO熱拡散方程式HiLAPW両対数グラフ片対数グラフ陰解法Crank-Nicolson法ifort境界条件連立一次方程式グラフの分割軸ラベルヒストグラム不規則局所モーメントスーパーリーグ円周率Gimp凡例線種シンボルトラックボール

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。