The aim of the FDMNES project is to supply to the community a user friendly code to simulate x-ray spectroscopies, linked to the real absorption (XANES, XMCD) or resonant scattering (RXD) of the synchrotron radiation. This ab initio approach, wants to eliminate all the methodological parameters. First mainly mono-electronic, using the functionnal density theory (DFT), it includes now multi-electronics advances with the use of the time dependant DFT (TD-DFT) for a better taking into account of the excited states linked to the photon-matter interaction. It includes also the Hubbard correction (LDA+U) for a better description of the so called correlated materials.


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


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


The silx project aims at providing a collection of Python packages to support the development of data assessment, reduction and analysis applications at synchrotron radiation facilities. The purpose is to deliver reading/writing of different file formats, data reduction routines and a set of Qt widgets to browse and visualize data.

Unscrambler X

Commercial software product for multivariate data analysis, used for calibration of multivariate data which is often in the application of analytical data such as near infrared spectroscopy and Raman spectroscopy, and development of predictive models for use in spectroscopic analysis of materials. Unscrambler X was an early adaptation of the use of partial least squares (PLS). Other techniques supported include principal component analysis (PCA), 3-way PLS, multivariate curve resolution, design of experiments, supervised classification, unsupervised classification and cluster analysis.


Quantitative estimate of elemental composition by spectroscopic and imaging techniques using X-ray fluorescence requires the availability of accurate data of X-ray interaction with matter. Although a wide number of computer codes and data sets are reported in literature, none of them is presented in the form of freely available library functions which can be easily included in software applications for X-ray fluorescence. This work presents a compilation of data sets from different published works and an xraylib interface in the form of callable functions. Although the target applications are on X-ray fluorescence, cross sections of interactions like photoionization, coherent scattering and Compton scattering, as well as form factors and anomalous scattering functions, are also available. xraylib provides access to some of the most respected databases of physical data in the field of X-rays. The core of xraylib is a library, written in ANSI C, containing over 40 functions to be used to retrieve data from these databases. This C library can be directly linked with any program written in C, C++ or Objective-C. Furthermore, the xraylib package contains bindings to several popular programming languages: Fortran 2003, Perl, Python, Java, IDL, Lua, Ruby, PHP and .NET, as well as a command-line utility which can be used as a pocket-calculator. Although not officially supported, xraylib has been reported to be useable from within Matlab and LabView. The source code is known to compile and run on the following platforms: Linux, Mac OS X, Solaris, FreeBSD and Windows. It is very likely that xraylib will also work on other platforms: we would be grateful if you would report your successes in this regard. Please note that not all of the bindings are currently working on all platforms. A paper was published concerning xraylib by A. Brunetti, M. Sanchez del Rio, B. Golosio, A. Simionovici and A. Somogyi, “A library for X-ray matter interaction cross sections for X-ray fluorescence applications”, Spectrochimica Acta B 59 (2004) 1725-1731. This paper was recently superseded by a new manuscript, covering all features of xraylib upto version 2.15.0, written by T. Schoonjans, A. Brunetti, B. Golosio, M. Sanchez del Rio, V. A. Solé, C. Ferrero and L. Vincze, named "The xraylib library for X-ray—matter interactions. Recent developments". You are kindly requested to include this paper in the reference list of your published work when you would decide to use xraylib for scientific purposes.


software package developed by the Antwerp X-ray Imaging/Instrumentation Laboratory (AXiL) at the University of Antwerp. Its main purpose is to automate the processing of two dimensional x-ray diffraction images from scanning micro-XRPD or micro-XRPD tomography. It accepts images from flat area detectors and allows correction, calibration and modeling (Rietveld, Pawley, Pattern Decomposition). The primary goal is to visualize crystalline phase distributions in projection (2D scanning) or in a virtual cross section (tomography) of the object under investigation. Apart from the amount of material, structural properties and their changes within the object can be calculated and visualized as well.