ISISComputingGroup / ISISComputingGroup/DataStreaming

`filewriter`: Neutron event data (`raw_data_1/detector_1_events`)

Đang mở
#83 2 bình luận 0 reaction 0 người được giao Xem trên GitHub
filewriter
Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
0
Fork
0
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

The filewriter must be able to write out event-mode data.

This means the contents of the `NXevent_data` group in `raw_data_1/detector_1_events`

## Questions

- What do we want to do with `event_time_bins`, which aren't meaningful in streaming system?
- Due to an underlying UDP connection from hardware, the streaming system cannot guarantee that frame `N+1` will have a later `reference_time` than frame `N`. Do any consumers make assumptions about this?
* This affects whether we can stream events to file directly, or whether we have to buffer, sort by reference time, and then write to file
- Does mantid have a dependency on event time-of-flights being ordered within a frame? Currently this sort is (optionally) done at `event_aggregator` level as multiple consumers benefit from improved performance with sorted events.

## Potential differences from existing files
- We likely no longer need to apply a random `event_time_offset_shift`, as the new electronics has a much higher time resolution than the old DAE electronics. See https://github.com/ISISComputingGroup/DataStreaming/issues/22 .
- We want to be able to write the veto flags for each frame alongside the event data, to enable downstream consumers to retroactively enable or disable a veto if it chooses:
* `active_vetos`: the veto signals that were actually active for a given frame
* `enabled_vetos`: the vetoes that were _enabled_ in IBEX at the time of data acquisition
* By default downstream consumers will want to mask any events where `active_vetos & enabled_vetos != 0`.
* If adding this logic is problematic for Mantid, we could (optionally) drop the frames at filewriter level instead - at the cost of reducing flexibility and reducing diagnostics we have access to.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Start at the filewriter entry point and compare its existing output with the NXevent_data group under raw_data_1/detector_1_events. Read the event_aggregator behavior and resolve the questions about event_time_bins, reference-time ordering, event ordering, and veto flags. Done means the required streaming event-file format and handling rules are agreed and implemented.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Lĩnh vực
data-engineering
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.