PHASE/0は、PHASEシステム研究会が管理している第一原理電子状態計算ソフトウェアです。そのソースコードは無料でダウンロードできますので、コンパイルすると利用できます。開発環境が整っている必要があります(開発環境構築についてはこちらを参照して下さい)。
現行の公開版PHASE/0はインストール説明が整備され、また、いくつかの環境向けにはそのまま使えるMakefileが付属しています。
PHASE/0は擬ポテンシャル法を採用しており、計算の際には各元素の擬ポテンシャルが必要です。PHASE/0で用いる擬ポテンシャルは第一原理計算で作成されるのですが、作成時のパラメータの与え方によっては実験との一致がさほど良くない擬ポテンシャルができることがあります。実験値との一致が良い(それもなるべく小さなカットオフエネルギーで)擬ポテンシャルを作るためには永年の経験に基づく試行錯誤が不可欠です。
当社では、様々な計算を通して擬ポテンシャルの確認を行っており、いくつかの擬ポテンシャルについては改良版を作成しています。その一例として、スズの擬ポテンシャルをご紹介します。
スズ単結晶(ダイヤモンド構造)の凝集エネルギーと格子に作用するストレス(応力)の格子定数依存性を示します。波動関数のカットオフエネルギーを25 Rydbergとしました。最安定な格子定数は、エネルギーが最小になるところ、もしくは、ストレスがゼロになるところであり、理想的には両者は一致します。ところが現実には両者の計算手順が異なるため、同一値にはなりません。そして特に公開されている擬ポテンシャル(Sn_ggapbe_paw_us_02.pp)を使った計算では差が顕著です(右図上)。エネルギー(青線)は格子定数6.6Å付近で最小値を取りますが、ストレスがゼロになる(赤実線が点線と交わる)のはおおよそ6.2Åです。カットオフエネルギーを大きくするとこの差が小さくなる(ストレスゼロになる格子定数がエネルギー最小に近づく)ことが分かっていますが、計算負荷の上昇を伴うので、あまり大きな値は使いたくありません。
当社が作成した改良擬ポテンシャルを使うと、この問題を改善することができました。同じく波動関数のカットオフエネルギーを25 Rydbergにして計算したところ、二つの方法で求めた安定な格子定数はどちらも約6.6Åであり、実用上一致しているとみなせる程度の差で求めることができました。(右図下)。
なお、当社製品版PHASE/0にはスズ以外にも改良擬ポテンシャルが付属しています。
テキストエディタで入力ファイルを編集して困ることの一つが、キーワードの打ち間違いです。特にPHASE/0は間違ったキーワードに対してエラーを出すことはなく、無視して計算を続けようとします。GUIを利用すれば打ち間違いからは解放されますが、一部応用機能にはGUIが対応できておらず、それら機能を利用する際にはテキストエディタでの入力ファイル編集が不可避です。
そこでテキストエディタでの入力ファイル編集の負担を軽減すべく、主にLinuxで用いられる二大エディタVimとEmacsについて編集支援モードを作成しました。キーワードを色付け表示することにより間違いが見つけやすくなります。
PHASE/0入力ファイルの一行目を
!phase0_input
としてください。PHASE/0にとっては単なるコメントですが、VimはこのファイルがPHASE/0の入力であると認識します。利用方法は付属文書を参照してください。
ダウンロード:phase0-vim_001.zip
PHASE/0入力ファイルの一行目を
!-*- PHASE0 -*-
としてください。この行はPHASE/0からはコメントとみなされる一方で、EmacsにPHASE/0入力ファイルであることを伝えます。またアウトラインモードが備わっており、入力ファイルが長くなった場合に、注目箇所のみを表示することができます。
こちらで公開しています。
PHASE/0製品版のご利用にあたりご不明な点や、解析、カスタマイズのご依頼・ご相談などにつきましてはお問い合せください。