Your local contact will provide you with the latest version of our package of Matlab macros upon the start of your beamtime, or you can request them earlier from your local contact. These macros provide the basic functionality for reading and displaying the detector frames and for example for azimuthal integration. A zip-file with these macros can be downloaded here as well. The macros are provided as-is without any guarantees or liability on our part. An introduction is available in the cSAXS notes (see under manuals).

Note: If these codes, or subfunctions or parts of it, is used for research in a publication or if it is fully or partially rewritten for another computing language the authors and institution should be acknowledged in written form in the publication. For example "Data processing was carried out using the "cSAXS matlab package" developed by the CXS group, Paul Scherrer Institut, Switzerland." Variations on this text can be incorporated, upon discussion with the CXS group, if needed to more specifically reflect the use of the package, or function, for the published work. A publication that focuses on describing features, or parameters, that are already existing in the code should be first discussed with the authors.

Matlab base package

Basic functionalities for file reading and radial integration and plotting. Also provides a lot of functions used in the other packages.
For testing the macro package a CBF file as written by the PILATUS 2M control program camserver is available as e12612_1_00024_00000_00000.cbf. For comparison a JPEG file of the Matlab plot as displayed by image_show.m is available as well:

silver behenate.

Matlab scanning SAXS package

Analysis and plotting of scanning SAXS, main orientation of scattering, degree of orientation (please cite Bunk et. al. New J. Phys. 11, 123016 (2009)):

LSQ-ML - Iterative least-squares maximum-likelihood ptychography solver

This source code provides an implementation of the LSQ-ML method described in Opt. Express 26, 3108 (2018) in a simple Matlab-based framework. The reference implementation includes an artificial data generator and implementations of the ePIE, ePIE-OPRP and difference-map codes that were used in the article. Note that this is not the cSAXS ptychography package (which is planned to be published here at a later date), but rather a simplified version intended to showcase the LSQ-ML algorithm.
The code is using Matlab-based GPU acceleration, however seamless fallback CPU option is available as well.