Troubleshooting electronic convergence

From VASP Wiki

There can be many reasons why the SCF convergence is not reached. Naturally, there are also many different possible solutions.

Try to create a minimal INCAR file with as few tags as possible. If the calculation converges then gradually add them back until you find which one was causing the problem. Try to reduce the time-to-solution as much as possible by lowering the k point sampling (or using gamma-only calculations is that is sensible), lower ENCUT, use PREC=Normal.

Check if you have enough bands. You can do this by looking at the OUTCAR file and checking that there are enough 'empty' states (i.e. states with zero occupation). When using an iterative solver the last states might not be accurately described, if these are occupied then convergence is likely to fail. Often the VASP default setting for NBANDS is insufficient for systems with f-orbitals.

Systems with f-orbitals are in general difficult to converge.

In the following, we will describe a few recipes that work for particular systems. Some of these recipes might be transferable but it is hard to provide a recipe that is guaranteed to work for all cases.

Magnetic calculation with LDA+U

Magnetic calculations present a lot of challenges in particular when the energy differences between different magnetic configurations are not large. Our recommendation is to split the calculation into multiple steps:

  1. give initial magnetization only to the magnetic atoms
  2. use spin-polarized calculation
  3. perform the calculation in 3 steps (always starting from the previous WAVECAR):
    1. step 1 with ICHARG=12 and ALGO=Normal without any LDA+U tags
    2. step 2 with ALGO=All (Conjugate gradient) and a small TIME step 0.05 instead of the default 0.4 (this is crucial)
    3. step 3 add LDA+U tags keeping ALGO=All and small TIME

It might be useful to split step 1. in two by first running with a smaller ENCUT and then restarting the calculation from the WAVECAR with the desired ENCUT

MBJ calculation

This exchange-correlation functional is not particularly easy to converge in some systems. For these systems we recommend that you split the calculation into multiple steps that successively bring you closer to the solution (always restarting from the WAVECAR of the previous step):

  1. Converge with the PBE functional
  2. Converge with the METAGGA=MBJ functional with the CMBJ parameter set to some value and ALGO=All and TIME=0.1
  3. Converge with the METAGGA=MBJ functional without CMBJ parameter set and ALGO=All and TIME=0.1

Similar to the previous recipe it might be useful to run steps 1. to 3. with a low ENCUT and then perform step 3. again with the desired ENCUT.