External
外部プログラムを使った計算を行います。この機能は,主にONIOM法における低レベル計算を行う際に外部プログラムを容易に利用できるようにしたものですが,Gaussian最適化機構(optimizer)による構造最適化計算を関数の値と微分を与えるような外部プログラムを用いることにより実施することも可能です。
Gaussianは統一インターフェイスを用いて,各構造でのエネルギー(と双極子モーメントや力)を与える外部プログラムを実行します。そのときの構造でテキストファイルが生成され,Gau_Externalという名のスクリプトが実行されます。このスクリプト(各自で用意します)には,次のようなものが要求されます:
- テキストファイルを他プログラムのインプットにコンバート
- そのプログラムを実行
- 得られた結果をGaussianが取り出せるような標準テキスト形式にコンバート
スクリプトは3つのパラメータをとります。1番目のパラメータは,計算を実系(R)か,2層ONIOMのモデル系あるいは3層ONIOMの中間層(M)か,3層ONIOMの小系(small system)(S)かのいずれかを示す一文字キーです。
残りの2つのパラメータは,Gaussianが外部プログラムのインプットとして用意するファイル名(インプットファイル名)と,外部プログラム完了後に読み込むファイル名(アウトプットファイル名)です。これらのファイルは共に,一度結果を取り出すとGaussianによって削除されます。
インプットファイルフォーマット
インプットファイルは以下のようなフォーマットです:
#atoms derivatives-requested charge & spinlow charge & spinmedium charge & spinhigh atomic# x y z MM-charge Repeated for each atom.1行目は,分子中の原子の番号,どの導関数を計算するか(0=エネルギーのみ,1=1次導関数,2=2次導関数),分子の電荷とスピン多重度を指定します。残りの行では,原子番号,座標,各原子に対する分子力学(MM)電荷を指定します。
アウトプットファイルフォーマット
アウトプットファイルは固定フォーマットで以下のようなデータが出力されます:
項目 コード 行フォーマット 単位 エネルギー 双極子モーメント(xyz) E, Dip(I), I=1,3 4D20.12 atomic 原子のグラジェント(xyz) FX(J,I), J=1,3; I=1,NAtoms 3D20.12 Hartrees/Bohr 分極率 Polar(I), I=1,6 3D20.12 atomic 双極子導関数 DDip(I), I=1,NAt9 3D20.12 atomic 力の定数 FFX(I), I=1,NAt3TT 3D20.12 atomic
2番目の項目は1次導関数あるいは振動数の計算を行うよう指定した場合にのみ表示され,1番目の項目も振動数の計算を行うよう指定した場合にのみ表示されます。後者のケースでは,ヘシアンが下三角形式: αij, i=1 to N, j=1 to i. で与えられます。双極子モーメントや分極率,双極子導関数は利用可能でなければゼロとなります。