DIIS

DIIS反復部分空間における直接反転法、または反復部分空間の直接反転法)は、Pulay混合法とも呼ばれ、既知のサンプルベクトルの線形結合に対する誤差残差(例えば、ニュートン・ラプソンのステップサイズ)を直接最小化することにより、一連の線形方程式の解を外挿する手法です。DIISは、ハートリー・フォック自己無撞着場法の収束を加速および安定化することを目的として、計算量子化学の分野でピーター・プレーによって開発されました。 [ 1 ] [ 2 ] [ 3 ]

与えられた反復において、この手法は、以前の反復から得られた近似誤差ベクトルの線形結合を構築します。線形結合の係数は、最小二乗法の意味でヌルベクトルを最もよく近似するように決定されます。そして、新たに決定された係数は、次の反復における関数変数を外挿するために使用されます。

詳細

各反復において、変数値p iに対応する近似誤差ベクトルe iが決定されます。十分な反復回数を経ると、 m個の以前の誤差ベクトルの線形結合が構築されます

em+1i1m ciei.{\displaystyle \mathbf {e} _{m+1}=\sum _{i=1}^{m}\ c_{i}\mathbf {e} _{i}.}

DIIS法は、係数の和が1になるという制約の下で、e m +1のノルムを最小化しようとします。係数の和が1になる必要がある理由は、試行ベクトルを厳密解( p f)と誤差ベクトルの和として表せば分かります。DIIS近似では、以下の式が得られます。

picipf+eipfici+iciei{\displaystyle {\begin{aligned}\mathbf {p} &=\sum _{i}c_{i}\left(\mathbf {p} ^{\text{f}}+\mathbf {e} _{i}\right)\\&=\mathbf {p} ^{\text{f}}\sum _{i}c_{i}+\sum _{i}c_{i}\mathbf {e} _{i}\end{aligned}}}

厳密解を求めるには係数の和が1でなければならないことは明らかなので、第2項を最小化します。この最小化はラグランジュ乗数法によって行われます。未定乗数λを導入すると、ラグランジュ関数は次のように構築されます。

Lem+122λi ci1ijcjBjici2λi ci1 ここで Bijejei.{\displaystyle {\begin{aligned}L&=\left\|\mathbf {e} _{m+1}\right\|^{2}-2\lambda \left(\sum _{i}\ c_{i}-1\right),\\&=\sum _{ij}c_{j}B_{ji}c_{i}-2\lambda \left(\sum _{i}\ c_{i}-1\right),{\text{ where }}B_{ij}=\langle \mathbf {e} _{j},\mathbf {e} _{i}\rangle .\end{aligned}}}

Lの係数と乗数に関する導関数をゼロと等しくすると、m個の係数 (およびラグランジュ乗数) について解くべき( m + 1)線形方程式のシステムが得られます。

[B11B12B13...B1m1B21B22B23...B2m1B31B32B33...B3m1Bm1Bm2Bm3...Bmm1111...10][c1c2c3cmλ][00001]{\displaystyle {\begin{bmatrix}B_{11}&B_{12}&B_{13}&...&B_{1m}&-1\\B_{21}&B_{22}&B_{23}&...&B_{2m}&-1\\B_{31}&B_{32}&B_{33}&...&B_{3m}&-1\\\vdots &\vdots &\vdots &\vdots &\ddots &\vdots \\B_{m1}&B_{m2}&B_{m3}&...&B_{mm}&-1\\1&1&1&...&1&0\end{bmatrix}}{\begin{bmatrix}c_{1}\\c_{2}\\c_{3}\\\vdots \\c_{m}\\\lambda \end{bmatrix}}={\begin{bmatrix}0\\0\\0\\\vdots \\0\\1\end{bmatrix}}}

マイナス記号をλに移動すると、同等の対称問題になります。

[B11B12B13...B1m1B21B22B23...B2m1B31B32B33...B3m1Bm1Bm2Bm3...Bmm1111...10][c1c2c3cmλ]=[00001]{\displaystyle {\begin{bmatrix}B_{11}&B_{12}&B_{13}&...&B_{1m}&1\\B_{21}&B_{22}&B_{23}&...&B_{2m}&1\\B_{31}&B_{32}&B_{33}&...&B_{3m}&1\\\vdots &\vdots &\vdots &\vdots &\ddots &\vdots \\B_{m1}&B_{m2}&B_{m3}&...&B_{mm}&1\\1&1&1&...&1&0\end{bmatrix}}{\begin{bmatrix}c_{1}\\c_{2}\\c_{3}\\\vdots \\c_{m}\\-\lambda \end{bmatrix}}={\begin{bmatrix}0\\0\\0\\\vdots \\0\\1\end{bmatrix}}}

係数は変数を次のように更新するために使用される。

pm+1=i=1mcipi.{\displaystyle \mathbf {p} _{m+1}=\sum _{i=1}^{m}c_{i}\mathbf {p} _{i}.}

参考文献

  1. ^ Pulay, Péter (1980). 「反復シーケンスの収束加速.SCF反復法の場合」. Chemical Physics Letters . 73 (2): 393– 398. Bibcode : 1980CPL....73..393P . doi : 10.1016/0009-2614(80)80396-4 .
  2. ^ Pulay, Péter (1982). 「改良SCF収束加速法」. Journal of Computational Chemistry . 3 (4): 556– 560. doi : 10.1002/jcc.540030413 . S2CID 120876883 . 
  3. ^ Shepard, Ron; Minkoff, Michael (2010). 「DIIS法に関するコメント」. Molecular Physics . 105 ( 19– 22): 2839– 2848. Bibcode : 2007MolPh.105.2839S . doi : 10.1080/00268970701691611 . S2CID 94014926 . 

文献

参照