DiffPy-CMI is a library of Python modules for robust modeling of nanostructures in crystals, nanomaterials, and amorphous materials. The software provides functionality for storage and manipulation of structure data and calculation of structure-based quantities, such as PDF, SAS, bond valence sums, atom overlaps, bond lengths, and coordinations. Most importantly the DiffPy-CMI package contains a fitting framework for combining multiple experimental inputs in a single optimization problem.


PDFgetX3 is a command-line utility for converting X-ray powder diffraction data to atomic pair distribution functions (PDF) in automated batch processing. The interactive mode provides complete access to all parameters and intermediate results, as well as live-plotting feature for parameters tuning and visualization of their effects on the results. PDFgetX3 can be used either as a standalone application or as a Python library of PDF-processing functions.