Skip to content

Dld

extra.components.DelayLineDetector ¤

DelayLineDetector(
    data, detector=None, pulses=None, **kwargs
)

Interface for processed delay line detector data.

Raw analog data from quad and hex delay line detectors acquired with GHz digitizers can be reconstructed into hits by the European XFEL offline processing machinery. This component allows convenient access to the resulting sparse data as pulse-labeled pandas series and dataframes.

Note that this component is not able to access data saved by the proprietary SurfaceConcepts TDC integration.

Parameters:

Name Type Description Default
data DataCollection

Data to access DLD data from.

required
detector str

Source name of the detector, only needed if the data includes more than one.

None
pulses PulsePattern

Pulse component to pull pulse information. If omitted, it is constructed from the internal trigger information using any remaining additional keyword argument.

None

control_source property ¤

control_source

Control source.

instrument_source property ¤

instrument_source

Instrument source.

rec_params property ¤

rec_params

Reconstruction parameters.

insert_aligned_columns staticmethod ¤

insert_aligned_columns(df, columns)

Add pulse-indexed data to reduced dataframe.

Parameters:

Name Type Description Default
df DataFrame

Frame to insert columns into.

required
columns dict

Mapping of column name to labeled 1D data to insert, may be pandas series, xarray DataArray or KeyData. Must be re-indexable by internal train or pulse index and data is repeated accordingly.

required

Returns:

Type Description

None

pulses ¤

pulses(**kwargs)

Get pulse object based on internal triggers.

Any keyword arguments are passed to the underlying DldPulses.

Returns:

Type Description
DldPulses

Pulse object based on constructed trigger information.

triggers ¤

triggers()

Get triggers as dataframe.

Returns:

Type Description
DataFrame

Constructed trigger information as dataframe.

edges ¤

edges(channel_index=True, pulse_dim='pulseId')

Get raw edges as series or dataframe.

Parameters:

Name Type Description Default
channel_index bool

Whether to insert the edge channel as index level and return Series object (default), or as column and return DataFrame object.

True
pulse_dim {pulseId, pulseIndex, time}

Label for pulse dimension, pulse ID by default.

'pulseId'

Returns:

Type Description
Series or DataFrame

Raw edge positions as Series (indexed by channel) or DataFrame (with channel as column) object.

signals ¤

signals(
    pulse_dim="pulseId", extra_columns={}, max_method=None
)

Get reconstructed signals as dataframe.

This data is primarily for detector diagnostics purposes and should generally not be used for scientific data analysis, please refer instead to reconstructed x, y, t data obtained from hits().

Parameters:

Name Type Description Default
pulse_dim {pulseId, pulseIndex, time}

Label for pulse dimension, pulse ID by default.

'pulseId'
extra_columns dict

Mapping of column name to labeled 1D data to insert, may be pandas series, xarray DataArray or KeyData. Must be re-indexable by internal train or pulse index and data is repeated accordingly.

{}
max_method int

Maximal reconstruction method to include in the result, by default all hits are included. Generally methods up to and including 10 can be considered safe and > 14 should be treated as risky, please consult processing reports for more details.

None

Returns:

Type Description

(pandas.DataFrame) Detector signals.

hits ¤

hits(
    pulse_dim="pulseId", extra_columns={}, max_method=None
)

Get reconstructed hits as dataframe.

By default, this method only includes non-risky hit reconstructions in the returned dataset. Please refer to the max_method argument and the correspondig processing reports for more information

Parameters:

Name Type Description Default
pulse_dim {pulseId, pulseIndex, time}

Label for pulse dimension, pulse ID by default.

'pulseId'
extra_columns dict

Mapping of column name to labeled 1D data to insert, may be pandas series, xarray DataArray or KeyData. Must be re-indexable by internal train or pulse index and data is repeated accordingly.

{}
max_method int

Maximal reconstruction method to include in the result, by default all hits are included. Generally methods up to and including 10 can be considered safe and > 14 should be treated as risky, please consult processing reports for more details.

None

Returns:

Type Description

(pandas.DataFrame) Detector hits.