CASTEP is a full-featured materials modelling code based on a first-principles quantum mechanical description of electrons and nuclei. It uses the robust methods of a plane-wave basis set and pseudopotentials.

The current academic release of CASTEP is version 21.1.1 - see Getting CASTEP for information on how to obtain this version.

The code is developed by the Castep Developers Group (CDG) who are all UK based academics. Current CDG members are:

  • Matthew Segall - Main author of the code specification, and responsible for all the low-level communications and basis set coding. Also the population analysis algorithms.
  • Matt Probert - Responsible for the geometry optimisation and molecular dynamics coding (including path-integral molecular dynamics), and keeper of the parameters and algor modules.
  • Stewart Clark - Responsible for the band structure and exchange-correlation functional coding and keeper of the cell and FFT modules. Also co-author of the linear response code.
  • Chris Pickard - Responsible all pseudopotential coding, amongst other things. Also co-author of the NMR code.
  • Phil Hasnip - Responsible for the electronic energy minimisation coding (including density mixing and ensemble DFT), OpenMP threading, band-parallelism, run-time profiling and parallel efficiency report, and wavefunction subroutines. Also works on optimisation and parallel performance.
  • Keith Refson - Responsible for phonon and E-field calculations and co-author of the linear response code.
  • Jonathan Yates - Co-author of the NMR code, responsible for spectral module (dos, optics, eels), and architect of the spin-orbit functionality.
  • Albert Bartok-Partay - Main author of the meta-GGA code, and contributor to many aspects of CASTEP.
  • Mike Payne - CASTEP creator and general overseer of the whole project.

Over the years many other people have contributed code to CASTEP including:

  • Peter Haynes - wrote much of the initial density mixing code
  • Jim White - many contributions to initial density mixing and electronic minimisation code
  • Victor Milman - much bug spotting and fixing throughout code
  • Niri Govind - transition state search code
  • Michael Gibson - non-local exchange-correlation functionals code
  • Paul Tulip - contributions to linear response code
  • Vincent Cocula - anti-ferromagnetic initial state code
  • Barbara Montanari - contributions to finite displacement phonons code
  • David Quigley - contributions to molecular dynamics code
  • Maff Glover - path integral molecular dynamics code
  • Leo Bernasconi - maximally-localised Wannier function code
  • Shang-Peng Gao - core-level spectra code
  • Erik McNellis - DFT-D (semi-empirical dispersion correction) code
  • Joerg Meyer - contributions to DFT+D code plus castep2cube tool
  • Alexander Perlov - contributions to LDA+U code
  • Dominik Jochym - Responsible for the TDDFT code, HPC optimization of checkpoint/read code, DFPT-Raman and NLO.
  • Martin Plummer - multiprocessor optimizations of parallel FFT
  • Chris Armstrong - shared-memory optimizations of parallel FFT
  • Julian Gale - code for PBEsol XC functional
  • Joly Aarons - code for low-memory BFGS (L-BFGS) algorithm
  • Brent Walker - contributions to path-integral MD (PIMD) code
  • Daniel Jones - non-collinear magnetism and spin-orbit coupling
  • Ian Bush - shared-memory interface and software infrastructure, prototype parallel iterative matrix diagonaliser
  • Ed Higgins - OpenMP threading and parallel iterative matrix diagonaliser
  • Andrew Morris - Posix compliant command-line argument handling

Many of the original library pseudopotential files and on-the-fly pseudopotential definitions were contributed by Ming-Hsien Lee.