Density functional theory in periodic systems using local Gaussian basis sets

Michael D. Towler and Mauro Causà

Gruppo di Chimica Teorica, Dipartimento CIFM, Universita di Torino, I-10100 Torino, Italy

Ales Zupan,

Department of Environmental Sciences, Jozef Stefan Institute, Jamova 39, 61111 Ljubljana, Slovenia

{appeared in Computer Physics Communications 98, pp. 181-205 (1996)}


This paper describes a new implementation of density functional theory for periodic systems in a basis of local Gaussian functions, including a thorough discussion of the various algorithms. The results of test calculations using this scheme are reported for some representative crystalline solids, with particular emphasis placed on the influence of the various computational parameters used to control the accuracy of the numerical integration of the exchange-correlation potential.


The computer code CRYSTAL [1] is an implementation of the Hartree-Fock (HF) method for periodic systems, and has now been under continuous development for over twenty years. It is a reliable tool for computing the electronic structure and associated ground-state properties of up to three-dimensionally periodic materials within the Hartree-Fock approximation. The Bloch functions of a periodic system are expanded as linear combinations of atom-centred Gaussian functions, and the use of efficient integral evaluation algorithms and powerful screening techniques which exploit the real space locality combine to produce a code which is both fast, and scales attractively (linearly for the integrals calculation in many cases) with the number of basis functions. The latest version of this code [2] includes a number of major innovations, one of the most important of which is the additional capability of calculating the electronic structure of materials within density functional theory (DFT) or various hybrid approximations containing elements of both Hartree-Fock and Kohn-Sham Hamiltonians. Thus the new code may be used to perform consistent comparisons between the Hartree-Fock and Kohn-Sham descriptions of the structural, electronic and magnetic properties of molecules, polymers, surfaces and crystalline solids using identical basis sets and computational conditions.

In the following presentation, the computational implementation of the density functional theory within CRYSTAL will first be outlined, emphasizing the necessary modifications to the algorithms of the original code. In particular, the techniques used to carry out the numerical integrations required in the solution of the Kohn-Sham equations are discussed in detail. Properties of the various local and gradient-corrected exchange-correlation functionals and potentials included in the code are given in an appendix. Finally, results are presented to demonstrate the dependence of various calculated observables on the computational parameters used to control the accuracy of the calculation. Specifically, the dependence of the calculated equilibrium geometries, bulk moduli, atomization energies and band structures of Si, NaCl and Al on the accuracy of the numerical integration of the total energy and Kohn-Sham matrix elements, and on the auxiliary basis set used to expand the exchange-correlation potential are reported. These results are used to define default values for the computational parameters.

Theoretical and computational method

Basic equations

The crystalline-orbital method upon which our treatment is based is an extension of standard LCAO molecular-orbital techniques to periodic systems, where the wave function must obey the Bloch theorem,


 The wave vector k is the generating vector of the irreducible representation of the group of crystal translations {g}. The electron density of an N-electron system described by such a wave function is given from the optimum one-electron crystalline orbitals by


where (theta) is the Heaviside step function, is the k-dependent eigenvalue of the ith crystalline orbital, and the Fermi energy determines the occupied manifold in k-space. The unknown crystalline orbitals are expanded as linear combinations of a set of m Bloch functions built from local atom-centred Gaussian-type functions ,


 and are solutions of the one-particle equations


 The principal difference between the Kohn-Sham density functional and Hartree-Fock methods lies in the form of the one-electron operator . The Hartree-Fock monoelectronic operator is given by


where , , , and are respectively the kinetic, external potential, Coulomb and non-local exchange operators. The Kohn-Sham monoelectronic operator is defined as


 where is the exchange-correlation potential operator, that is, the functional derivative of the exchange-correlation density functional energy with respect to the density at a point r,


 In a local density approximation (LDA), is defined in terms of the exchange-correlation energy per particle in a uniform electron gas of density ,


 Thus modification of the existing Hartree-Fock code to perform DFT calculations is straightforward in principle. It is required only to delete the HF exchange and instead to evaluate matrix elements of the operator, that is, to evaluate the Kohn-Sham rather than the Hartree-Fock equations at each iteration of the self-consistent field (SCF) procedure. All other contributions to the one-electron operator are the same in both schemes.

