直線構造で止まるエラーについて【Gaussian】

Share This:

Gaussian を用いた反応経路探索では、遷移状態構造最適化の初期構造を探す際に opt = modredundant などで初期構造を徐々に変化させていき、エネルギーの変化や虚振動の有無などをみていきます。(詳しくは、すぐできる量子化学計算ビギナーズマニュアル (KS化学専門書)の “遷移状態を求める具体的手順を教えてください” という項目をご参照ください。)

しかし、modredundant の際に非常に困るのがエラーで計算が止まってしまうことです。今回の記事では、 3 原子が直線上に並ぶと止まってしまうというエラーへの対処方法を少し紹介します。

直線上に並ぶエラー

構造最適化の際に 3 原子の角度が 180 度になってしまうと、下記のように “Bend failed for angle” と表示されてエラーで計算が止まってしまいます。管理人は、このエラーに対して 2 つの対処法しか知りません。もし他に良い対処方法を知っている方がいらっしゃいましたら、教えてください。

対処法1: 座標を動かす

このエラーの対処方法として、座標を少し手動で動かしてからスタートさせるのが有効な場合があります。上記の場合ですと、 37, 39, 40 番の原子の配置に問題があるため、この 3 原子の角度や距離を微妙に変えます。どのくらい動かせば良いかは、経験を積むと分かってきます。

modredundant の scan などで構造を連続的に変化させている場合、座標を変えてスタートさせても数 step 計算が進んだ後に再度止まってしまうことがあるかもしれません。その時は、scan で動かす距離や角度の幅を変えたりします。

対処法2: G03 を使う!

論文の method の欄を見ていると g03 と g09 の両方を使ったという記述が数多くあると思います。

“未だに g03 使っているなんて時代遅れだな〜” と思う方もいるかもしれませんが、 g03 を使うのには理由があります。gaussian には各 revision ごとにバグや使える機能、使えない機能があります。そのような問題を避けるために今でも g03 を使う人がいます。IOp の番号も微妙に異なるため g03 で計算するということもあります。

直線構造で計算が止まってしまうというエラーに関しても g03 では起こらないと言われています。(参考文献 1: “老师说过G03好像不会出现这种情况”)

一つ問題なのは、Minnesota 汎関数 で計算している場合 g03 は使えないということです。。。

g16 では?

Gaussian 16 が今年発売された際、この問題が解決したかが非常に気になっていました。

残念ながら gaussian 16 においても直線構造で計算が止まってしまうというエラーはしっかりと残っています。

 

もし他に良い対処方法を知っている方がいらっしゃいましたら、教えてください。
管理人は専門家ではありませんので、記事に間違いなどがありましたらコメントまたはメールなどでご指摘いただけたら幸いです。

参考文献

  1. 小木虫

関連する記事

汎関数一覧に戻る

計算手法に戻る

コメントを残す(投稿者名のみ必須)