I(Q) reduction workflow

I(Q) reduction workflow

Main workflow

to_I_of_Q(data, data_monitors, ...[, ...])

Compute the scattering cross-section I(Q) for a SANS experimental run, performing binning in Q and a normalization based on monitor data and a direct beam function.

Building blocks


Create unit conversion graphs.

convert_to_wavelength(data, monitors, ...)

Convert the data array and all the items inside the dict of monitors to wavelength using a pre-defined conversion graph.

denoise_and_rebin_monitors(monitors, ...[, ...])

Subtract a background baseline from monitor counts, taken as the mean of the counts outside the specified non_background_range.

resample_direct_beam(direct_beam, ...)

If the wavelength binning of the direct beam function does not match the requested wavelength_bins, perform a 1d interpolation of the function onto the bins.

convert_to_q_and_merge_spectra(data, graph, ...)

Convert the data to momentum vector Q. This accepts both dense and event data. The final step merges all spectra: - In the case of event data, events in all bins are concatenated - In the case of dense data, counts in all spectra are summed.