The matrix elements of the operator in a basis of Gaussian-type functions , where g labels the cell containing the jth basis function at atomic position , take the form


 A great many analytic forms for the exchange-correlation potential have been suggested. To allow comparisons between the various proposals [3], the most important of these have been implemented in the new code; details of the available functionals and potentials are given in Appendix 1. In general however, the potentials have an exceedingly complex analytic form, even at a local level, and so for periodic systems the matrix elements must be evaluated numerically. Performing the numerical integration directly over each pair of real space basis functions is expensive in crystalline calculations, and in the present work a more efficient procedure has been adopted. In this method, the exchange-correlation potential is expanded in an auxiliary basis set of contracted Gaussian-type functions {G(r)},


 This expansion allows the evaluation of the DFT potential integrals in Eq. 9 as a linear combination of integrals over the auxiliary basis functions. These primitive integrals need only be calculated once and stored:


 At each SCF iteration the auxiliary basis set is fitted to the actual analytic form of the exchange-correlation potential (Appendix 1), which changes with the evolving charge density. The best-fit coefficients ca are evaluated by solving the linear least-squares equation


 where A is the overlap matrix between auxiliary basis functions,


 c is the vector of unknown coefficients ca, and b is a density-dependent vector of overlap integrals between the fitting functions and the exchange-correlation potential,


 Both the ba integrals and the elements of the A matrix are evaluated numerically to ensure a consistent level of accuracy. The ba integrals are much simpler than direct numerical integration of the matrix elements , since they are restricted to the unit cell. Furthermore, since the integrand is totally symmetric, evaluation of the integrand may be restricted to an irreducible set of sampling points. The algorithms adopted to carry out the numerical integrations are discussed in detail in a later section.

The question arises of what fitting functions to use in the auxiliary basis set for the expansion of the exchange-correlation potential. Since is a basis for the totally-symmetric irreducible representation of the space group, the chosen auxiliary basis functions must be totally symmetric with respect to all operations of the space group. In this work, a universal set of atom-independent Gaussian functions has been employed, with even-tempered exponents chosen to span the range from 1000 down to 0.1 following earlier work by Baerends and te Velde [4]. Functions of angular symmetry s, p, d, f and g are available in the present implementation. For the cubic crystals to be used as test cases in this paper only s fitting functions are necessary, since the cubic symmetry ensures that p, d and f functions do not contribute; tests revealed the contribution of g functions to be negligible. Preliminary calculations have also indicated that accurate results can be obtained using only s functions even for non-cubic crystals, although it is desirable to use functions of higher l to reduce the number of grid points per atom in the numerical integration while maintaining a given level of accuracy. An input parameter has been defined to allow a straightforward variation in the number of fitting functions and the addition of further functions at the bond midpoints; this will be discussed in a subsequent section.

It should be noted that in many molecular LCAO codes the DFT contribution to the effective Hamiltonian is evaluated through direct numerical integration over all pairs of real space basis functions, a method which has also been implemented in CRYSTAL for testing purposes. In molecular calculations this method is comparable in cost with the fitting procedure. However, this is not the case in solid-state work. In a periodic system the number of significantly overlapping basis function pairs tends to be large even with small unit cells, and the contributions of all such pairs must be calculated for each of the grid points of the numerical quadrature. In the fitting method by contrast, the loop over grid points is performed only for building the vector b (Eq. 12) and the list of basis function pairs is manipulated once. In tests during code development, the matrix elements of the operator were calculated for silicon using direct numerical integration. This was found to increase the total CPU time by an order of magnitude with respect to equivalent calculations using the fitting procedure, but the equilibrium lattice parameter changed by less than 0.001Å and the total energy by less than 0.1 kcal/mol.

