対称性を利用して入力を作る。

[本記事は私が以前書いていたblogからサルベージしたものです]

先日、Rh錯体の最適化で変なエラーが出るという話を書いたら、量子化学のおもちゃ箱の佐藤さんからコメントを頂きました(有難うございます)。で、対称性を利用して入力を作ると計算が速くなるということを聞きました。

 

ちなみに、Rh2(HCO2)4はD4hに属します。ですので、入力はこんな感じに。

 

GAMESSのINPUT manualを読むと分かりますが、axial groupではz軸を主軸とし、xy平面をsigma-h planeとするのがデフォルトになっているということで、上記のように4原子全てがxz平面上にくるようにし、主軸上に来るRhをz軸上に据えました。$CONTRLセクションのCOORD=UNIQUEは必須。

$DATAセクションからは、対称性を使って錯体構造を構築したときの原子の指定順がわかりませんので、ECP関連の入力を外し、基底系をSTO-3Gなんかにしてから一旦$CONTRLセクションのEXETYP=CHECKを使ってどんな並びになるかを確認し、それに合わせて$ECPセクションを書きました。
(※単純に4原子分だけ書くと、「全部ちゃんと指定しなさい!」って怒られます)

さて、同じ座標で、D4hで計算した場合とC1で計算した場合でどれくらい計算時間に差があるかというと…

RHF/631dLAN(RhのみLANL2DZ-ECP, C,H,Oは6-31G(d))による構造最適化計算
C1 : 3238.2 sec (53.97 min) , NSTEP=8
D4h : 394.5 sec (6.575 min) , NSTEP=9

ステップ数は1つ多いのに、トータルの計算時間は8.2倍速いという結果に!もちろん、最適化された構造は結合距離で0.0001Å差以内。
普段対称性の高い構造を扱わないので(反応機構解析とかですから)、こういうやり方はしたことが無かったんですが、すごいですね。圧倒的に速いです。もちろん、対称性が高いものを扱うのに限定はされますが。

——-謝辞——-
量子化学のおもちゃ箱の佐藤さん、有難うございました。m(_ _)m

Be the first to comment

Leave a Reply