あるケミストの独り言(winchemwinの日記)

ケミスト(化学者)の視点で、面白そうな情報(シミュレーション関係など)を発信

Psi4による量子化学計算-軌道エネルギー(HOMO、LUMO)計算-その2

 前回の記事で軌道エネルギーの計算、表示例としてHOMO、LUMO軌道エネルギーの計算と表示について紹介しました。場合によっては、複数の軌道エネルギーを確認したい場合もあるかと思いますので、今回はHOMO-1やLUMO+1などの軌道エネルギーの表示事例について紹介したいと思います。

 

コード1 ライブラリーインポート、対象分子の設定

 今回もターゲット分子はアセトニトリルで計算しています。また、後のデータ処理用にnumpyとpandas をインポートしています。

コード2 構造最適化、軌道エネルギー計算 

 続いて、これまでと同様に構造最適化を行った後に、得れれた安定構造の座標を保存し、得られた安定構造に対して、一点エネルギー計算を実施しています。

コード3 表示する軌道の設定等

 今回は複数の軌道データを設定するので、その数を「orbital_level」で設定し、軌道のリストと番号をnumpy のアレイ化で作成しています。続いてそれぞれの軌道エネルギーデータの保存リストの作成を行い、前回と同様にLUMO、HOMO軌道の情報を取り出しています。

コード4 軌道エネルギーデータの取り出し

 複数の軌道エネルギーデータの取り出しは設定した「orblev」の数に応じて、for 文で実行しています。取り出したエネルギー値等は予め用意したリストにそれぞれ追加、格納しています(HOMOdata, LUMOdata, Hindex, Lindex)。

 

コード5 データフレームの作成と表示

 最後に得られたリストからデータフレームを作成し、print文で表示させています。

 

 

計算結果1

計算結果2


  上記が計算結果ですが、計算結果1はfor 文の過程で逐次表示されたもので、計算結果2はデータフレームに整理し直されたものになります。複数の軌道エネルギーを一覧で確認した場合には活用できるのではないでしょうか。ご参考になれば幸いです。