Removing pseudo-linear dependence in Gaussian basis set calculations on crystalline systems with the CRYSTAL code


Key Personnel

PI/Co-I: Prof Nicholas M. Harrison - Imperial College London, and Dr Leonardo Bernasconi - Scientific Computing Department of the Science and Technology Facilities Council (STFC)

Technical: Dr Barry G. Searle - Scientific Computing Department of the Science and Technology Facilities Council (STFC)

Relevant documents

eCSE Technical Report: Removing pseudo-linear dependence in Gaussian basis set calculations on crystalline systems with the CRYSTAL code

Project summary

CRYSTAL is a world-leading electronic structure program for the ab initio quantum mechanical simulation of crystals, nano-structures, surfaces and molecules. It has unique capabilities in terms of accuracy and computational efficiency, and is the code of choice for many academic and commercial groups worldwide working on complex extended systems, strongly correlated materials and magnetic crystals.

In the UK, CRYSTAL is used by a very wide and varied scientific community of users, including research groups working on energy generation and storage (e.g. development of new materials for photovoltaics), catalysis, magnetism, excited states and UV spectroscopy, IR and Raman spectroscopy, low dimensional systems (graphene and nanotubes), materials discovery, and, more recently, homogeneous catalysis and biological systems. A large component of the research activities of the Materials Chemistry Consortium is crucially dependent on the availability of up-to-date releases of CRYSTAL on ARCHER, and the improvements developed in this project will immediately benefit this community of users.

CRYSTAL derives its unique capabilities from the use of a local basis set of (non-orthogonal) atomic orbitals, expressed in terms of linear combinations of Gaussian basis functions. This basis set choice and the extremely efficient algorithms implemented in the code for the analytical calculation of two-electron repulsion integrals make CRYSTAL a virtually unique tool in solid state physics in terms of both accuracy and computational efficiency in large systems. The most recent release of the code (CRYSTAL14) boasts several functionalities not available in other codes for solid state applications, including latest-generation exchange-correlation functionals for density-functional theory calculations and advanced methods for the treatment of electronic correlation (MP2) and excitations (TD-DFT) in solids.

The unique capabilities of CRYSTAL are related to the use of a local non-orthogonal Gaussian type orbital (GTO) basis set, which is used to represent the ground state wave-function and electronic density. All core operations in the code are expressed in terms of matrices describing quantum-mechanical operators in this basis set representation. The absolute accuracy of a calculation, as well as its computational cost, depends on the quality of the basis set. Whereas an extensive literature is available on the development of Gaussian basis sets for molecules, much less systematic work has been done in solid-state physics, where most calculations are currently carried out using plane-wave pseudo-potential (or projector augmented wave) methods. Using high-quality basis sets developed for molecules to carry out calculations on solids with CRYSTAL is a very attractive and rigorously justifiable approach, which however suffers from the fact that high-quality molecular basis sets frequently contain functions that are too diffuse to be applied in solids and quickly lead to linear dependence and poor convergence issues. The standard method to cure these problems relies on ad hoc manual modifications of the molecular basis set prior to starting a CRYSTAL calculation. This process is tedious, and requires considerable technical expertise from the user.

This project aimed to develop a method to allow the use of high-quality molecular basis sets in CRYSTAL without the need for any manual modifications, by reducing the risks of linear dependence through careful automatic screening of the matrices affected by linear dependence issues. The project implemented a general method for eliminating linear dependence in calculations on extended crystalline systems with the replicated parallel and data distributed (MPP) versions of the CRYSTAL code.

The ability to address the calculation of the properties of bulk materials (semiconductors, insulators, surfaces and polymers) from first principles using accurate and reliable quantum-mechanical methods is of fundamental importance in a variety of fields of research, from chemistry to solid state and material sciences. This project focused on one of the fundamental limitations of all quantum-mechanical approaches to the calculation of physic-chemical properties of materials, namely the ability to improve systematically and in a controlled way the accuracy of a calculation and to address (at least potentially) the complete basis limit, i.e. the point at which the solution of the quantum-mechanical equations is carried out with numerical accuracy. In this project, we have shown how problems relating to the appearance of linear dependence in the solution of matrix equations in a basis of large, local, non-orthogonal Gaussian basis sets can be resolved efficiently for wide classes of materials using a projector based approach, which we have implemented in the CRYSTAL code. The immediate impact of this method is in the treatment of "problematic" materials, such as metallic systems or metal surfaces, in which the description of extended, free-electron like, electronic states requires extremely large and diffuse basis sets. Another important class of properties whose description will immediately benefit from our developments is excited state and dielectric properties of extended systems. Some of the most recent developments in CRYSTAL have specifically addressed the calculation of these properties. The ability to use large basis sets will pave the way for the treatment of wider classes of materials, both in the their ground (mechanical and electronic properties) and excited states (dielectric properties and response to electromagnetic radiation).

