You are here:>Home Web>Software (10 Aug 2017, GaborCsanyi)


libAtoms + QUIP

libAtoms is a software library package written in Fortran 95+ for the purposes of carrying out molecular dynamics simulations. QUIP is a package built on top of libAtoms that implements many types of interatomic potentials and several parametrisations of tight binding models. It also provides file-based methods for calling external packages including CASTEP, VASP, Molpro, CP2K. Most of it is licensed under GPLv2 with some other parts in the public domain.

There is a publicly available version on GitHub, and online documentation.


Gaussian Approximation Potentials (GAPs) are a new generation of interatomic potentials that Gaussian process regresstion (a type of machine learning method) to interpolate the potential energy surface of atomistic systems in the high dimensional space of atomic configurations. Software to predict the potential energy using GAP models is available as an add-on to QUIP under an separate academic-only license. Clicking the link below will take you to a download page where you have to enter your name, email, and agree to an academic-only license in order to download the source code for the part of GAP that predicts potential energies. In order to build the code, you will first need to download libatoms and QUIP, then unarchive GAP under the QUIP/src directory.

»Download GAP«

To use GAP for a specific material, you need a data file containing set of atomic configurations and data to be interpolated. Some are available in our Data repository.

QUIP potentials, including GAP, may be called from LAMMPS using the pair_style quip in LAMMPS.


We often use AtomEye to view atomic configurations, and James Kermode has customized and extended it considerably. The modified version of AtomEye can read NetCDF and extended-XYZ files, with binaries for Linux and Mac OS X, and also copes with small unit cells.


Quippy is a Python environment, which provides wrapped version of many QUIP routines, as well as visualisation routines via AtomEye. It also has excellent documentation which contains all of the libatoms+QUIP documentation as well.

Gaussian process interpolation

Given noisy observations of a real-valued function and/or its partial derivatives whose domain is D dimensional, an interpolation of the function is provided by a Gaussian process. This is used to reconstruct free energy surfaces from its gradients in a recently published work: T. Stecher, N. Bernstein and G. Csányi, "Free energy reconstruction from umbrella samples using Gaussian process regression". An example implementation of the code is available for download: GPR.tar.gz.

Topic revision: r6 - 10 Aug 2017, GaborCsanyi
Molecular Modelling

Engineering Laboratory


Log In
Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.