Software


DiffPy-CMI

DiffPy-CMI is a library of Python modules for robust modeling of nanostructures in crystals, nanomaterials, and amorphous materials. The software provides functionality for storage and manipulation of structure data and calculation of structure-based quantities, such as PDF, SAS, bond valence sums, atom overlaps, bond lengths, and coordinations. Most importantly the DiffPy-CMI package contains a fitting framework for combining multiple experimental inputs in a single optimization problem.

EXtra-data

A Python library for accessing and inspecting data in European XFEL's HDF5 files. European XFEL saves data in multiple HDF5 files with a moderately complex structure. EXtra-data aims to provide a simple interface to access data from a run directory, and conveniently work it in popular Python libraries such as Dask, Xarray and pandas.

EXtra-geom

Python tools to work with geometry information for multi-module detectors at European XFEL, and to use assemble detector data into images.

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.

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.

OASYS

OASYS (OrAnge SYnchrotron Suite) is an open-source Graphical Environment for optic simulation software packages used in synchrotron facilities, based on [Orange 3](http://orange.biolab.si/orange3/). It includes SHADOWOUI, a port to the [SHADOW](https://github.com/srio/shadow3) ray-tracing code and XOPPY (the Python version of [XOP](http://www.esrf.eu/Instrumentation/software/data-analysis/xop2.4)

QENS library

This library provides different building blocks that users can combine, convolute and plug in different frameworks for visualizing or fitting Quasi Elastic Neutron Scattering (QENS) data S(Q, omega). It was developed as part of SINE2020 Workpackage 10 on Data Treatment to develop an exhaustive library of dynamical models in order to increase interoperability and modularity for a rapid prototyping. The models are written in Python for easy integration in workflows. In order to help users, a few examples of data analyses using different standard fitting engines (lmfit, scipy, bumps) are provided as Jupyter notebooks5. Tools are also provided to help those interested in contributing to the project by adding models or sharing examples of data treatment. This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 654000.

silx

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.

tomwer

Tomwer is offering tools to automate acquisition and reconstruction processes for Tomography. It contains: - a library to access each acquisition process individually - gui and applications to control main processes (reconstruction, data transfert...) and execute them as a stand alone application. - an orange add-on to help users defining their own workflow (http://orange.biolab.si)

xraylib

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.