Libxc is a library of exchange-correlation functionals for density-functional theory. The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals that can be used by all the ETSF codes and also other codes.

In Libxc you can find different types of functionals: LDA, GGA, hybrids, and mGGA. These functionals depend on local information, in the sense that the value of the potential at a given point depends only on the values of the density – and the gradient of the density and the kinetic energy density, for the GGA and mGGA cases – at a given point:

$$ E^\mathrm{LDA}_\mathrm{xc} = E^\mathrm{LDA}_\mathrm{xc}[n(\vec{r})],, $$

$$ E^\mathrm{GGA}_\mathrm{xc} = E^\mathrm{GGA}_{xc}[n(\vec{r}), \vec{\nabla}n(\vec{r})],, $$

$$ E^\mathrm{Hyb}_\mathrm{xc} = a_x E^\mathrm{EXX} + E^\mathrm{GGA}_\mathrm{xc}[n(\vec{r}), \vec{\nabla}n(\vec{r})],, $$

$$ E^\mathrm{mGGA}_\mathrm{xc} = E^\mathrm{mGGA}_\mathrm{xc}[n(\vec{r}), \vec{\nabla}n(\vec{r}), \nabla^2 n(\vec{r}), \tau(\vec{r})],. $$

It can calculate the functional itself and its derivative; for most functionals, higher-order derivatives are available.

Libxc is written in C and has Fortran and Python bindings. It is released under the MPL license (v. 2.0). Contributions are welcome.

At the moment, Libxc is used in the following codes (in alphabetical order):

- Abinit - plane-wave code
- ACE-Molecule - a real-space numerical grid code
- ADF - Slater-type orbitals code
- APE - an atomic code
- AtomPAW - projector augmented wave functions generator
- BAGEL - quantum chemistry program
- BigDFT - wavelet code
- CP2K - A program to perform atomistic and molecular simulations of solid state, liquid, molecular, and biological systems.
- DP - Dielectric Properties, a linear response TDDFT code
- Chronus Quantum - a computational chemistry software package focused on explicitly time-dependent and post-SCF methods.
- Elk - FP-LAPW code
- entos - a software package for Gaussian-basis ab initio molecular dynamics calculations on molecular and condensed-phase chemical reactions and other processes
- ERKALE - a DFT/HF molecular electronic structure code based on Gaussian orbitals
- exciting - FP-LAPW code
- FHI-AIMS - full-potential, all-electron numeric atom-centered orbital code (available in next release)
- GPAW - grid-based projector-augmented wave method
- HelFEM - Finite element methods for electronic structure calculations on small systems
- Horton - Python development platform for electronic structure methods
- JDFTx - plane-wave code designed for Joint Density Functional Theory
- MADNESS - a multiwave adaptive numerical grid program
- MOLGW - a small, but accurate MBPT code for molecules
- MRCC - a suite of ab initio and density functional quantum chemistry programs for high-accuracy electronic structure calculations
- Octopus - real-space (TD)DFT code
- ORCA - ab initio quantum chemistry program package that contains modern electronic structure methods
- PROFESS - orbital-free density functional theory (OFDFT) implementation to simulate condensed matter and molecules
- Psi4 - suite of ab initio quantum chemistry programs
- PySCF - ab initio computational chemistry program
- QuantumATK - code including pseudopotential-based DFT methods with LCAO and plane-wave basis sets in one framework
- Quantum Espresso - a density-functional code based on plane waves and pseudopotentials
- Turbomole - a program package for ab initio electronic structure calculations
- WIEN2k - FP-LAPW code
- Yambo - solid state and molecular physics many-body calculations code

To cite Libxc, the current reference is

The previous reference to the library was

Questions about the library can be sent to the Libxc mailing list. Bug reports and patches should be submitted over gitlab.