ecaljで銅のフェルミ面

ecaljでは、ポスト処理としてフェルミ面の描画が可能です。より具体的に言うと、xcrysdenのbxsf形式でフェルミ面のデータファイルの出力が可能です。どちらかというとecaljでフェルミ面のデータを出力するよりもxcrysdenを使うほうが面倒なのですが、今回はそのあたりについて書きます。

Screenshot from 2017-09-22 193A253A51
Fig.1: 銅のフェルミ面



Ubuntuへのxcrysdenのインストール


Ubuntuへxcrysdenをインストールするのは簡単です。apt-getからインストールできます。

sudo apt-get install xcrysden


銅のフェルミ面の計算


ecaljでフェルミ面の計算をするのは極めて簡単で、通常のLDA計算を行った後、ポスト処理として job_fermisurfaceを実行します。今回はテスト計算ということで面心立方構造の銅のフェルミ面を描いて見ます。コントロールファイル ctrl.cu~/ecalj/MATERIAL/CuMLWF からコピーしてきました。LDA計算を含めて全部書くと以下のようになります。

cp ~/ecalj/MATERIAL/CuMLWF/ctrl.cu .
lmfa cu
mpirun -np 2 lmf-MPIK cu
job_fermisurface cu -np 2 10 10 10


最後の行がフェルミ面のデータを出力するポスト処理です。最後の 10 10 10 は計算するk点メッシュの分割数です。今回はテスト計算なので小さめの値にしていますが、実際にはもっと大きな数にしたほうがよいでしょう。
fermiup.bxsf というファイルが出来ているはずです。これがフェルミ面のデータが保存されたファイルです。

xcrysdenを用いたフェルミ面の描画


bxsf形式のファイルをxcrysdenで表示する前に注意点があります。それはUbuntuサーバー上で実行したxcrysdenをsshのX転送を使ってWindows上で表示しようとするとxcrysdenが落ちる点です。とりあえず私はクライアントマシンとしてWindows上のVirtualBoxにインストールしたUbuntuの上でxcrysdenを使うことにしました。

以下のコマンドでxcrysdenにフェルミ面のデータを読み込ませることが出来ます。

xcrysden --bxsf fermiup.bxsf


コマンドを打ち込むとxcrysdenのロゴとともに"Specify the Fermi Energy:"というダイアログが表示されます。値はあとから変更できるので、そのままOKをクリックします。

Screenshot from 2017-09-22 193A243A06

Screenshot from 2017-09-22 193A243A46
Fig.2-3: xcrysdenのロゴとフェルミエネルギー指定ダイアログ。値は気にせずOKをクリックする。


次にBARGraphとSelect bandsのウインドウが表示されます。BARGraphウインドウでは、1番から7番のバンドがどのエネルギー幅を持っているのかを示しています。水平な赤の破線で示されているのがフェルミエネルギー(E=0)です。フェルミエネルギーを横切っているバンドは6番だけです。従ってSelect bandsのBand number:6にだけチェックを入れてSelectedをクリックします。(フェルミエネルギーを横切るバンドが複数ある場合は、複数チェックを入れます。)

Screenshot from 2017-09-22 193A253A21

Screenshot from 2017-09-22 193A253A07
Fig.4-5: 1~7番の各バンドのエネルギー範囲と表示するバンドを選択するダイアログ。今回はフェルミエネルギーを横切っているのが6番だけなので6番だけを選択する。


するとフェルミ面が描画されます。Degree of Interpolationの値を大きくしてsubmitをクリックするとフェルミ面の表面が多少滑らかになります。

右下の薄ピンクの背景の部分に-0.026と書かれています。これが現在プロットされているフェルミエネルギーの値です。本来ゼロですが、若干ずれています。この値を変更することによって、フェルミエネルギー以外のエネルギーに対する波数空間での等エネルギー面をプロットすることが出来ます。

関連エントリ




参考URL




フィードバック



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

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


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


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


tag: ecalj フェルミ面 xcrysden 

comment

Secret

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

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

最新コメント
リンク

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