Software


BONSU

Bonsu is an interactive phase retrieval suite, designed for phase retrieval with real-time visualisation in both two and three dimensions. It includes an inventory of algorithms and routines for data manipulation and reconstruction.

CrystFEL

CrystFEL is a suite of programs for processing diffraction data acquired "serially" in a "snapshot" manner, such as when using the technique of Serial Femtosecond Crystallography (SFX) with a free-electron laser source. CrystFEL comprises programs for indexing and integrating diffraction patterns, scaling and merging intensities, simulating patterns, calculating figures of merit for the data and visualising the results. Supporting scripts are provided to help at all stages, including importing data into CCP4 for further processing. [From: the Website]

DAWN

DAWN, the Data Analysis WorkbeNch, is an Eclipse based application for scientific data analysis. It comes with a range of tools for visualization (1D, 2D and 3D), code development environments (for Python, Jython and Eclipse plug-ins) as well as processing workflows with visual algorithms for analyzing scientific datasets. It is primarily developed at Diamond Light Source, but external contributions are most welcome! DAWN is distributed freely and is released under the Eclipse Public License.

FabIO

FabIO is a Python library for reading and handling data from 2-D X-ray detectors. FabIO provides a function for reading any image and returning a FabioImage object which contains both metadata (header information) and raw data. All FabioImage objects offer additional methods to extract information about the image and open other detector images from the same data series.

freeart

ART algorithms for fluorescence and transmission tomography reconstructions. Fluorescence absorption for the incoming and outgoing beams are taken into account.

iFit

The iFit library (pronounce [eye-fit]) is a set of methods to load, analyse, plot, fit and optimize models, and export results. iFit is based on Matlab, but can also be launched without Matlab license (stand-alone version).Matlab It does not currently include advanced graphical user interfaces (GUI), and rather focuses on doing the math right. Any text file can be imported straight away, and a set of binary files are supported. Any data dimensionality can be handled, including event based data sets (even though not all methods do work for these). Any model can be assembled for fitting data sets. Last, a number of routines are dedicated to the analyses of S(q,w) and S(alpha,beta). More advanced features include the full automation to compute phonon dispersions in materials, using DFT codes such as ABINIT, ELK, VASP, QuantumEspresso, GPAW and more (Models/sqw_phonons). The software can also compute the neutron TAS resolution function (4D) and fits to experimental data with full resolution convolution (ResLibCal). An interface for McStas and McXtrace is also available to automate and optimize instrument simulations.

LAMP

LAMP (Large Array Manipulation Program) is designed for the treatment of data obtained from neutron scattering experiments at the Institut Laue-Langevin. However, LAMP is now a more general purpose application which can be seen as a GUI-laboratory for data analysis based on the IDL language.

nexdatas

Historically it is the job of the Control Client (CC) to write the data recorded during the experiment (this is true at least for low rate data-sources). However, with the appearance of complex data formats like Nexus the IO code becomes more complex. To cope with this complexity, NexDaTaS has been developed jointly by PNI-HDRI and PaNdata to provide an easy to use interface between the NeXus data integration and the control system. NexDaTaS is realized as a Tango server which allows to store NeXuS Data in H5 files. The server provides storing data from other Tango devices, various databases as well as passed by a user client via JSON strings.

NeXpy

NeXpy provides a high-level python interface to NeXus data contained within a simple GUI. It is designed to provide an intuitive interactive toolbox allowing users both to access existing NeXus files and to create new NeXus-conforming data structures without expert knowledge of the file format. The underlying Python API for reading and writing NeXus files is provided by the nexusformat package, which is also described here.

NSXTool

NSXTool is an application for reducing neutron single crystal data. It provides algorithms for indexing, refining UB matrix and instrument parameters, integrating Bragg peaks for future analyses using software such as FullProf or ShelX. It is made of a core crystallographic library written in C++ (standard 2011) with dependencies on boost, eigen, gsl standard libraries and of a graphical user interface written in Qt.

Pore3D

Pore3D is a software toolbox for quantitative analysis of three-dimensional images. The core of Pore3D consists in a set of state-of-the-art functions and procedures for performing filtering, segmentation, skeletonization and quantitative analysis of three-dimensional data. Although three-dimensional data can be produced by several techniques (for instance: magnetic resonance, x-ray scattering or confocal microscopy), the library was developed and optimized for micro-CT (Computed Tomography) data. Pore3D features are available through the high-level scripting environment IDL. Pore3D has been tested with IDL 64-bit from versions 6.4 to 8.5.

PtyPy

Framework for scientific ptychography including suitable classes for many concepts of ptychography

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

PyHST2

Hybrid distributed code for high speed tomographic reconstruction with iterative reconstruction and a priori knowledge capabilities. PyHST2 (formerly known as PyHST) has been engineered to sustain the high data flow typical of the third generation synchrotron facilities (10 terabytes per experiment) by adopting a distributed and pipelined architecture. The code implements, beside a default filtered backprojection reconstruction, iterative reconstruction techniques with a-priori knowledge. The latter are used to improve the reconstruction quality or in order to reduce the required data volume and reach a given quality goal. The implemented a-priori knowledge techniques are based on the total variation penalisation and a new recently found convex functional which is based on overlapping patches.

PyMca

X-ray Fluorescence Toolkit (visualization and analysis of energy-dispersive X-ray fluorescence data). . The program allows both interactive and batch processing of large data sets and is particularly well suited for X-ray imaging. Its implementation of a complete description of the M shell is particularly helpful for analysis of data collected at low energies. It features, among many other things, the fundamental parameters method