DIIS
各イテレーションにおいて、推定誤差ベクトル ei を決定する。このベクトルは変分値 pi に対応するものとする。十分な回数イテレーションを行なった後、以前の m 回分のイテレーションの誤差ベクトルの線形結合を次のようにとる。
e m + 1 = ∑ i = 1 m c i e i . {\displaystyle {\boldsymbol {e}}_{m+1}=\sum _{i=1}^{m}\ c_{i}{\boldsymbol {e}}_{i}.}
DIIS法では、 em+1 のノルムを、係数の総和が1という拘束条件のもとで最小化する。係数の総和を1とする理由は、試行ベクトルを厳密解 (p) と誤差ベクトルの和として書けば理解できるであろう。DIISの近似の元では、次のように書ける。
p = ∑ i c i ( p f + e i ) = p f ∑ i c i + ∑ i c i e i {\displaystyle {\boldsymbol {p}}=\sum _{i}c_{i}\left({\boldsymbol {p}}^{\text{f}}+{\boldsymbol {e}}_{i}\right)={\boldsymbol {p}}^{\text{f}}\sum _{i}c_{i}+\sum _{i}c_{i}{\boldsymbol {e}}_{i}}
したがって、厳密解を求めるためには係数の総和が1でなくてはならず、その上で第二項を最小化しなければならない。最小化はラグランジュの未定乗数法により行うことができる。