In addition to the standard HF and DFT methods, it is possible to define various approximations which combine elements of both. The simplest of these are the so-called a posteriori methods, whereby the correlation and/or exchange energies are evaluated through integration of exchange-correlation density functionals with the converged HF density:


 Advanced quantum-chemical methods of including correlation effects in CRYSTAL are still under development, and thus the a posteriori DFT correlation-only technique is extremely valuable for the estimation of correlation effects in periodic Hartree-Fock calculations. The method has been examined in detail in references 5 and 6. Results of calculations where the HF exchange energy is subtracted from the total energy, and replaced with both a posteriori correlation and exchange energies have been presented for a set of twenty covalent and ionic solids in reference 7. Finally, one may define a correlation-only Kohn-Sham monoelectronic operator using a combination of the exact non-local HF exchange and a DFT correlation potential,


 This method, which we shall refer to as the hybrid DFT-HF method, was proposed in the original presentation of Kohn and Sham [8] but has not been used even in molecular work until recently [9-11].

The latest version of the CRYSTAL program may thus be used in any of the following modes of operation:

(1) Hartree-Fock

(2) Kohn-Sham DFT

(3) HF + a posteriori DFT correlation

(4) HF + a posteriori DFT exchange/correlation

(5) hybrid DFT-HF

The Coulomb problem

One of the main strengths of the CRYSTAL program is the accuracy of the treatment of the Coulomb interactions described by the contribution to the Fock and Kohn-Sham operators. No ‘cut-off’ is introduced in the evaluation of these interactions in a periodic system, and all the charge is correctly introduced in the summation of the whole Coulomb series up to infinity. The sole approximation appears in the transformation of the infinite series of long-range bielectronic integrals into an infinite series of monoelectronic integrals, which is evaluated using Ewald techniques. This transformation is performed via a multipolar analysis of the charge density, in essentially the same way as in the method that in recent molecular applications has been referred to as distributed multipolar analysis or fast multipolar analysis. The use of this technique in the periodic LCAO scheme has its origin in a very old study of the most efficient multipolar analysis in small molecules [12] and is documented and analyzed in Ref. [13]. A complete account of the current treatment of Coulomb interactions in the CRYSTAL program has been presented elsewhere [14], and only a brief summary will be given here.

Infinite summations of Coulomb terms appear in the electrostatic energy contribution to the real space Fock and Kohn-Sham matrices. Each matrix element refers to the interaction of a charge distribution with the charge density of the whole system :




 The lattice vector 0 refers to the reference cell of the crystal. Similar terms also appear in the evaluation of the Coulomb contribution to the total energy,


 which corresponds to the interaction of the whole charge density with itself. Note that in the Hartree-Fock Hamiltonian the electron-electron ‘self-interaction’ terms, corresponding to the interaction of each individual electron with itself, are cancelled exactly by equivalent elements of the non-local exchange interaction. However, no such cancellation exists in local exchange density functionals used in the Kohn-Sham Hamiltonian, a fact which has led to well-documented problems in certain systems such as magnetic insulators (e.g. NiO [15]).

The total charge density can be partitioned into electronic and nuclear contributions, and the various infinite series involving the different partitions may then be evaluated independently. In CRYSTAL, the nuclear-electron and nuclear-nuclear terms are evaluated without approximation using Ewald summation. The electron-electron Coulomb terms are evaluated using a more complex approximate scheme. The general contribution to the matrix element may be written as


 where two new lattice vector labels h and l have been introduced to identify the cells containing the two components of the distributions, and P34 is an element of the density matrix (i.e. the direct space representation of the first-order density operator). The vector sum over the l lattice vectors converges rapidly, since according to the Gaussian product theorem the overlap density decays exponentially with increasing separation of the and functions. By contrast the h vector sum refers to a long-range interaction which decays only Coulombically. The resulting series is conditionally and very slowly convergent and requires an extremely careful analysis. The various infinite series contributing to each matrix element are therefore limited and approximated in different ways, as summarized in Fig. 1.

