The HECToR Service is now closed and has been superceded by ARCHER.

Adding Spin Polarisation and van der Waals Energy Correction to Conquest

This Distributed Computational Science and Engineering (dCSE) project is to develop the linear scaling ab initio Density Functional Theory (DFT) code Conquest. Conquest is an efficient code for calculations in metallic systems and this work is aimed at extending the functionality to enable scalable simulations of bio-molecular systems and magnetic systems, where van der Waals interactions are essential.

The key aims of the project were to:

  • Add the capability to perform spin polarised calculations.
  • Add the vdW-DF functional for van der Waals interaction.

The implementation was successful and the individual achievements of the project are summarised below:

  • Test calculations for the implementation of spin polarisation were performed on two systems: bulk Silicon in a face-centered cubic lattice, which is not ferromagnetic and will therefore have zero net spin polarisation at the ground state; and bulk Iron, in a body-centered cubic lattice, which is ferromagnetic and should have an experimental magnetic moment of 2.12 per atom. Both tests were for non-self-consistent forces with a LDA functional.
  • For bulk Silicon, a simulation cell of 8 atoms with a lattice parameter of 5.4282 Angstrom was used, the integration grid size was 72×72×72 with 13×13×13 grid k-points. The spin polarisation calculation converges to 0, as expected.
  • For bulk Iron, a simulation cell of 2 atoms with lattice parameter of 2.8690 Angstrom was used, the integration grid size was 36×36×36 with 13×13×13 grid k-points. The spin polarisation calculation was tested with initial magnetisation states of 2,4,6 and 8. Results were validated against known experimental values and with calculations from the SIESTA ab initio molecular dynamics package.
  • The linear scaling of Conquest is generally not effected by adding spin polarisation. This is because the spin implementation uses the existing Conquest kernels for distributing data and computation, so the communication and computation mechanisms have not been changed.
  • Test calculations were performed on a system of two benzene rings for the implementation of the vdW-DF functional for van der Waals interaction. These rings were stacked one directly on top of the other along the concentric axis.
  • The results were compared with those calculated using the Siesta ab initio molecular dynamics package, which already has vdW-DF functional capability. The simulation cell (for both Conquest and Siesta calculations) was set to be cubic, with lattice parameter 20.0 Angstrom. The number of grid points used was 128×128×128.
  • Agreement between the two results was achieved, bearing in mind that the Siesta results were for self-consistent calculations, whereas the Conquest results were not.
  • Scalability of Conquest with the vdW-DF functional was demonstrated using 1,2 and 4 HECToR Phase 3 nodes (32 cores per node). The van der Waals correction subroutines were found to take up a significant portion of the total run time. It was also observed that this part of the calculation becomes less efficient compared to the rest of the code, when number of compute nodes increases.
  • Due to the large number of grid integrations one needs to perform, the van der Waals functional is a relatively expensive computation. In the benzene test calculations, this has an equivalent cost of roughly 6 energy minimisation operations (SCF steps). While integration on grid shows good scalability, overall scalability of the code is hampered by the extensive use of FFTs in the vdW-DF functional. Conquest currently uses its own FFT implementation, and the use of an optimised FFT library would be beneficial for larger calculations.
  • The memory usage with van der Waals correction is almost twice that of a standard calculation. The reason for high memory usage is due to the functional form used to approximate the functional. However, this is expected since this is also the case in Siesta.
  • The spin implementations have already been submitted to Conquest code repository and the implementation of the van der Waals functional will be submitted shortly.

The following achievement may be beneficial to other DFT codes on HECToR:

  • An efficient variant of Pulay mixing method has been developed for spin relaxation calculations, which may benefit other DFT code developments on HECToR.

Please see PDF or HTML for a report which summarises this project.