Relaxation calculation gives us the ionic position of the relaxed structure. Now instead of doing a relaxation calculation, if I do fixed point self-consistent field (scf) calculation for varying ionic positions, and plot the ground state energies against the ionic positions, then from the minimum of this plot, we can find the relaxed ionic position. Is there any difference between these two methods? Are they supposed to give the same result?

A little background information: in Quantum ESPRESSO, one can perform a calculation='scf'-type calculation to get the ground state energy of a fixed ionic position. In this case, only electronic relaxation/minimization is performed. One can also perform a calculation='relax'-type calculation to find the relaxed structure with zero force (actually not precisely zero but a predefined minimum force). In this case, electronic relaxation and ionic positional relaxation are performed. Other codes also have similar features.

Let's say I ran a relaxation calculation and found the interatomic distance to be $x \;Å$. When I run scf calculation varying the interatomic distance, then I always observe that the energy vs interatomic distance plot has a minimum when the interatomic distance is $x \;Å$. That's why I used to think that they are the same. Yet in one particular case, when I plotted the energy against varying bond lengths, I found two minima (one local, and one global). But the relaxation calculation only relaxes the structure to the global minimum. It doesn't matter how close to the local minimum I am setting for the initial position. That's why I asked this question if there is any difference between these two methods.

  • 2
    $\begingroup$ A relaxation calculation or geometry optimisation is itself a series of SCF calculations. $\endgroup$
    – Sha
    Mar 31, 2023 at 8:23
  • $\begingroup$ @Sha Yes, but I was not confident due to the mentioned problem I faced. There must be some other reason I am missing. $\endgroup$ Mar 31, 2023 at 8:27

1 Answer 1


An SCF is the basic operation of any DFT code. For a fixed geometry (in crystal structures, this would be captured by the lattice vectors $\mathbf{a}$, $\mathbf{b}$ and $\mathbf{c}$, and all ionic coordinates $\{\mathbf{R}_i\}$ where $i$ is an ion index), the SCF should minimize the energy of the system with respect to the Kohn-Sham orbitals, i.e. minimize $E[\{\phi_j\}]$ for a fixed geometry.

A geometry relaxation is just made up of a series of SCF calculations, where the forces and stresses are computed (after the SCF) at each geometry relaxation iteration, for the ionic coordinates and lattice vectors to be moved in order to minimize the energy with respect to the geometry.

For very simple systems and tasks, such as optimizing the bond length of a diatomic molecule, it is straightforward to parameterize the geometry in terms of a single interatomic distance, and do multiple SCFs on your own at different interatomic distances to get a simple two-dimensional energy-interatomic distance plot to visualize the potential energy surface (the energy as a function of geometric parameters). The equilibrium bond length that minimizes the energy should then be the same as what you'd get from using the geometry relaxation feature of your DFT code. An analogous example would be finding the equilibrium volume of a particular crystal structure by expanding and contracting the lattice to plot and energy-volume curve and extract the equilibrium volume as the one that minimizes the energy.

In general, the space of geometrical parameters for an $N$-atom system would have dimensions of $9 + 3N$ (all 9 lattice vector components and the $x,y,z$ components of each atom). In principle, you could perform a LOT of SCFs for a bunch of possible geometric parameter combinations until you find some energy minimas. This is of course doable if you know something about the system and parameterize it in a tractable way (such as using the interatomic distance for a diatomic molecule). For a general arbitrary system, it is often more computationally tractable to traverse the high-dimensional potential energy surface by using the forces and stresses at each SCF to tell you where to go next and hopefully find local minima more efficiently. This latter approach is what DFT codes do when you use their "geometry relaxation" feature.

  • $\begingroup$ That means I was correct to think that relaxation calculation is equivalent to doing multiple scf calculations and tracking the minimum (even though it becomes very cumbersome as the dimension increases). But then I am wondering for what reason my structure is not relaxing toward the local minimum, and is always relaxing towards the global minimum! $\endgroup$ Mar 31, 2023 at 8:25
  • 1
    $\begingroup$ That depends on the kind of algorithm and parameters used for the geometry relaxation. For example, the step size might be large enough to go past the local minimum even if you initialize the system closer to it and end up closer to the global minimum. In general, it is very possible to end up at local minimas depending on the initialization and geometry relaxation algorithm (and parameters) used. $\endgroup$
    – CW Tan
    Apr 1, 2023 at 3:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .