基底関数の選び方

Share This:

基底関数には大きく分けて4種類あります。

Pople 系、Huzinaga-Dunning 系、Roos ANO 系、Dunning cc-pV NZ 系です。
分野や宗派によってどの基底関数を使うかは違うと思いますが、Pople 系が一般的だと思うので、Pople 系を例にして話を進めます。

結論から言いますと、とりあえず計算するときは 6-31G* を使うのが良いと思います。

カチオンが含まれている場合は、** をつける(6-31G**)。
アニオンや励起状態を扱うときは、をつける(6-31+G*)。
ヒドリドが含まれている場合は、++ をつける(6-31++G**) のが良いと思います。

また、より精度を上げたい時には、triple zeta (6-311G*) にするのが良いと思います。もしECPを使うときは、double のときはLANL2DZ、triple のときはSDDにして、そろえた方が良いと思います。
基底関数のレベルを上げると、下表のように計算コストも高くなっていきます。この辺は、お使いの計算機やタイムリミットとの相談になるかと思います。

basis_set出典:http://www.wavefun.com/support/sp_compfaq/Basis_Set_FAQ.html

エラーが起きた場合

また、NBO計算では基底関数の数が多すぎるとエラーで止まります。もしもNBO計算がエラーで落ちたときは、”primitive”で検索して、基底関数の数を確認して下さい。

この例の場合、元の基底関数の数は498個、短縮後の基底関数の数は307個です。
その他、詳しいことは時間ができ次第追記します。

関連する記事

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