  The c2x code fills two distinct roles. Its first role is as a converter
between the binary format .check files from the Castep electronic structure
code and various visualisation programs. Its second role is to manipulate and
analyse the input and output files from a variety of electronic structure
codes, including Castep, Onetep and Vasp, as well as the widely-used `Gaussian
cube' file format. Analysis includes symmetry analysis, and arbitrary cell
transformations. It continues to be under development, with growing
functionality, and is written in a form which would make it easy to extend it
to working directly with files from other electronic structure codes. Data
which c2x is capable of extracting from Castep's binary checkpoint files
include charge densities, spin densities, wavefunctions, relaxed atomic
positions, forces, the Fermi level, the total energy, and symmetry operations.
It can recreate .cell input files from checkpoint files. Volumetric data can be
output in formats usable by many common visualisation programs, and c2x will
itself calculate integrals, expand data into supercells, and interpolate data
via combinations of Fourier and trilinear interpolation. It can extract data
along arbitrary lines (such as between atoms) as 1D output. C2x is able to
convert between several common formats for describing molecules and crystals,
including the .cell format of Castep. It can construct supercells, reduce cells
to their primitive form, and add specified k-point meshes. It uses the spglib
library to report symmetry information, which it can add to .cell files. C2x is
a command-line utility, so is readily included in scripts. It is available
under the GPL and can be obtained from http://www.c2x.org.uk. It is believed to
be the only open-source code which can read Castep's .check files, so it will
have utility in other projects.