Fig. 1 - Schematic of the Coulomb interaction between distributions. Thick black lines mean 'truncate beyond threshold', the arrowed line means 'approximate beyond threshold'. and the dotted line identifies a density matrix coupling factor.

 The bielectronic Coulomb integrals are disregarded completely when the space integral of either the overlap distribution or that of the overlap distribution (corresponding to the thick black lines in the figure) is less than a pre-specified threshold T1. The conditionally-convergent Coulomb series over h vectors (the arrowed line in Fig. 1) is not truncated, but is approximated beyond a certain threshold using a distributed point multipole model of the charge distribution, as follows. The local basis functions associated with each nuclear site in the reference cell are partitioned into non-intersecting sets q (‘shells’) sharing similar asymptotic decay properties. For each shell, the charge density of an associated shell distribution is then defined according to a Mulliken partition scheme as


 This definition saturates the {4,l} indices of the basis function (chi4,h+l), and allows the conversion of many four-centre bielectronic integrals between overlap distributions into a single three-centre integral between an overlap distribution and a shell distribution. The list of h vectors is partitioned into a finite internal set {hbi} and an infinite external set {hmono} for each , using overlap criteria and a second penetration threshold T2. The electron-electron Coulomb contributions to the Fock matrix may then be split into internal and external terms:


 The bielectronic part is calculated through explicit evaluation of the four-centre bielectronic integrals I(12g;34l), to give


 The monoelectronic term, which involves an infinite sum of Coulomb integrals involving electronic distributions that are ‘external’ to each other, is calculated in an approximate way. The potential at a field point due to each shell distribution is given to a good approximation by the spherical multipolar expansion


 Here is the l,m multipole of the shell charge distribution centred at (the position of the function in cell h), and the field term represents the potential at the point r due to an infinite array of unit point multipoles . Note that the multipolar expansion is truncated at some maximum value lmax. (which may be up to six). With this approximation, the external Coulomb contribution to the Fock matrix may be rewritten as

where the sums over h in the field terms are treated using Ewald techniques. This approximate scheme produces a speed up of around an order of magnitude and lowers considerably the amount of disk space required, with little or no loss of accuracy with respect to an ‘exact’ scheme.

Many different strategies have been used in both molecular and periodic ab initio LCAO calculations for the ‘analytical’ treatment of the Coulomb interaction. Often an auxiliary basis set is used to fit the electronic density (and thus the electrostatic potential) and then the matrix elements are evaluated analytically as three-centre integrals [16]. In the most recent literature however, particular emphasis has been placed on approximate analytical methods similar to those used in CRYSTAL based on a multipolar analysis of the long-range interactions [17]. The wider debate concerning techniques and the method of charge partitioning for defining the multipoles is currently of great interest.

 Numerical integration techniques

We have seen that the contribution to the total energy of electron-electron interactions beyond the one-electron Coulomb term is evaluated by an integral of the type


 where is the DFT energy density representing exchange-correlation or correlation-only interactions. If all-electron basis sets are used, the integrand has very pronounced cusps corresponding to nuclear positions since the correlation energy density is roughly proportional to the electron density and the exchange energy density is roughly proportional to the four-thirds power of . Where effective-core pseudopotentials are used, the pseudo-density in the core region may also show similar features. A numerical integration method capable of taking into account the cusp-shaped nature of the integrand functions is thus required. This precludes, for example, use of the homogeneous sampling methods [18] applied in LCAO crystalline calculations to numerically integrate reciprocal space quantities, which cannot be applied in the integration of such highly inhomogeneous quantities defined in direct space. We have therefore chosen to use the atomic partition method, originally applied by Becke [19] and Savin [20] to molecular systems. In this method, atomic domains are defined over which one performs spherical integrations that concentrate many sampling points in the core cusp region. Naturally, the atomic domains overlap each other and the necessity of avoiding border discontinuities complicates the numerical quadrature. Furthermore, the application of these methods to periodic systems requires some modification and careful calibration.

The partitioning of space into overlapping atomic domains is achieved through the definition of weight functions wA(r) for each nucleus A such that, for all r,


 Each weight function has a value of unity near its own nucleus and vanishes in a continuous and well-behaved manner near any other. The multi-centre integration may then be decomposed into a sum of single-centre atomic integrations over each of the nuclei of the system. To satisfy the condition of Eq. 27, each weight function must be normalized according to


 The integration space of the atomic integrals is over all space, but the integrand function has a cusp in the position of atom A, and goes rapidly to zero in the direction of the other atoms.

