先日の学会ポスター発表会場にて
発表者:「・・・というわけで、DFT計算によりこの反応経路を証明しました。」
質問者:「素晴らしい発表でした。しかし、それDFT計算じゃないですよね?」
発表者:「えっ!DFT計算ですけど。。。」
質問者:「DFTってB3LYPとかですよね?M06ってDFTじゃないですよね?」
発表者:「M06はDFT計算で使う汎関数のひとつですが、、、」
質問者:「、、、失礼しました。」
学会等で計算化学についての発表を見ていると「全くDFT計算分かっていないな」と感じる事が多々あります。そんな勘違いをなくすために、今回は汎関数について非常に簡単に説明したいと思います。
量子計算化学
量子化学計算では、ある分子の波動関数Ψを求める事が出来れば、その分子に関する様々な情報が得られるという考えに基づいています。それは例えば、分子の最安定構造、反応性、物性の予測などなどです。しかし、Schrödinger方程式を厳密に解く事は、実際にはほぼ不可能です。そこで、計算化学では厳密ではないにせよ、Schrödinger方程式の解を求める方法を用います。
ひとつ目は、ハミルトニアンを計算しやすい形に変える事です。これは、計算化学においては、どのような計算手法を選択するかということになります。ハミルトニアンの数式を解けるものに変えてしまうものの例として、HF法、DFT法等があり、解ける部分を先に解き、解けない部分の効果を後から近似的に足す例として、MP2法などがあります。
ふたつ目は、波動関数の自由度を制限する事です。これは、計算化学においては、どのような基底関数を選択するかという事になります。これについては、今回の記事では触れず次回説明します。
量子化学計算では、inputファイルで「計算手法/基底関数」といった形で指定します。
DFT計算って何?
HF法では、ハミルトニアンの中の一部を近似し波動関数を直接求めようとするのに対し、DFT計算では、波動関数の代わりに電子密度を求めようとします。
DFT計算では、波動関数に対するSchrödinger方程式と等価な電子密度に対する方程式としてKohn-Sham方程式を用います。
Kohn-Sham方程式は交換相関汎関数Veffを用います。この汎関数に何を用いるかによって計算の精度が決まります。
汎関数
交換相関汎関数は、交換汎関数と相関汎関数からなり、それぞれ電子のスピンに由来する効果、電子相関に由来する効果を記述しています。
それぞれいろいろな関数が知られていますが、相性が良いものを組み合わせなければなりません。使いやすいように、これらがセットとなっている交換相関汎関数も下図に示すように知られています。
これらの中で最も有名なものがB3LYPです。つまり、冒頭の会話で質問者は、「B3LYP=DFT計算」と考えていましたが、DFT計算で用いられる様々な汎関数のうちのひとつにB3LYPがあるという方が正しいのです。
B3LYPは最も良く用いられている汎関数ですが、B3LYPにも欠点はあります。水素結合、van der Waals力を見積もれなかったり、遷移金属の電子状態を正確に計算できなかったりという点です。
万能な汎関数というものは存在せず、系によって最適な汎関数を用いなければなりません。欠点を修正するために長距離補正や分散力補正を組み込んだものや、計算時間を短縮するために半経験的汎関数などもあります。この辺については、各自でお調べください。
次回は、基底関数のことについて簡単に触れたいと思います。