The workflow of the blocked-Davidson iterative matrix diagonalization scheme implemented in VASP is as follows:[1][2]
- Take a subset (block) of orbitals out of the total set of NBANDS orbitals:
- .
- Extend the subspace spanned by by adding the preconditioned residual vectors of :
- Rayleigh-Ritz optimization ("subspace rotation") within the -dimensional space spanned by , to determine the lowest eigenvectors:
- Extend the subspace with the residuals of :
- Rayleigh-Ritz optimization ("subspace rotation") within the -dimensional space spanned by :
- If need be the subspace may be extended by repetition of this cycle of adding residual vectors and Rayleigh-Ritz optimization of the resulting subspace:
- Per default VASP will not iterate deeper than , though it may break off even sooner when certain criteria that measure the convergence of the orbitals have been met.
- When the iteration is finished, store the optimized block of orbitals back into the set:
- .
- Continue with the next block .
- After all orbitals have been optimized, a Rayleigh-Ritz optimization in the complete subspace is performed.
The blocked-Davidson algorithm is approximately a factor of 1.5-2 slower than the RMM-DIIS, but more robust.
References