Software package for small angle X-ray scattering (SAXS) mixture deconvolution by REGularized Alternating Least Squares. It has been applied to datasets from chromatography-coupled SAXS, time-resolved SAXS, and equilibrium titrations. See our paper (Meisburger, Xu, & Ando, 2021) for details.
matlab/
- MATLAB implementation of the REGALS librarypython/
- Python 3 implementation of the REGALS librarydemo/
- Notebooks for processing example data (Jupyter for python, Live notebooks for MATLAB). See demo/README.md.license.md
- software license
This depends on the size of the dataset. The examples included in demo/
run quickly on a desktop computer (< 1 minute).
The MATLAB implementation was developed in R2018a (version 9.4). No toolboxes are required.
The Python implementation was developed in Python 3. The REGALS library requires numpy
and scipy
. The demos use Jupyter notebooks with h5py
for data import and matplotlib
for plotting. The code has been tested with the following versions:
python
: 3.8.3numpy
: 1.18.5scipy
: 1.5.0jupyterlab
: 2.1.5h5py
: 2.10.0matplotlib
: 3.2.2
Download the repository and install software dependencies if needed.
See demo/README.md.
To get started using REGALS:
MATLAB: Copy an appropriate example script from demo/
, and open using the live editor. Make sure the matlab/
directory has been added to your path. Edit the script as needed for your dataset.
Python: Create a python 3 environment with the necessary libraries. Copy an appropriate example script from demo/
, and open it using jupyter. Make sure the python/
directory has been added to the path. Edit the script as needed for your dataset.
For a full description of the REGALS method refer to our paper (Meisburger, Xu, & Ando, 2021) and the included demos.
Meisburger, S.P., Xu, D. & Ando, N. (2021) REGALS: a general method to deconvolve X-ray scattering data from evolving mixtures. IUCrJ 8(2). https://doi.org/10.1107/S2052252521000555