前回の記事で振動計算について紹介させていただきました。振動計算は、通常構造最適化に続いて行うことも多いことから、構造最適化を行った後にそのまま振動計算をするコードを作成してみました。また構造最適化後の振動計算は、負の振動数がないかどうか(最適化構造が遷移状態に類するものではなく、安定構造となっているかどうか)の確認を目的に行いますので、負の振動数が得られているかどうかの判定も行っています。
振動数の判定ですが、得られた結果をリスト化した後にnumpy array にして判定しています。負の振動数がなかった場合には”No imaginary frequency"として、振動数のリストを表示させています。負の振動数があった場合は負の振動数を個別に表示するようにしています。
以下はアセトニトリルの計算結果ですが、負の振動数がなかった場合は以下のような結果が表示されます。
一方、以下は酢酸エチルの場合で負の振動数が確認された場合の結果の表示になります。
今回は構造最適化からの振動計算及びその結果の判定について紹介させていただきました。次回からは各種物性値の計算事例について紹介したいと思います。