DataObjects.SecSaxsData#
DataObjects.SecSacsData.py
Copyright (c) 2024-2025, SAXS Team, KEK-PF
- class SecSaxsData(folder=None, object_list=None, uv_only=False, xr_only=False, trimmed=False, remove_bubbles=False, beamline_info=None, mapping=None, time_initialized=None, datafiles=None, debug=False)#
Bases:
object
A class to represent a SEC-SAXS data object.
ssd = SecSacsData(data_folder)
Creates a SEC-SAXS data object.
- Parameters:
folder (str, optional) – Specifies the folder path where the data are stored. It is required if the data_list parameter is ommitted.
object_list (list, optional) – A list which includes [xr_data, uv_data] in this order to be used as corresponding data items. It is required if the folder parameter is ommitted.
uv_only (bool, optional) – If it is True, only UV data will be loaded to suppress unnecessary data access.
xr_only (bool, optional) – If it is True, only XR data will be loaded to suppress unnecessary data access.
trimmed (bool, optional) – If it is True, the data will be treated as trimmed.
remove_bubbles (bool, optional) – If it is True, bubbles will be removed from the data.
beamline_info (BeamlineInfo, optional) – If specified, the beamline information will be used.
mapping (MappingInfo, optional) – If specified, the mapping information will be used.
Examples
>>> ssd = SecSacsData('the_data_folder')
>>> uv_only_ssd = SecSacsData('the_data_folder', uv_only=True)
- plot_3d(view_init=None)#
Plots a pair of 3D figures of UV and XR data.
- Parameters:
view_init (dict, optional) – A dictionary which specifies the view_init parameters. The default is dict(elev=30, azim=-60) as of matplotlib 3.10.
view_arrows (bool, optional) – If it is True, the 2D view arrows are drawn on the 3D plot. One of the arrows shows the elutional view, while the other shows the spectral view. The default is False.
Rturns
-------
result (PlotResult) –
A PlotResult object which contains the following attributes.
fig: Figure axes: Axes
- plot_compact()#
Plots a pair of compact figures of UV and XR data.
- Parameters:
None
- Returns:
result – A PlotResult object which contains the following attributes.
fig: Figure axes: Axes
- Return type:
- make_trimming(xr_qr=None, xr_mt=None, uv_wr=None, uv_mt=None, uv_fc=None)#
Returns a pair of indeces which should be used as a slice for the spectral axis to trim away unusable UV data regions.
- Parameters:
xr_qr
xr_mt
uv_wr
uv_mt
uv_fc
See also
ssd.copy
Examples
>>> trim = ssd.make_trimming()
- plot_trimming(trim)#
Plots a set of trimmming info.
- Parameters:
trim (TrimmingInfo or dict, optional) – The trimming information to be used for the plot.
baseline (bool, optional) – If it is True, the baseline will be plotted.
title (str, optional) – If specified, add a super title to the plot.
return_fig (bool, optional) – If it is True, returns the figure object.
- Returns:
result – A PlotResult object which contains the following attributes.
fig: Figure axes: Axes trimming : TrimmingInfo
- Return type:
- copy(xr_slices=None, uv_slices=None)#
Returns a deep copy of this object.
- Parameters:
xr_slices ((xr_islice, xr_jslice), optional.) – If specified, the returned copy contains the deep copies of elements xrM[xr_islice:xr_jslice] and qv[xr_islice]. Otherwise, the returned copy contains the deep copies of elements xrM and qv.
uv_slices ((uv_islice, uv_jslice), optional.) – If specified, the returned copy contains the deep copies of elements uvM[uv_islice:uv_jslice] and wv[uv_islice]. Otherwise, the returned copy contains the deep copies of elements uvM and wv.
Examples
>>> copied_ssd = ssd.copy() >>> trimming = ssd.make_trimming() >>> trimmed_ssd = ssd.copy(xr_slices=trimming.xr_slices, uv_slices=trimming.uv_slices)
- trimmed_copy(trimming=None, jranges=None, mapping=None)#
- Parameters:
trimming (TrimmingInfo, optional) – If specified, the trimming information will be used for the copy.
jranges (tuple of (double, double), optional) – The ranges to apply for trimming in the form of [(start1, end1), (start2, end2)].
mapping (MappingInfo, optional) – If specified, the mapping information will be used for the copy. It must be provided if jranges is specified.
- Returns:
A trimmed copy of the SSD object with the specified trimming specification applied.
- Return type:
- set_baseline_method(method)#
Sets the baseline method to be used for the baseline correction.
- Parameters:
method (str or (str, str)) – Specifies the baseline method to be used. If it is a string, it will be used for both XR and UV data. If it is a tuple of two strings, the first string will be used for XR data and the second string will be used for UV data.
- Return type:
None
- get_baseline_method()#
Returns the baseline method used for the baseline correction.
- Parameters:
None
- Returns:
method – A tuple of two strings which contains the baseline methods used for XR and UV data. If the baseline method is the same for both XR and UV data, it returns a single string instead of a tuple.
- Return type:
(str, str)
- corrected_copy()#
Returns a deep copy of this object which has been corrected subtracting the baseline from the original data.
- Parameters:
debug (bool, optional) – If True, enables debug mode for more verbose output.
- estimate_mapping(debug=False)#
- get_mapping()#
Returns the mapping information object.
- Parameters:
None
- Returns:
mapping – A MappingInfo object which contains the mapping information. If the mapping information is not available, returns None.
- Return type:
- get_concfactor()#
- quick_decomposition()#
Returns a lowrank information object.
- Parameters:
num_components (int, optional) – Specifies the number of components which also implies the SVD rank used to denoise the matrix data.
curve_model (str, optional) – Specifies the elution model to be used. The default is ‘egh’.
- inspect_ip_effect()#
- Parameters:
None
- get_uv_device_id()#
- get_beamline_name()#
- export(folder, prefix=None)#
Exports the data to a file.
- Parameters:
folder (str) – Specifies the folder path where the data will be exported.
prefix (str, optional) – Specifies the filename prefix to be used for the exported data. If it is None, “PREFIX_” will be used.
fmt (str, optional) – Specifies the format to be used for the exported data. The default is ‘%.18e’.
xr_only (bool, optional) – If True, only export XR data.
uv_only (bool, optional) – If True, only export UV data.
- Returns:
filepath – The full path of the exported file.
- Return type:
str