Software
ALL of the software below, including QUIP and GAP, are available pre-compiled and ready to use as a .
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 , and .
GAP
Gaussian Approximation Potentials (GAPs) are a new generation of interatomic potentials that Gaussian process regression (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 using the
pair_style quip in LAMMPS.
AtomEye
We often use to view atomic configurations, and James Kermode has customized and extended it considerably. The can read and 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 . 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: . An example implementation of the code is available for download:
GPR.tar.gz.