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