X-ray data manipulation utilities

convert, add, subtract, multiply or whatever


These short programs are convenient tools for manipulating and interconverting flat data files of type float, int, or short. I wrote them to "hack" X-ray images and electron density map files, but you might find more tricks for them to perform. Documentation is divided by program, with cross-referencing between them:

description of X-ray file formats

Brief description of how SMV, CBF and CCP4 map files work, and how you can manipulate them.

int2float

Convert 16-bit integers, such as SMV-formatted images into floating-point for overlay of or combination with X-ray data.

floatgen

Convert text data into floating-point for overlay of or combination with X-ray data.

float_add

Add, subtract, scale and offset raw floating-point flat files with arbitrary headers.

float_func

Perform any C function on one or two raw floating-point flat files with arbitrary headers.

nearBragg

First-principles simulation of total scattering, outputs floating-point flat files and SMV format images.

nanoBragg

Takes more shortcuts than nearBragg to simulate scattering from nanocrystals. Can also be used to generate single-particle diffraction patterns and SAXS.

nonBragg

Simulate centrosymmetric scattering (before polarization) from amorphous substances such as water or air, as well as SAXS from proteins.

noisify

Add any kind of noise to floating-point flat files and output SMV-formatted X-ray data.

Author:
James Holton <JMHolton@lbl.gov>