LSUBROT: Difference between revisions
(Created page with "{TAGDEF|LSUBROT|.FALSE. {{!}} .TRUE. {{!}} {{DEF|SUBROT|.FALSE.|}} Description: {{TAG|LSUBROT}} determines whether an optimal rotation matrix between the occupied and unoccu...") |
|||
(8 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{TAGDEF|LSUBROT|.FALSE. {{!}} .TRUE. | {{TAGDEF|LSUBROT|.FALSE. {{!}} .TRUE. }} | ||
{{DEF|SUBROT|.FALSE.|}} | {{DEF|SUBROT|.FALSE.|}} | ||
Description: {{TAG|LSUBROT}} determines whether an optimal rotation matrix between the occupied and unoccupied block is sought | Description: This flag can be set for [[:Category:Hybrid_functionals|hybrid functionals]] (HF-type calculations). {{TAG|LSUBROT}} determines whether an optimal rotation matrix between the occupied and unoccupied block is sought, when a direct optimization of the energy functional is performed (i.e. {{TAG| ALGO}}=All {{!}} Damped). The corresponding algorithm is unpublished. {{TAG|LSUBROT}} =.FALSE. is the standard algorithm, in which the rotation matrix between occupied and unoccupied orbitals is determined essentially using Loewdin perturbation theory, as for instance explained in Ref. <ref name="kresse:prb:96"/>. For {{TAG|LSUBROT}} =.TRUE. the rotation matrix is instead optimized by performing a few standard SCF steps, in which the orbitals are kept fixed, but rotations between the occupied and unoccupied manifold are allowed. Once satisfactory convergence has been reached, the optimized density matrix (rotation matrix between occupied and unoccupied block) is passed back to the direct optimization routine and a rotation along the suggested direction is performed alongside an update of the orbitals. This generally speeds up calculations for small gap systems as well as metals. However, in rare cases, we have observed instabilities, so be careful when selecting {{TAG|LSUBROT}} =.TRUE. | ||
Although the flag can be set for standard functionals, it is only efficient for hybrid functionals (HF-type calculations). | |||
== References == | |||
<references> | |||
<ref name="kresse:prb:96">[http://link.aps.org/doi/10.1103/PhysRevB.54.11169 G. Kresse and J. Furthmüller, Phys. Rev. B 54, 11169 (1996).]</ref> | |||
</references> | |||
---- | |||
[[Category:INCAR tag]][[Category:Electronic minimization]] |
Latest revision as of 14:43, 8 April 2022
LSUBROT = .FALSE. | .TRUE.
Default: SUBROT | = .FALSE. |
Description: This flag can be set for hybrid functionals (HF-type calculations). LSUBROT determines whether an optimal rotation matrix between the occupied and unoccupied block is sought, when a direct optimization of the energy functional is performed (i.e. ALGO=All | Damped). The corresponding algorithm is unpublished. LSUBROT =.FALSE. is the standard algorithm, in which the rotation matrix between occupied and unoccupied orbitals is determined essentially using Loewdin perturbation theory, as for instance explained in Ref. [1]. For LSUBROT =.TRUE. the rotation matrix is instead optimized by performing a few standard SCF steps, in which the orbitals are kept fixed, but rotations between the occupied and unoccupied manifold are allowed. Once satisfactory convergence has been reached, the optimized density matrix (rotation matrix between occupied and unoccupied block) is passed back to the direct optimization routine and a rotation along the suggested direction is performed alongside an update of the orbitals. This generally speeds up calculations for small gap systems as well as metals. However, in rare cases, we have observed instabilities, so be careful when selecting LSUBROT =.TRUE.
Although the flag can be set for standard functionals, it is only efficient for hybrid functionals (HF-type calculations).