Software


BINoculars

BINoculars is a tool for data reduction and analysis of large sets of surface diffraction data that have been acquired with a 2D X-ray detector. The intensity of each pixel of a 2D-detector is projected onto a 3-dimensional grid in reciprocal lattice coordinates using a binning algorithm. This allows for fast acquisition and processing of high-resolution datasets and results in a significant reduction of the size of the dataset. The subsequent analysis then proceeds in reciprocal space. It has evolved from the specific needs of the ID03 beamline at the ESRF, but it has a modular design and can be easily adjusted and extended to work with data from other beamlines or from other measurement techniques.

dahu

Data Analysis RPC server over Tango Dahu is a lightweight plugin based framework... ... technically a JSON-RPC server over Tango * plugin can be class or can be generated from state-less function * a plugin is executed within a job, each job lives in its own thread. * plugins have empty constructors plus 4 methods (or more) - setup allows to set the input parameters. It performs sanitization if needed - process does the taff - teardown sets the output and the logging and cleans up if needed - abort can be used to stop the processing if a plugin is a daemon. * the job is responsible for serializing on disk the plugin input and output * jobs can be launched using the tango interface (or other ...) * plugins have a single input and output, they are simple JSON-serializable dictionaries.

PyFAI

pyFAI is an azimuthal integration library that tries to be fast (as fast as C and even more using OpenCL and GPU). It is based on histogramming of the 2theta/Q positions of each (center of) pixel weighted by the intensity of each pixel, but parallel version uses a SparseMatrix-DenseVector multiplication