Demeter is a comprehensive system for processing and analyzing X-ray Absorption Spectroscopy data. It contains several packages such as Athena, Artemis and Hephaestus, which are widely used in the XAFS community.

Materials Studio

Materials Studio is a modeling and simulation environment designed to allow to predict and understand the relationships of a material’s atomic and molecular structure with its properties and behavior. With it one can construct, manipulate and view models of molecules, crystalline materials, surfaces, polymers, and mesoscale structures. Materials Studio includes quantum, atomistic (or “classical”), mesoscale, and statistical methods that enable one to evaluate materials at various particle sizes and time scales. It also includes tools for evaluating crystal structure and crystal growth.


A neutron ray-trace simulation package. McStas is a general tool for simulating neutron scattering instruments and experiments.


Monte Carlo Xray Tracing. Allows simulation of X-ray beam lines, as well as sample simulations in so-called virtual experiments.


OCEAN is a versatile package for performing first-principles calculations of core edge spectroscopy. The many-body method is based on ground-state density-functional theory (DFT) and uses the Bethe-Salpeter equation. OCEAN utilizes the programs ABINIT or QuantumESPRESSO for ground-state DFT portion of the calculations. OCEAN is capable of producing various spectra including X-ray absorption near-edge spectra (XANES), X-ray emission spectra (XES), and non-resonant inelastic X-ray scatter (NRIXS or XRS). OCEAN is the result of collaboration between the Rehr group at the University of Washington and Eric Shirley at the National Institute of Standards and Technology (USA).


SHARP is a computer program for macromolecular crystallography. It operates on reduced, merged and scaled data from SIR(AS), MIR(AS) and MAD experiments, refines the heavy-atom model, helps detect minor or disordered sites using likelihood-based residual maps, and calculates phase probability distributions for all reflections in the data set. autoSHARP is an automated structure solution system - from merged data to automatic model building (uses SHARP as phasing engine).


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.