Synchrotron and Optics Related

General-purpose IDL routines:

  • X-ray specific routines to evaluate absorption in elemental and compound materials, reflection from such materials, X-ray diffraction parameters, etc.
  • Synchrotron source routines to evaluate spectra and spatial/angular distributions of radiation from arbitrary synchrotron sources.
  • General optics routines to evaluate beam propagation through a series of optical elements.

Contact Person: Mati Meron (

Liquid Surface/Interface

Python Packages with graphical user interface:

  • Reader – A tool for reading and processing X-ray scattering data generated by a variety of detectors, including the Pilatus 100, Pilatus3X-CdTe-1M, APEX II CCD, and Vortex detectors. It converts raw images from area detectors into ready-for-analysis data.
  • Analyzer - Data fitting software for the following liquid surface scattering techniques: X-ray reflectivity (XR), grazing incidence X-ray diffraction (GIXD), X-ray fluorescence near total reflection (XFNTR), and grazing incidence X-ray off-specular scattering (GIXOS). The liquid surface scattering data extracted from raw detector images using the “Reader” can be directly imported into the “Analyzer”.

These software packages are freely downloadable from the GitHub website: Please see the instructions and user’s manual here: “”.

Contact Person: Wei Bu (, Python Software


  • Pilatus-Tiff – Image format conversion software transforms Pilatus 1M data files, which are saved as tiff images, to Bruker sfrm format for further processing by users who own a Bruker APEXII software license.
  • HPUtility – Corrects high pressure crystallography data for absorption.
  • Amask – Generates software masks to eliminate scattering shadows from data to improve the accuracy of data integration.
  • CMC3dis – Background removal and indexing software that provides functions to reconstruct the Ewald sphere from diffraction image frames, thus allowing for indexing of unit cell parameters and defining its orientation.

Additional software has been developed for data collection, especially for time resolved studies. At present, this additional software is intended for local use only.

Contact Person: Yu-Sheng Chen (


ASAXS software is under development for data collection, visualization, reduction and analysis.  The software, written in Python, includes:

  • Data collection – Sample alignment and ASAXS/SAXS data collection.
  • Data reduction - Data reduction software with user friendly Q-calibration and masking capabilities that can run simultaneously with data collection software for on-the-fly data reduction.
  • ASAXS data analyzer: Performs processing functions, including averaging, background subtraction, and absolution scale normalization. Linear equation solvers resolve ASAXS data into different scattering components.
  • Data fitting software: A graphical user interface is available to fit 1D experimental data. A limited set of functions is provided at present. The function set can be extended easily by users, even those with a limited knowledge of the fitting software.

Current versions of ASAXS software and the instructions to use them are freely available upon request. Please click here.

Contact Person: Mrinal Bera (