MXAN performs a quantitative analysis of the XANES energy range. This is based on a comparison between experimental data and many theoretical spectra that are calculated by varying selected structural parameters of an initial putative structure, i.e. a well defined initial geometrical configurations around the absorber. Hundreds of different geometrical configurations are needed to obtain the best fit of the experimental data. The calculations are performed in the energy space without involving any Fourier transform algorithm; polarized spectra can be easily analysed because the calculations are performed within the full multiple scattering approach. Recently, MXAN has been developed in the framework of the multiple scattering theory and successfully applied to the analysis of several system, both in solid and liquid state. The MXAN procedure,encompasses also the phenomenological broadening and the electronic charge fitting.


NRS is a fitting and simulation routine for nuclear resonant scattering, based on CONUSS (s. the related catalogue entry). It can fit and simulate both spectra in the time domain and in the energy domain. The program allows for three different scattering geometries: forward scattering, grazing incidence scattering, and a combination of both. In addition, it can be used to simulate electronic and nuclear reflectivity curves.


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).


Combined EXAFS and XRPD data analysis with EXAFS full multiple scattering calculations and whole-spectrum fitting. A code designed to maximise the usefulness of the EXAFS technique in the investigation of crystalline materials which powder diffraction (PD) methods could not uniquely resolve. The program retains many of the features of EXCURVE (s. the related web pages) and provides most of the PD features of the program GSAS. For EXAFS this includes full multiple scattering calculations and whole-spectrum fitting, but at present it cannot deal with EXAFS polarisation dependence. PD calculations currently exclude calculation of the thermal diffuse scattering contribution, which is included in the background.

Quantum Espresso

Quantum ESPRESSO (QE) is an integrated suite of Open-Source computer codes for ab initio quantum chemistry methods of electronic-structure calculations and materials modeling at the nanoscale. It is based on density functional theory, density functional perturbation theory, plane wave basisi sets, and pseudopotentials. The core plane wave DFT functions of QE are provided by the PWscf (Plane-Wave Self-Consistent Field) component,


The program REFTIM calculates and fits the time spectra of nuclear resonant reflectivity, delayed and prompt reflectivity curves and the corresponding conversion electron Mössbauer spectra (CEMS) for any multilayer structure containing 57Fe, 151Eu, 149Sm, 119Sn or other isotopes if they have M1 Mössbauer transition. The experimental details of the nuclear resonance scattering technique with synchrotron radiation are described in the ID18 beamline Web pages.


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).


SHELX is a set of programs for the determination of small (SM) and macromolecular (MM) crystal structures by single crystal X-ray and neutron diffraction. In the program suite: SHELXT extracts the Laue group, cell dimensions and types of element present , solves the structure using data expanded to space group P1, and then uses the P1 phases to find the space group. SHELXS solves small (up to about 100 unique non-hydrogen atom) structures by direct methods. it is based on the classical tangent formula of Karle and Hauptman, but uses phase annealing and includes information from the weak reflections via the negative quartets. etc. etc,-> refer to the SHELX home page


The SPRKKR band structure package allows to calculate the electronic structure of arbitrary 3-D periodic systems, including systems with chemical disorder. The treatment of 2-D periodic systems (e.g. surfaces) can be done at the moment only by using an auxiliary system having three dimensional periodicity or by making use of the cluster approximation. The electronic structure calculation can be done in a non-relativistic, scalar-relativistic as well as fully relativistic mode. In the scalar-relativistic mode paramagnetic as well as spin-polarized systems can be treated, including non-collinear spin structures and arbitrary spin spirals. In the fully relativistic mode, paramagnetic as well as spin-polarized systems with an arbitrary spin configuration can be dealt with. On the basis of the electronic structure calculation, many different properties can be investigated with a strong emphasize on response functions and spectroscopic properties.


VASP is an ab initio simulation package based on DFT. It is used for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics from first principles. VASP computes an approximate solution to the many-body Schrödinger equation, either within density functional theory (DFT), solving the Kohn-Sham equations, or within the Hartree-Fock (HF) approximation, solving the Roothaan equations. Hybrid functionals that mix the Hartree-Fock approach with DFT are implemented as well. Furthermore, Green's functions methods (GW quasiparticles, and ACFDT-RPA) and many-body perturbation theory (2nd-order Møller-Plesset) are available. Central quantities, like the one-electron orbitals, the electronic charge density, and the local potential are expressed in plane wave basis sets. The interactions between the electrons and ions are described using norm-conserving or ultrasoft pseudopotentials, or the projector-augmented-wave method. To determine the electronic ground state, VASP makes use of efficient iterative matrix diagonalisation techniques, like the residual minimisation method with direct inversion of the iterative subspace (RMM-DIIS) or blocked Davidson algorithms. These are coupled to highly efficient Broyden and Pulay density mixing schemes to speed up the self-consistency cycle.


The program package WIEN2k allows to perform electronic structure calculations of solids using density functional theory (DFT). It is based on the full-potential (linearized) augmented plane-wave ((L)APW) + local orbitals (lo) method, one among the most accurate schemes for band structure calculations. WIEN2k is an all-electron scheme including relativistic effects.


X-ray Detector Software for processing single-crystal monochromatic diffraction data recorded by the rotation method. It processes a sequence of adjacent, nonoverlapping rotation images collected from a single-crystal at a fixed X-ray wavelength and recorded by a variety of imaging plate, CCD, pixel and multiwire area detectors; allows arbitrary but fixed orientations of the detector and rotation axis, and only requires that incident beam and rotation axis intercept in one point in the center of the crystal; automatically derives reflecting range, spot width, crystal orientation, symmetry, and cell parameters from the data images. delivers a list of corrected integrated intensities of the reflections occuring in the data images.


XMI-MSIM is an open source tool designed for predicting the spectral response of energy-dispersive X-ray fluorescence spectrometers using Monte Carlo simulations. It comes with a fully functional graphical user interface in order to make it as user friendly as possible. Considerable effort has been taken to ensure easy installation on all major platforms. A manuscript has been published in Spectrochimica Acta Part B that covers the algorithms that power XMI-MSIM. Please include a reference to this publication in your own work if you decide to use XMI-MSIM for academic purposes. A second manuscript was published that covers our XMI-MSIM based quantification plug-in for PyMca. XMI-MSIM is released under the terms of the GPLv3.

XOP (includes SHADOWVUI)

XOP (X-ray Oriented Programs) is a widget-based driver program used as a common front-end interface for modelling of x-ray sources characteristics of optical devices (mirror, filters, crystals, multilayers, etc.); multipurpose data visualizations and analyses


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.