Requests for technical support from the VASP group should be posted in the VASP-forum.


From Vaspwiki
Jump to navigationJump to search

NATURALO = [integer]
Default: NATURALO = 0 

Description: calculate RPA natural orbitals.

This flag should be used in combination with ALGO = G0W0R or ALGO = scGW0R. The VASP code diagonalizes the RPA density matrix and writes the final natural orbitals to the WAVECAR file. The one-electron occupancies on the WAVECAR file can also be updated to the eigenvalues of the RPA density matrix. For ALGO = G0W0R, the interacting Green's function is approximated as

whereas for ALGO = scGW0R the Dyson equation is solved

In both cases, the RPA density matrix is determined as . More details on the use of RPA natural orbitals can be found in Ref. [1].

The following settings are currently supported

  • NATURALO=0 calculate the density matrix, diagonalize the matrix and write the natural orbitals and eigenvalues of the density matrix to the file WAVECAR. This setting is usually not particularly useful for practical calculations.
  • NATURALO=1 calculate the density matrix, diagonalize the matrix only in the sub-block of unoccupied states, and write the occupied Kohn Sham orbitals, as well as the natural orbitals corresponding to unoccupied states to the file WAVECAR. The unoccupied orbitals are ordered according to their occupancies in the RPA density matrix. Note that this setting is reserved for gapped systems (insulators and semiconductors). The one-electron occupancies are not updated from their KS values (they will remain 1 for occupied Kohn-Sham orbitals and 0 for natural orbitals representing the virtual manifold). This setting has been used in Ref. [1]. See also Ref. [2] for further information.
  • NATURALO =negative value. Similar to NATURALO=1 but additionally conserves ABS|NATURALO| unoccupied Kohn-Sham states. This is expedient, for subsequent GW and BSE calculations to conserve few unoccupied orbitals to their Kohn-Sham states.
  • If 10 is added (e.g. NATURALO=10, NATURALO=11) the density matrix is diagonalizes using a perturbative Loewdin algorithm that attempts to keep the orbital order strictly conserved: E.g. the natural orbital matching closest to each Kohn-Sham orbital will be determined and stored. Use this tag for metals.
  • NATURALO=2 (or 12) is similar to 0, but the one-electron occupancies are not updated. In rare cases this might lead to inconsistencies, if the orbital order changes between DFT and the RPA density matrix (i.e. a previously occupied DFT orbitals posses a smaller occupation in the RPA density matrix than some unoccupied Kohn-Sham orbitals and are moved into the unoccupied block). This problem can be reduced using NATURALO=12, as described above. This flag, in combination with ALGO = scGW0R, can be used to evaluate the GW-singles contribution to the correlation energy.[3] One can deduct the GW singles energies from the energies after
Energies after update of density matrix
Hartree-Fock free energy of the ion-electron system (eV)

Experience has shown that there is very little difference between the natural orbitals obtained using ALGO = G0W0R and ALGO = scGW0R. We strongly recommend to use the more efficient and better tested algorithm ALGO = G0W0R (with the exception of GW-singles). Furthermore, perform careful tests for NOMEGA: the RPA total energy converges much faster then the natural orbitals. Using a too small NOMEGA can yield natural orbitals that are non-optimal, leading to very slow convergence of correlated calculations with respect to the number of natural orbitals. A crucial test is that the following line

correlated contrib. to density matrix         0.0000004037        0.0000000000

in the stdout and OUTCAR file shows values close to zero (for ALGO = G0W0R). The above value is perfectly acceptable and the value decreases as NOMEGA increases.

Related Tags and Sections