In the Becke atomic partition scheme [19], the weight functions are defined as


 The confocal elliptical coordinate defines a projection of the point along the vector , that connects atoms A and B. The function is some kind of step function, equal to unity at the position of atom A and equal to zero at atom B. The product of the functions for all pairs thus defines a polyhedron around atom A, with the weight function equal to one inside the polyhedron, and zero outside. These Voronoi polyhedra fill all of space. In practice, smoothed step functions are used, where the weight function goes continuously to zero outside the polyhedra; this avoids numerical integration problems, but the calculation must be extended beyond nearest neighbour AB pairs if high accuracy is desired.

The calculation of the normalized weight functions using the Becke method requires the evaluation of sums of products of pair functions, and has a relatively high computational cost in large molecules and condensed systems. As an alternative, simpler weights can be defined, such as those suggested by Savin [20]:


 These weight functions are simple exponential functions which roughly mimic the electronic density around atom A. The exponential is normalized to coincide with the number of electrons associated with atom A according to a Mulliken analysis, and the exponent coefficient is defined to reproduce the atomic shape, taking into account the atomic or ionic dimension. The evaluation of the weight WA requires only the summation of exponential functions centred on the neighbours of atom A. This method can be applied to very complex molecules and crystals, and the loss of accuracy is less than one order of magnitude with respect to the Becke scheme. Both Savin and Becke weights have been implemented in the new version of the CRYSTAL program.

We must now consider how to extend the atomic partition method to a periodic scheme. In periodic systems the integration is confined to the unit cell, which is a finite polyhedron in 3D periodic systems (crystals), a polyhedron infinite in one dimension in 2D systems (slabs) and a cylinder with infinite radius in 1D systems (polymers). The same transformation from one multi-centre integral to a sum of atomic integrals can be performed as in molecules, but infinite lattice sums arise in the evaluation of the normalized weight functions,


 The expression for the exchange-correlation energy is thus


 Since the integrand functions are invariant under lattice translations,



 a translation of the coordinate may be applied to each integral:


 In this way, the infinite lattice sum of unit cell integrals is transformed into a space integration strictly analogous to the molecular case. The weight W contains a lattice sum, which can be truncated using various techniques. With the exponential weight functions of Savin, the lattice sums are truncated when the exponentials are smaller than a given threshold Tw. In 0-, 1-, and 2-dimensionally periodic sytems however, there are regions far from all atomic centres, where the limit of W is finite:


 In such regions the electron density (and functionals thereof) decay exponentially, and thus very small thresholds must be used for an acceptable accuracy in the integrated charge.

The treatment of the lattice sums is more complex when Becke weight functions are employed. The weights, defined in Eq. 29, are products of a finite set of functions which are defined for each neighbour B within a certain ‘cutoff’ distance of atom A. If a step function is used in the definition of such that the resulting Voronoi polyhedra have sharp boundaries, only the first neighbours of A need be taken into account. Because of the difficulty of finding an efficient quadrature for a step function, a ‘smoothed’ cutoff function is actually more convenient. We use an odd polynomial obtained by iterating the function


 according to


 Three iterations (i.e. k = 2) of Eq. 37 generate a ninth-degree polynomial which Becke has shown to be of optimum form for molecular calculations [19]. In tests on three-dimensional periodic systems however, we have found that a sixth degree polynomial generated by just two iterations gives more accurate results. This difference is presumably related to the higher average coordination of atoms in the solid state and the consequent larger number of vertices in the Voronoi polyhedra. The current version of the code thus switches between the different cutoff functions according to the dimensionality of the calculation. The shape of the smoothed cutoff function allows the lattice sum of weights appearing in the denominator of Eq. 31, which is in principle infinite, to be limited to a set of atoms within some distance of atom A. The question of appropriate values for the two parameters and will be addressed in the following section.

Many quadrature techniques exist to evaluate one-dimensional integrals [21], but the numerical evaluation of multi-dimensional integrals is less common, and is usually done using direct products of one-dimensional quadratures. In our case, the most efficient numerical integration method exploits the atomic, quasi-spherical shape of the integrand by introducing spherical coordinates to separate the radial and angular integrations,


 where is the radial distance of the sampling point from the nucleus A, and A(rA) is the value of the angular integral at r = rA. Two-dimensional quadrature on the surface of a sphere has been fully developed by Lebedev [22], who derived very efficient sets of sampling points and weights. His richest set of 435 points is able to integrate exactly a 35-degree polynomial in the angular coordinates . This is enough to integrate exactly functionals of the atomic density with angular quantum numbers of up to l = 6 and m = 6 (i.e. i functions) and hence allows high accuracy for any atomic coordination. The octahedral symmetry of the Lebedev grids confers the additional advantage of a straightforward selection of irreducible set of points using the local symmetry of each atomic site. By contrast, sampling techniques in based on one-dimensional quadrature cannot fully exploit the local symmetry, which is an important consideration in condensed systems. The expression for the angular integral A(rA) is thus


 where w i are the Lebedev weights.

We have examined various ways of performing the radial integration. Standard one-dimensional Gaussian quadrature techniques were found to be appropriate [23]. The most critical region of the integration is in the vicinity of the nucleus, where the integrand functions, which are functionals of the electron density, have cusps that span several orders of magnitude. As a result, large numbers of orthogonal polynomials are necessary for accurate Gaussian quadrature, and therefore a high number of sampling points are required in the calculation. It is possible to subdivide the integration region into segments, with a separate numerical quadrature for each segment allowing the concentration of points in the core region. In practice however, we have found that the shape of the integrand in our application means that little computational advantage is afforded by this procedure, and we therefore use only a single radial interval. The most critical point is simply the number of orthogonal polynomials in the quadrature. The one-dimensional numerical integration of a function between limits of zero and infinity can be performed using the weights and the nodes of polynomials orthogonal to an exponential weight function, such as the Laguerre polynomials. However, we have found it more convenient to use polynomials orthogonal on a finite interval, with the finite intervals mapped onto an infinite interval by means of an opportune transformation of the coordinates,


 A logarithmic transformation of the coordinates allows the Gauss-Legendre quadrature to be used for an integration with an infinite upper limit,


 The Gauss-Legendre radial quadrature was found to be more accurate than either the Gauss-Laguerre or other techniques proposed in the literature, such as the Euler-McLaurin and Gauss-Chebyshev methods.

Different levels of accuracy for the angular integration may be used for different values of the radius by varying the number of sampling points on the surface of the sphere, and the number of angular points as a function of the radius must therefore be optimized for an efficient implementation of the scheme. In general, the angular accuracy may be decreased in the region of the nucleus, since the electronic density and functionals thereof become spherically symmetric as the radius of the sphere tends to zero.

An appropriate set of points for spherical quadrature can be defined by the degree L of the angular polynomial that can be integrated exactly. Lebedev octahedral grids may be used only up to L = 35, and so for L > 35, it is convenient to use a product formula involving the direct multiplication of a Gauss-Legendre quadrature in q by a ‘trapezoidal’ quadrature in f with equally spaced points. Nq times 2Nf points may then be used to exactly integrate spherical polynomials of Nth degree. Many scaling criteria have been tested for the angular degree L with the result that power, logarithmic and exponential functions L(r) gave less accurate results than the following simple linear scaling [24],


 where Lmax is a pre-defined maximum degree of polynomial that can be integrated exactly. The function L(r) thus increases linearly with r up to a value rmax, where its gradient changes discontinuously and the function assumes a constant value equal to Lmax. If the angular degree L is less than 35 at a particular radial point, then the next larger Lebedev grid is adopted, so that L is varied discontinuously in the set 9, 11, 17, 23, 27, 29, 35. If L is greater than 35, CRYSTAL uses the Legendre-trapezoidal grids with a maximum angular degree of L = 60.


The paramount but conflicting issues in assessing the performance of the new code are necessarily accuracy and computational cost. Highly accurate numerical integrations lead to a substantial increase in CPU time, and so it is important that the accuracy is under the control of the user, but in as transparent a way as possible. The space of internal parameters that control the numerical integration process has therefore been calibrated, and the results of the calibration used to define a minimal set of user-definable computational parameters. The dependence of various calculated observables on these parameters may then be used to define their default values. This process will now be discussed in detail.