Achievement of objectives

1. Improvement in the convergence rate of the self-consistent solution of the Hartree-Fock or Kohn-Sham equations in CRYSTAL14 based on the removal of linear dependence in the basis set.

Success metrics

(a) A development version of CRYSTAL14 including modified core routines for the elimination of basis set linear dependence effects.

This task is complete and the new development version of the code has been tested extensively (see attached Technical Report for details). The code is available to CRYSTAL developers via the UK CCPForge CRYSTAL repository. It may be included in an intermediate new release of the code for general users in 2017.

(b) A series of comparative examples on small to medium size molecules of the accuracy of the method implemented using basis sets from the EMSL database (

Since the duration of the award was reduced from the requested 12 to 9 months, calculations on molecules and comparison to other quantum chemical codes were removed from the work plan. Extensive accuracy tests were however carried out on crystalline systems (as indicated in the Technical Report) using basis sets from the EMSL repository.

(c) Application to at least one excited state calculation, using TD-DFT, on a crystal, for instance LiF, using EMSL basis sets of quadruple zeta quality, or augmented-CC.

Considering the time constraints of the project and that some extensions of CP-HF and TD-DFT routines are currently still under development in the UK and Italy, we have postponed testing the new developments of this project on excited states. In practice, this turns out to be a problem of its own, as conventional molecular basis sets have to be properly optimised to work for excited states in extended systems [cf. Webster et al., J. Chem. Phys. 142, 214705 (2015)]. In principle, however, our method is automatically working for excited states too, because TD-DFT calculations require a preliminary ground-state calculation, in which the methods developed in this project can be used to cure linear dependence issues.

2. Improving CRYSTAL's ability to more easily treat classes of systems traditionally considered highly problematic for localised basis sets, such as bulk metals.

Success metrics

(a) Calculation of the equation of state of elemental solids, including semiconducting and metallic systems, using highly accurate molecular basis sets from EMSL.

This task is complete. Extensive calculations with the DEF-TZVP basis set from the EMSL repository are described in the technical reports. These include total energy calculations and estimates of equations of states for a semiconductor (Ge), an insulator (LiF), a metal (Li) and a molecular crystal (NH3).

3. Boosting the applicability of CRYSTAL to high-throughput calculations with minimal user intervention.

The modified code is now capable of identifying and removing linear dependence issues arising in calculations with large and diffuse basis sets in a fully automated way. Since linear dependence is one of the most important limiting factors in CRYSTAL calculations on extended systems, the developments carried out in this project will widen the applicability of the code to currently problematic systems (e.g. metals) or to the study of complex materials over wider ranges of physical conditions.

Success metrics

(a) We will be compiling a list of sample input/output files for various molecular and crystalline systems (1, 2 and 3D) using EMSL basis sets of systematically increasing accuracy and document their applicability to a selection of systems in different physical conditions.

A set of input files for systems in various dimensionalities have been prepared, and may be made available as part of the standard CRYSTAL test suite.

(b) We will document the parallel efficiency of the code on Archer.

After discussion among the code developers, we have decided not to consider this point systematically, as the developments of this project have no impact on the overall computational cost (which is determined by the unchanged calculation of the two-electron integrals in atomic orbital basis).

4. Enabling a wider community of users (beginner and advanced) to perform faster calculations and achieving higher levels of accuracy in the calculated properties, by reducing the effort associated with the calculation set up and with convergence checks for large basis sets.

Success metrics

(a) All developments will be distributed among the UK CRYSTAL developers, essentially in real time, via the UK SVN repository.

A development version of the code is available in the UK CRYSTAL CCPForge repository.

Summary of the Software

The code modifications of this project are included in the development version of CRYSTAL14 (v1.0.3), which is available through the CCPForge repository to developers in the UK and abroad. The development will likely be included in an intermediate release of CRYSTAL17 (the distribution of which will start during Spring 2017).

More information is available on the CRYSTAL webpage at