UoC crest


ethene pi bond

Check2xsf was originally written to convert CASTEP's .check files into .xsf files viewable with XCrysDen. It thus provided a means of viewing isosurfaces from CASTEP without needing to purchase the commercial, Windows-only, Materials Studio front end.

Since then this utility has grown considerably in functionality. It can read .check, .castep_bin, .chdiff, .cell and .pdb files, and write .cell, .cml, .pdb, .xyz, Gnuplot and .cube files. It can form supercells, generate k-point meshes, find primitive cells, and generate k-points. It can extract band energies and k-point positions from .check files. It can perform both Fourier and trilinear interpolation to plot densities on given lines through cells. It has some degree of support for writing .fdf, SHELX97 and .cif files, and reading .res files.

Version 2 of check2xsf (currently under development) also integrates with the excellent spglib symmetry finder, and provides access to functionality from that package. This represents a merging of check2xsf with cellsym.

This document was originally written around XCrysDen, but Jmol is now a good choice as well. XCrysDen has improved its image quality since these pages were written: the ethene π bond above is from a current (2016) version of XCrysDen.


Check2xsf can be downloaded from its SVN repository, and there should be a link to a tar file at the bottom of that page. Currently version 2 (with spglib support) is available only on request, but is expected to be released later this year (2017).

NEW Pre-release binaries of check2xsf version 2.05a, renamed as c2x, for MacOS and Linux. Also a man page and a list of changes in this version, and an HTML-formatted man page.


Selecting bands from individual k-points (other than the first) from runs performed in parallel would result in unexpected k-points being selected, as the order in which k-points are listed at the beginning of a .check file is not the same as the order in which the wavefunctions get stored for runs using k-point parallelism. This issue is fixed in versions 1.14 and 2.0a (April 2017). Version 1.14 has improved support for Castep 16 and beyond too, though 2.0a is superior in this regard.

Version 1.12b, released June 2016, fixes some crashes when reading .check files from spin-polarised calculations.


Is entirely voluntary, for check2xsf is distributed under the GPL. However, if you wish to drop the author an email saying that you are using it, he can add you to an email list to which new versions and bug fixes are announced, and he will be able to justify spending more time on this software. You really have nothing to lose!