Co-design at POP CoE project

Density Functional Theory

Density Functional Theory (DFT) is a computational quantum mechanical modelling method to investigate the electronic structure of many-body systems, in particular atoms, molecules, and the condensed phases. The name Density Functional Theory comes from the use of functionals (functions that take functions as argument or return them) of the electron density.

The behavior of a quantum mechanical system is described by the Schroedinger equation

where is the Hamiltonian (operator), is a wave function and is the total energy of the system under consideration. The Hamiltonian describes the physics of the system and consists of different energy contributions:

The wave function is a -dimensional function of the positions of the nuclei and electrons, where is the number of particles in the system (i.e. #nuclei + #electrons).

From a mathematical point of view the Schroedinger equation represents an eigenvalue problem (<link to dicipline/algorithm eigenvalue problems>). Analytical solutions can only be obtained for very small systems such as or other hydrogen-like systems (e.g. ). Density functional theory makes the solution of more interesting, larger problems feasible by reducing the -dimensional problem to only a tree-dimensional one.

Hohenberg and Kohn suggested to express the energy as a functional of the electron density

where denotes the position in space of the -th particle. The electron density is uniquely defined by the external potential acting on the system and vice versa. Hence, all electronic properties such as the ground state energy are uniquely defined by the electron density as well. Moreover, the energy functional is variational. This means that the ground state density minimizes the energy functional. However, the energy functional needs to be approximated since no explicit representation is known.

Kohn and Sham followed the Hartree approximation, where the behaviour of interacting electrons is approximated by modeling them with non-interacting ones. They proposed the following form of the energy functional:

where is the kinetic energy of non-interacting electrons, is the Coulomb energy, introduced by the attraction of nuclei and electrons, is the electron-electron interaction in Hartree approximation and is the exchange correlation functional. The latter term should account for the exchange and correlation energy missing in the Hartree approximation as well as the kinetic error introduced by this approximation. This formalism then leads to single particle Schroedinger like Kohn-Sham equations each of dimension 3.

For the exchange correlation functional also no explicit representation is known. Different approximations are available which can be differentiated into two categories: Local Density Approximation (LDA) and Generalized Gradient Approximations (GGA). In LDA an exchange correlation potential that only depends locally on the electron density at each point in space is constructed. For systems with a homogeneous potential this is exact while for systems with a non-homogeneous potential it serves as an approximation. GGA also consider the gradient of the electron density in space to improve this approximation. Both approaches can be combined leading to hybrid functionals.

Solving the Kohn-Sham equations constitutes a self-consistency problem. On the one hand the Hamiltonian depends on the electron density as it is included in the Hartree potential and the exchange correlation potential . On the other hand the electron density is computed using the Kohn-Sham-orbitals (i.e. the wavefunctions that solve the single particle Schroedinger-like equations). This problem is solved by an iterative procedure: First, a set of initial wavefunctions needs to be given. This set is used to compute an initial electron density . Using this density the Hamiltonian is constructed and the resulting Kohn-Sham equations are solved to obtain a new set of wavefunctions . With this set again a new electron density is computed and the whole procedure is repeated until at some point

self-consistency for a small tolerance value is yielded.

Related programs: FFTXlib · Related algorithms: