【Gaussian09】隠しコード?【Morokuma-energy-decomposition】

今年初めに Gaussian 16 が発売されたのに伴い、Gaussian 社の HP が一新されました。

IOp の Reference も全て g16 対応のものとなってしまい、g09 用の IOp マニュアルは消えてしまいました。。。(g16 と g09 の IOp は微妙に異なります。)

g09 の IOp マニュアルをダウンロードしておけば良かったと後悔している人もいるかと思いますが、心配ご無用です!
IOp マニュアルは Gaussian のソースコードの中に全て書いてあります!!

英語版Gaussian09 Secret Code ? Morokuma Energy Decomposition

L101.F を参照!

例えば、L101.F の中身を見てみると最初に Link に関してのコメントが書いてあります。そのまま読み進めていくと、 120 行目あたりから IOp の説明が始まっています。ちなみに、書式は IOp Reference と全く同じです。

L101.F には overlay 1 に関する IOp の情報が書いてあります。

L202.F には overlay 2 に関する IOp の情報が書いてあります。

同様にその他の overlay に関する IOp についても発見できると思います。

北浦・諸熊エネルギー分解法

ソースコード内の IOp に関する記述を見ていて面白いのは、一般に配布されている IOp マニュアルには記載されていない IOp も多数載っているということです!

例えば、IOp 1/160=30 というのに該当する箇所を見ますと

30 … Morokuma energy decomposition.

という記載があります。

通常、立体反発などを計算する際に 北浦・諸熊のエネルギー分解法を用いるには GAMESS など他のソフトウェアを用いることが一般的で、Gaussian では利用できないとされてきました。
しかし、Gaussian のソースコードを見る限り実装されそうになった形跡はあります。

でも、実際に iop(1/160=30) を指定して計算しても何も起こりません。。。

一般向けのマニュアルにも記載されていないところを見ると、開発段階では実装される予定だったけど、結局実装されなかったということなのでしょうか?

真相は闇の中ですが、、、

ちなみに g16 では

g09 では使われていなかった iop 1/160 ですが、g16 では一般向けのマニュアルにも記載されています。

g09 では、iop=(1/160=0, 1, 2, 10, 20, 30, 40, 50, 60, 70) に関する記載がソースコード中にありましたが、一般向けのマニュアルには書いてありませんでした。。。

一方、g16 では iop=(1/160=0, 1, 2, 10, 20, 80, 0xxx, 1xxx, 2xxx) に関する記載しかなく、Morokuma energy decomposition は削除されていました。。。

今後実装される予定があるかは不明ですが、Gaussian で使えるようになったら便利ですよね!

もしも Gaussian で の北浦・諸熊エネルギー分解法の使い方を知っている方がいらっしゃいましたら、コメントまたはメールにてご連絡いただけませんでしょうか?

 

計算に疲れきったら、たまには Gaussian のソースコードを読んでみるのも楽しいですよ!
今回の記事で紹介したのは、ソースのコメント部分ですので、プログラミングの知識が全くない人でも理解することができます。

 

管理人は専門家ではありませんので、記事に間違いなどがありましたらコメントまたはメールなどでご指摘いただけたら幸いです。

関連する記事

汎関数一覧に戻る

計算手法に戻る

管理人: