Blocked-Davidson algorithm: Difference between revisions
Vaspmaster (talk | contribs) (Created page with "The workflow of the blocked-Davidson iterative matrix diagonalization scheme implemented in {{VASP}} is as follows: * Take a subset (block) of <math>n_1</math> orbitals out...") |
Vaspmaster (talk | contribs) No edit summary |
||
Line 15: | Line 15: | ||
* Rayleigh-Ritz optimization ("subspace rotation") within the <math>3n_1</math> dimensional space spanned by <math>\{\psi^1/g^1/g^2\}</math>: | * Rayleigh-Ritz optimization ("subspace rotation") within the <math>3n_1</math> dimensional space spanned by <math>\{\psi^1/g^1/g^2\}</math>: | ||
:<math>{\rm diag}\{\psi^1/g^1/g^2\} \Rightarrow \{ \psi^3_k| k=1,..,n_1\}</math> | :<math>{\rm diag}\{\psi^1/g^1/g^2\} \Rightarrow \{ \psi^3_k| k=1,..,n_1\}</math> | ||
* 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 | * 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: | ||
:<math>\{\psi^1/g^1/g^2/../g^d\}</math | :<math>\{\psi^1/g^1/g^2/../g^{d-1}\}</math> | ||
: Per default {{VASP}} will not iterate deeper than <math>d=4</math>. | |||
* Continue iteration by adding a fourth set of preconditioned vectors if required, etc etc. | * Continue iteration by adding a fourth set of preconditioned vectors if required, etc etc. | ||
* When the iteration is finished, store the optimized block of orbitals back in the set: | * When the iteration is finished, store the optimized block of orbitals back in the set: |
Revision as of 18:03, 19 October 2023
The workflow of the blocked-Davidson iterative matrix diagonalization scheme implemented in VASP is as follows:
- 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 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 .
- Continue iteration by adding a fourth set of preconditioned vectors if required, etc etc.
- When the iteration is finished, store the optimized block of orbitals back in the set:
- .
- Continue with the next block .
- After each band has been optimized a Rayleigh-Ritz optimization in the complete subspace is performed.
This method is approximately a factor of 1.5-2 slower than RMM-DIIS, but always stable. It is available in parallel for any data distribution.