amstrax

amstrax processes the data of XAMS, the dual-phase xenon TPC at Nikhef, on top of strax: from the redax chunks of the digitizer to pulses, peaks and the event tables. Code: https://github.com/XAMS-nikhef/amstrax.

Where to find what

  • This site: the code reference, generated from the source at every change of master: every data type with its columns, dependencies and options (Data structure (amstrax 3.1.0)), and the API (amstrax package).

  • XAMS handbook (https://www.nikhef.nl/~xamsdata/, Nikhef login): the canonical documentation — processing on STBC (online and offline), corrections versions, the event data format with worked examples and the old format, and how to start an analysis.

  • Overview note XAMS_amstrax_overview.pdf: where every plugin enters the reconstruction stream, where the settings come from, the event tables and the map from the old event_info columns.

Quick start

On STBC (source /data/xenon/xams_v2/setup.sh):

import amstrax

st = amstrax.contexts.xams(corrections_version="PROD5", output_folder="./strax_data")
run = "007790"
assert st.is_stored(run, "events")                   # do not trigger processing by accident
ev = st.get_df(run, ["events", "event_cuts"])        # one row per event, with the cut booleans
m = amstrax.main_interaction(st, run)                # main S1, main site and its S2 in one row per event

Indices