Linear-scaling methods which use a fixed set of local orbitals generally use atomic-type functions, typically solutions to the Schrödinger equation for isolated atoms, possibly immersed in a confining potential. The smallest minimal orbital sets allow calculations which are quick but relatively inaccurate. To improve their accuracy, the size of the orbital set is increased, generating split valence or multiple-zeta sets, with optional polarisation functions to describe the response of the atom to an applied electric field.
The second approach, which is the one adopted in ONETEP, instead optimises these local orbitals in the environment of the system being studied, to generate NGWFs. Thus it is no longer necessary to increase the size of the orbital set to improve transferability. While extra computational effort is required to perform this optimisation, some saving is obtained since the orbital set used is of minimal size, while high accuracy is maintained.
Figure 5: A single NGWF centred on one carbon atom of an ethene molecule before (left) and after (right) optimisation in ONETEP.
Figure 5 illustrates this optimisation for the case of a single orbital centred on the left-hand carbon atom in an ethene molecule. The orbital is initialised to a truncated px atomic orbital. After the orbital has been adapted in situ to generate the NGWF on the right-hand side of the figure, it is clear that the NGWF now reflects the molecular environment.
In order to perform this optimisation, it is necessary to expand the NGWFs in some underlying basis set of primitive functions. In ONETEP, these are chosen to be periodic cardinal sine (psinc) functions [34,51], also known as Dirichlet or Fourier Lagrange functions [52,53]. One such function is illustrated in Fig. 6, and there is one function centred on each grid point of a regular mesh commensurate with the simulation cell.
Figure 6: A psinc basis function used to expand the NGWFs in ONETEP.
Since the psinc functions are related to plane-waves by Fourier transform, they enable the kinetic energy to be calculated accurately and efficiently [54,55] using fast Fourier transforms (FFTs). They are also orthogonal by construction and highly localised, being non-zero at only one grid point (although they do oscillate between grid points). The basis set quality may also be controlled by a single energy cut-off parameter, related to that used for plane-wave basis sets . Thus in ONETEP it is possible to vary the accuracy from that of a minimal atomic-type basis (by performing no NGWF optimisation) to full plane-wave accuracy.
Figure 7: The regular psinc grid covering the whole simulation cell.
The scheme as described so far involves expanding each NGWF in terms of the psinc basis functions whose centres lie within the truncation volume of that NGWF. This is a small subset of the total psinc basis set, as illustrated schematically in Fig. 7. However the FFTs required to calculate the kinetic energy remain global operations, so that the time to calculate the kinetic energy of a single NGWF scales as O(N log N), giving an overall scaling higher than N2.
Figure 8: Illustration of the FFT box technique used in ONETEP.
To overcome this problem the FFT box technique has been introduced , which is illustrated in Fig. 8. A smaller FFT box is associated with each NGWF, which is centred on that NGWF. The FFT boxes for all NGWFs are of a universal shape and size, and are chosen to be sufficiently large to include the central NGWF and all of its overlapping neighbours. This guarantees the consistent action of operators and the hermiticity of the calculated Hamiltonian.
A psinc basis set may be defined for each FFT box, and each NGWF is now expanded in those functions centred in its truncation volume. In effect, the periodicity of the NGWFs is altered, but since the NGWFs are localised within volumes smaller than the FFT box, this is a very good approximation. Equivalently, since the NGWFs are localised in real-space, their Fourier transforms are broad in reciprocal-space and thus the coarser sampling in reciprocal-space provided by the FFT box compared to the cell remains adequate. The volume of the FFT box is independent of system-size, depending only upon the cut-off radii of the NGWFs, and so the computational effort of an FFT within the FFT box does not increase as the system becomes larger, and linear scaling is recovered.
In ONETEP the FFT box is used not only to calculate the kinetic energy, but also to interpolate the NGWFs before the calculation of the density (to avoid aliasing) and to evaluate every term in the Hamiltonian .
The FFT box also allows an estimate of the cross-over (the point at which a linear-scaling method is more efficient than traditional cubic-scaling methods). Comparing ONETEP to a traditional plane-wave pseudopotential code shows that both methods spend considerable time performing FFTs. For the traditional code these are performed over the entire simulation cell. In the case of ONETEP, fine grid FFTs in the FFT box dominate the computational effort. Since both methods perform similar numbers of FFTs, the cross-over is expected to occur when the FFT grids are about the same size i.e. the volume of the FFT box and the simulation cell are comparable. The number of atoms that this corresponds to depends upon the nature of the system. ONETEP has a particular advantage for low-dimensional structures such as molecules, polymers, nanotubes and surfaces, since regions of vacuum can be included essentially for free . For solids, the cross-over will be rather higher in the number of atoms.