The use of the linear scaling of the angular degree L(r) discussed in the previous section simplifies the parameter space to be optimized. Given that the radial integration is performed on a single infinite interval over a number of points R, then a simultaneous variation of both R and Lmax may be made. Optimum pairs of values may be selected to minimize the error for a given number N of grid points per atom. Since the same criteria must be applied to both periodic (crystals, slabs and polymers) and non-periodic systems (atoms and molecules), we have used a set of eighteen systems in the calibration including closed and open-shell atoms, molecules, polymers, slabs, and covalent, semi-ionic and ionic crystals. Table 1 identifies these systems and the basis sets used. For atoms and molecules we use various standard sets, while those for the crystalline calculations have a similar structure to standard molecular sets such as STO-3G and 6-21G [25] and we thus employ the same notation. The crystalline sets used are published in references 26 and 27.

 A convenient way of assessing the accuracy of the DFT energy integration, and hence of selecting the optimum computational conditions, is given by the charge density integration. We define the relative error D as the error in the integrated charge with respect to the actual number of electrons (per unit cell for periodic systems). This may conveniently be expressed in parts per million (ppm). The relative error in the integrated charge averaged in the mean over the eighteen test systems, , may be used to discuss the influence of the computational parameters on the integration accuracy. The set of parameters was subdivided into homogeneous subsets of angular parameters, radial parameters, and weight parameters. Each subset was then varied in turn, beginning from a basic set of parameters given by a previous optimization.

A large number of tests for each of the systems in Table 1 were carried out to determine the average error in the integrated charge and the cost of the calculation C for many pairs of values of R and Lmax. For a machine-independent estimate of C, the cost was assumed to be proportional to the the number of grid points per atom (without taking symmetry into account). A contour plot of as a function of R and Lmax is shown in Fig. 2. This data was used to derive a function max(R) which, for each R, gives the lowest value of Lmax for which the integration error is a minimum. From max(R) and C(R, L) follows the function D min(C), which gives the smallest average error for a given number of grid points per atom, and this is plotted in Fig. 3. This relation simplifies enormously the choice of predefined sets of grid parameters.

 [Fig. 2, Fig 3 no longer available - see the paper]

 Finally, the stability of the results with respect to variation of the cutoff radii BS and BP for sums and products of Becke weights was investigated using the set of eighteen test cases; values in the range 6 to 9 Å for both parameters were found to give converged results.

These results have been used to define three user-definable computational parameters, which control the numerical integration of the total energy, the numerical integration of the Kohn-Sham matrix elements and the properties of the auxiliary basis set. These will now be described. The first two parameters alter the accuracy of the numerical integrations through the use of different types of weight function, variation in the number of radial and angular sampling points and variation of the Becke cutoff radii BS and BP. Identical values of the various internal variables are used to define both parameters and these are summarized in Table 2.

  The quality of the auxiliary basis set may be varied using a third parameter, whose effects are summarized in Table 3.

 Although the values of the three computational parameters are under the control of the user, it is important to define default settings offering a reasonable compromise between accuracy and cost, since the details of the numerical integration will be unimportant to the average user. For this purpose we now give detailed results for three cubic test systems: a covalent crystal (silicon), an ionic crystal (sodium chloride) and a metal (aluminium). Reasonably high quality basis sets (6-21G* for Si, 8-31G for Al, 8-511G for Na and 86-311G for Cl) were used. The reciprocal space integration necessary to reconstruct the Kohn-Sham matrix in direct space was performed by sampling the Brillouin zone at a regular set of points defined by shrinking factors of 8 (NaCl, Si) and 16 (Al) [1,18] which were sufficient to give convergence in the three cases. The calculations were performed using standard LDA density functionals, namely Dirac-Slater exchange and Perdew-Zunger correlation [Appendix 1]. In Table 4, Table5 and Table6, the variation of the calculated lattice parameters, bulk moduli, atomization/ionization energies and total energies are given for each of the possible values of the three computational parameters. Note that in order to reduce the amount of information, a prior knowledge of the three default settings is assumed in the tables, and each parameter is varied holding the other two at their default value. Gaps in the tables refer to situations where a parameter was too low for a sensible answer to be obtained.

