ess.reduce.unwrap.to_wavelength.monitor_wavelength_data#

ess.reduce.unwrap.to_wavelength.monitor_wavelength_data(monitor_data, lookup, ltotal, pulse_stride_offset, keep_event_time_offset, backend=FrameUnwrapBackend.numba)[source]#

Convert the time-of-arrival (event_time_offset) data to wavelength data using a lookup table. The output data will have two new coordinates: wavelength and Ltotal.

Parameters:
  • da – Raw monitor data loaded from a NeXus file, e.g., NXmonitor containing NXevent_data.

  • lookup (ErrorLimitedLookupTable[TypeVar(RunType), TypeVar(MonitorType)]) – Lookup table giving wavelength as a function of distance and time of arrival.

  • ltotal (MonitorLtotal[TypeVar(RunType), TypeVar(MonitorType)]) – Total length of the flight path from the source to the monitor.

  • pulse_stride_offset (unwrap.types.PulseStrideOffset (types.int | None)) – When pulse-skipping, the offset of the first pulse in the stride. This is typically zero but can be a small integer < pulse_stride.

  • keep_event_time_offset (unwrap.types.KeepEventTimeOffset (bool)) – Whether to keep the event_time_offset coordinate after converting to wavelength.

  • backend (FrameUnwrapBackend, default: <FrameUnwrapBackend.numba: 'numba'>) – Backend used to interpolate the wavelength lookup table.

Return type:

WavelengthMonitor[TypeVar(RunType), TypeVar(MonitorType)]