In order to calculate the physical properties of a system, i.e. for a given ionic configuration, the electronic states that minimise the Kohn-Sham total energy must always be determined. To achieve this, the general idea is to iteratively improve upon a trial single-particle wavefunction, and whilst maintaining orthogonality with all other bands, minimise the contribution to the total energy from the current band with respect to changes in the plane-wave coefficients. Different methods can be used to perform the minimisation process.