Welcome to the Crystal Cracker program page, by Kurt Leinenweber.

Zebra-tailed lizard (Callisaurus draconoides), Saguaro National Park, Arizona. Photograph by Shirley Ekbundit.
This material is based upon work supported by the National Science Foundation under Grant No. EAR-0074089. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.

To download the executable, click here: DOWNLOAD: Crystal Cracker for Windows 98 (build 189)

To download a sample x-ray pattern for LaB6 that can be read by Crystal Cracker, click here: DOWNLOAD: LaB6.gsa sample pattern file

To download a small Unit Cell database file (.ucl file) click here: DOWNLOAD: UnitCells.ucl sample unit cell database

(The current version is Beta Build 189, compiled on July 26, 2005. You can check the version number you are using by looking under Help/About Crystal Cracker in the program).

Download the DECKER EOS utility for NaCl and CsCl: DOWNLOAD: Decker.exe

The purpose of the program Crystal Cracker is to provide various manual techniques for solving powder diffraction patterns, in a modern user-friendly program that is free of charge. The program was written from scratch by Kurt Leinenweber, in Visual Basic. It is distributed as an executable file. It should run on any Windows system that includes support for programs written in Visual Basic 6.0.

The program allows the user to choose the Bravais lattice, extinction symbol and lattice parameters for a crystal, and compare the line positions calculated from this information to the peaks in a constant wavelength x-ray pattern (in GSAS format only as of this writing). The lattice parameters (either direct or reciprocal) can be changed by the user, either with scroll bars, by typing new values in, or by dragging the peaks themselves; the user-imposed symmetry is maintained during these operations. In order to help match the pattern, the user can turn classes of reflections (h00, hk0, etc) on and off, can display the positions of possible superlattice peaks, and scroll through extinction conditions. The program works with a minimal set of possibilities: each extinction condition is presented in only one setting. This minimizes the amount of searching needed to match the pattern, but also means that known unit cells must be entered in their standard setting.

There are some other features as well; for example, the spot patterns of the direct and reciprocal lattices can be plotted for comparison to TEM patterns. Combinations of TEM and powder x-ray data can then be treated, because the lattice planes seen in TEM can be matched to part of the powder pattern.


Please contact Kurt Leinenweber (kurtl@asu.edu).


Version 189. Lattice-fitting of cubic phases and 2 theta fitting added to energy dispersive data. Opening of jcpds files from APS Sector 13 added. The peak fitting routines are primitive but quick to use.

Version 185a, July 2, 2004. A quick fix to a problem reading .cpi files, that crept in because .cpi files do not state their length in advance. Thanks to Leszek Kepinski for noticing the bug.

Version 185, July 2, 2004. A bug reported by Phillipe Deniard - the updating of h,k,l and d-spacing ceased to happen when I added "snap to peak" - was fixed.

Version 184, June 29, 2004. An error in file names (leaving out the space and ~ ASCII keys) was corrected. "Tweak" was changed to "snap to peak."

Version 183, June 3, 2004. I added fluorescence lines to the energy-dispersive patterns. The fluorescence lines show up as yellow sticks, and of course they do not move. Lines for up to 5 elements at a time may be shown. I added these features to help with my upcoming beam time at APS.

Version 181, January 9, 2004. The bitmap of the x-ray pattern is now written into the application path. (Thanks to Jeff Post).

Version 180, January 6, 2004. A reading format error in GSAS files was fixed (thanks to Jeff Post for noticing the problem with some GSAS files). When the "number of banks" were shown for each point, the program did not read the data correctly.

Version 179: Jan. 2, 2004. Allow the user to resize the main form if desired, making the x-ray plot bigger. Put the starting position of the form somewhat within the screen instead of at the very top, fixing a recent annoyance. Reorganize the data input into an "Import" menu entry, with the data types listed separately in a sub-menu. Put the project opening commands and the Unit Cell database into the "File" menu. Add prompts to save the data when the user has done more than a little bit of work, and has imported a diffraction pattern. Save the directory paths separately for each type of data.

Version 178; December 5, 2003. The program was prepared for a beam time at Argonne. The ability to read CHI files from Sector 13 was added. Small two-theta angles were allowed. As a bonus, energy-dispersive capabilities were added using an MCA file sent by Yanbin Wang. Certain bugs in the storage of patterns and unit cells were fixed, and more unit cells were added to the little database UnitCell.ucl.

Back to Kurt's x-ray diffraction page