分子系のコード
基底関数の選択
まず基底関数の選択について説明します。内殻正孔状態は特殊な励起状態ですので,基底関数は通常の基底状態の計算とは異なるものを用意するべきです。内殻正孔以外の原子については,triple zetaクラスの基底関数で大丈夫でしょう。内殻励起原子上の基底関数は変更すべきです。なぜなら,よく利用されているPopleらによって提案された6-31Gのような基底関数は化学的性質を語る上で重要な価電子軌道をよく記述するように構築されているためです。内殻正孔原子の内殻電子を記述するためには適切ではないわけです。よって私は内殻正孔原子上の基底関数を変えることでかなりいい計算ができると考えています。これは内殻軌道は原子上に局在化しているためで,他の原子上の基底関数まで変える必要性は低いと考えられます。さて,いくつか手段を紹介しますと- 内殻正孔原子に対し,cc-pV5Zのような非常に大きな基底関数を使用する
- 内殻正孔原子に対し,IGLO-III基底を用いる
- 内殻軌道用に短縮された部分の短縮を解いたような基底関数を自分でつくる
2.のIGLO-III基底はNMR化学シフトを計算するために開発された基底関数で,原子核近傍に基底が多く用意されています。それほど計算規模を大きくせずに計算をすすめるにはいいやり方です。StoBe/DeMonでは希ガスを除く第3周期元素まですでに組み込まれています。
3.は意外とお手軽な手法ではないでしょうか。6-31Gの"6"というのは内殻軌道用に6つのガウス型基底を1つに短縮した基底,という意味です。この短縮を解いたものをつくってやります。例えば6-31Gの場合,1s軌道用の基底関数は6つのガウス型基底の基底関数を短縮して構築されています。この短縮を解いてやります。軌道の数はs型の関数が1つから6つに増えるだけなので,計算負荷はたいしてかかりません。
次に,同種原子が複数あった場合,問題が生じます。例えば,エタノールの炭素端の計算をしたい場合,CH3の炭素か,CH2の炭素か,どちらかに内殻正孔を局在化させたいのですが,実際に計算をすすめると,2つの炭素原子の内殻軌道の軌道エネルギーが接近しているため,計算途中で内殻正孔があちこち移動してしまい,収束性が悪くなってしまいます。これを避ける手として,
- 内殻励起しない同種原子には有効内殻ポテンシャルを用い,興味のない内殻軌道をあらわに計算することを避ける
- super symmetryを設定し,内殻励起する軌道と他の同原子種軌道の混合を避ける
2.はどうしても全電子計算を行う必要がある場合にとる手法です。StoBe/DeMon特有のオプションですが,特定の軌道間にsuper symmetryを設定することにより,ターゲットとする軌道間の相互作用をカットすることができます。混合したくない1s軌道を分けて計算を行います。