Article ID: 1055 - Last Modified: August 19, 2014
What do I do if the SCF won't converge in Jaguar?
SCF convergence failure is usually a consequence of a poor initial guess. The guess can be poor for a number of reasons, such as a charge distribution that is far from the converged value, or inaccurate prediction of the orbital energies, which are used with the Aufbau principle to populate the orbitals. Some systems may have physically reasonable low-lying virutal orbitals (and not as a consequence of an approximate initial guess), which can produce convergence problems. Convergence problems may also be due to numerical inaccuracies.
Jaguar automatically restarts the SCF with the settings iacc=1, vshift=1.0, and maxit=150 if there is an SCF convergence failure. These settings should fix most convergence problems.
To make best use of the automatic features in Jaguar for improving convergence, set nofail=1. This option is especially useful if you are running a large number of Jaguar calculations, where setting options manually to obtain convergence for each case might be impractical.
There are several possibilities for improving the initial guess and the convergence if the automatic restart does not produce convergence.
- If you are working with a system containing metal atoms, you can set the formal charge and spin for each metal atom in an atomic section. Jaguar uses this information to guide the construction of the initial guess wave function.
- You can increase the level shift, vshift. This can be especially useful for organometallics, and helps in cases where there is oscillation of charge in the molecule. If the level shift is too large, it can slow down convergence, so adjustment may be needed to find a value that gives convergence instead of divergence but does not slow down the calculation too much.
- If the SCF is swapping orbitals, so that the occupation numbers change, you can enforce occupations in each symmetry by setting ipopsym=1. This setting might result in an excited state, so if this is a problem, you can rerun the calculation with a different set of occupations, to find the ground state. If symmetry is not in use, setting a larger level shift should help prevent the orbital swapping.
- To improve the initial guess, you can run a calculation on a positive ion, and then use the restart file to restart the calculation with the neutral system. This could be a useful strategy for systems where there is oscillation. It may also be useful for negative ions to converge the neutral system first, then try converging the negative ion.
- You can try obtaining convergence with a smaller basis set, then using the restart file for a subsequent job with a larger basis set.
- You can use an alternative SCF convergence algorithm by setting iconv=4.
- If the problem is numerical, you can use larger grids, for example by setting gdftmed=-13 gdftfine=-13 gdftgrad=-13. You can also turn off the pseudospectral method with nops=1. The calculations will run longer, but you can run them across multiple threads to improve turnaround time.
- Finally, you can try setting iacscf=1. This keyword was developed especially to aid in SCF convergence, particularly for organometallics. Note that the energy obtained with iacscf=1 can only be compared to other energies also obtained using iacscf=1. If you need to compare to energies obtained without using iacscf=1, then use the restart file from the iacscf=1 job for a new run but delete the iacscf=1 keyword before submitting the job.
If your calculation does not converge after trying the options above, submit a support request using the Support Center, and upload the input file as part of the request.
Type the words or phrases on which you would like to search, or click here to view a list of all
Knowledge Base articles