For each crystal the results are seen to converge at a sufficiently high value of the computational parameter. The results are most sensitive to the parameter which controls the numerical integration of the total energy, they are fairly sensitive to the quality of the auxiliary basis set, and depend hardly at all on the accuracy of the matrix element integration. For the highest value of the accuracy of the total energy integration, the lattice parameters are 0.4% (silicon), 1.2% (aluminium) and 1.3% (sodium chloride) smaller than the experimental value. The values for the bulk moduli are in error by +1.8% (silicon), +2.1% (aluminium) and +18.6% (sodium chloride). The converged results are comparable in accuracy with the results of other studies using different methods and plane-wave basis sets (Table 7). We conclude that the calculation of the density functional self-consistent potential does not need a particularly high accuracy: integration errors of 100 ppm are acceptable, corresponding to 4000 points per atom for the systems studied. The density functional energy calculation requires an accuracy of at least 10 ppm (10000 points per atom) and possibly even higher if elastic properties are to be computed.

 As a further check, we examine the calculated band structures, shown in Figs 4 (a-c) [not available -see the published paper] between selected k-points for Si, Al and NaCl. While these show relatively good agreement with other calculations in the literature, detailed interpretations of the various features of the band structures are irrelevant at this stage, and we concern ourselves merely with changes in the eigenvalue spectrum as a function of the various computational parameters. Table 8 reports the numerical values of the direct and indirect band gaps of the silicon eigenvalue spectrum, together with the valence band width, as a function of computational parameters 2 and 3 (the details of the band structure do not, of course, depend on the accuracy of the total energy integration controlled by parameter 1). All three quantities show relatively little dependence on the accuracy of the matrix element integration, but the effect of the quality of the auxiliary basis set is not negligible. In particular, four atom-centred s functions were insufficient to open a gap in the spectrum and a metallic solution was obtained. Changing the auxiliary basis set parameter from 1 to 3 decreased the valence band width by 0.35 eV, and increased the direct and indirect gaps by 0.7 eV and 0.75 eV respectively. Similar trends were observed for other materials.

On the basis of the results presented in this section, and in particular those of Tables 4, 5 and 6, default values for the computational parameters may be defined. Reasonable compromises between accuracy and cost are 3 for the total energy integration (parameter 1), 2 for the matrix element integration (parameter 2) and 2 for the quality of the auxiliary basis set (parameter 3).

Finally, a comparison of various properties of three simple molecules and their constituent atoms computed using both CRYSTAL and the well-established GAUSSIAN 94 package [39] is given in Appendix 2. Equivalent 6-31G* basis sets were used in both sets of calculations, and the CRYSTAL numerical integration parameters were set at 4, 4, and 3 for the total energy integration, matrix element integration and auxiliary basis set controls respectively. The two codes are seen to give essentially equivalent results for the bond lengths, bond angles and atomization energies of CO, H2O and CH4. While further tests are obviously necessary, particularly with regard to the influence of the auxiliary basis set, the current implementation of density functional theory in the CRYSTAL code thus appears to be stable and gives results essentially in agreement with experiment and other theoretical calculations. Further work is currently in progress to test the code as widely as possible on more complex systems.


In this paper we have given an overview of the algorithms used in the introduction of the density functional theory into the computer code CRYSTAL, with particular emphasis on the problem of numerical integration. The scheme was tested on various representative materials, and the results used to derive a set of computational parameters through which the accuracy and cost of the calculation may be transparently user-defined.


MDT acknowledges the European Commision for the award of a fellowship under the Human Capital and Mobility Scheme, contract no. ERBCHICT941605. MC would like to thank the Consiglio Nazionale delle Ricerche for financial support. AZ would like to thank the Slovenian Ministry of Science and Technology for financial support of his Ph.D. studies.


This article was created from a Microsoft Word document, a program which several years ago I was stupid enough to use. The references were formatted as footnotes, which naturally it is unable to convert to HTML. Sorry. Use LateX to write papers at all times - it doesn't have a dancing paperclip.