Straxen nT datastructure
This page is an autogenerated reference for all the plugins in straxen’s xenonnt_online context.
Colors indicate data kinds. To load tables with different data kinds, you currently need more than one get_df (or get_array) commands.
event_positions
Description
Provided by plugin: EventPositions
Data kind: events
Computes the observed and corrected position for the main S1/S2 pairs in an event. For XENONnT data, it returns the FDC corrected positions of the default_reconstruction_algorithm. In case the fdc_map is given as a file (not through CMT), then the coordinate system should be given as (x, y, z), not (x, y, drift_time).
Columns provided
Field name | Data type | Comment |
---|---|---|
x | float32 | Interaction x-position, field-distortion corrected (cm) |
y | float32 | Interaction y-position, field-distortion corrected (cm) |
z | float32 | Interaction z-position, using mean drift velocity only (cm) |
r | float32 | Interaction radial position, field-distortion corrected (cm) |
z_naive | float32 | Interaction z-position using mean drift velocity only (cm) |
r_naive | float32 | Interaction r-position using observed S2 positions directly (cm) |
r_field_distortion_correction | float32 | Correction added to r_naive for field distortion (cm) |
z_field_distortion_correction | float32 | Correction added to z_naive for field distortion (cm) |
theta | float32 | Interaction angular position (radians) |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
default_reconstruction_algorithm | mlp | <OMITTED> | default reconstruction algorithm that provides (x,y) |
electron_drift_time_gate | (electron_drift_time_gate, ONLINE, True) | <OMITTED> | Electron drift time from the gate in ns |
electron_drift_velocity | (electron_drift_velocity, ONLINE, True) | <OMITTED> | Vertical electron drift velocity in cm/ns (1e4 m/ms) |
fdc_map | https://ra...v1.json.gz | (fdc_map, ONLINE, True) | 3D field distortion correction map path |
nveto_pmt_position_map | nveto_pmt_position.csv | <OMITTED> | nVeto PMT position mapfile |
position_max_time_nv | 20 | <OMITTED> | Time [ns] within an event use to compute the azimuthal angle of the event. |
events
Description
Provided by plugin: Events
Data kind: events
Plugin which defines an “event” in our TPC.
An event is defined by peak(s) in fixed range of time around a peak which satisfies certain conditions:
The triggering peak must have a certain area.
2. The triggering peak must have less than “trigger_max_competing” peaks. (A competing peak must have a certain area fraction of the triggering peak and must be in a window close to the main peak)
- Note:
The time range which defines an event gets chopped at the chunk boundaries. This happens at invalid boundaries of the
Columns provided
Field name | Data type | Comment |
---|---|---|
event_number | int64 | Event number in this dataset |
time | int64 | Event start time in ns since the unix epoch |
endtime | int64 | Event end time in ns since the unix epoch |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | immutabledict mapping subdetector to (min, max) channel number. |
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | immutabledict mapping subdetector to (min, max) channel number. |
electron_drift_velocity | (electron_drift_velocity, ONLINE, True) | <OMITTED> | Vertical electron drift velocity in cm/ns (1e4 m/ms) |
event_left_extension_mv | 0 | <OMITTED> | Extends events this many ns to the left |
event_left_extension_nv | 0 | <OMITTED> | Extends events this many ns to the left |
event_left_extension_nv | 0 | <OMITTED> | Extends events this many ns to the left |
event_min_hits_mv | 3 | <OMITTED> | Minimum number of fully confined hitlets to define an event. |
event_min_hits_nv | 3 | <OMITTED> | Minimum number of fully confined hitlets to define an event. |
event_min_hits_nv | 3 | <OMITTED> | Minimum number of fully confined hitlets to define an event. |
event_resolving_time_mv | 300 | <OMITTED> | Resolving time for fixed window coincidence [ns]. |
event_resolving_time_nv | 300 | <OMITTED> | Resolving time for fixed window coincidence [ns]. |
event_resolving_time_nv | 300 | <OMITTED> | Resolving time for fixed window coincidence [ns]. |
left_event_extension | 250000 | <OMITTED> | Extend events this many ns to the left from each triggering peak. This extension is added to the maximum drift time. |
max_drift_length | 148.651 | <OMITTED> | Total length of the TPC from the bottom of gate to the top of cathode wires [cm] |
right_event_extension | 250000 | <OMITTED> | Extend events this many ns to the right from each triggering peak. |
trigger_max_competing | 7 | <OMITTED> | Peaks must have FEWER nearby larger or slightly smaller peaks to cause events |
trigger_min_area | 100 | <OMITTED> | Peaks must have more area (PE) than this to cause events |
peak_basics
Description
Provided by plugin: PeakBasics
Data kind: peaks
Compute the basic peak-properties, thereby dropping structured arrays. NB: This plugin can therefore be loaded as a pandas DataFrame.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time of the peak (ns since unix epoch) |
endtime | int64 | End time of the peak (ns since unix epoch) |
center_time | int64 | Weighted center time of the peak (ns since unix epoch) |
area | float32 | Peak integral in PE |
n_channels | int16 | Number of PMTs contributing to the peak |
max_pmt | int16 | PMT number which contributes the most PE |
max_pmt_area | float32 | Area of signal in the largest-contributing PMT (PE) |
range_50p_area | float32 | Width (in ns) of the central 50% area of the peak |
range_90p_area | float32 | Width (in ns) of the central 90% area of the peak |
area_fraction_top | float32 | Fraction of area seen by the top array (NaN for peaks with non-positive area) |
length | int32 | Length of the peak waveform in samples |
dt | int16 | Time resolution of the peak waveform in ns |
rise_time | float32 | Time between 10% and 50% area quantiles [ns] |
tight_coincidence | int16 | Hits within tight range of mean |
type | int8 | Classification of the peak(let) |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
check_peak_sum_area_rtol | NaN | <OMITTED> | Check if the sum area and the sum of area per channel are the same. If None, don't do the check. To perform the check, set to the desired rtol value used e.g. '1e-4' (see np.isclose). |
check_peak_sum_area_rtol | NaN | <OMITTED> | Check if the sum area and the sum of area per channel are the same. If None, don't do the check. To perform the check, set to the desired rtol value used e.g. '1e-4' (see np.isclose). |
n_top_pmts | 253.0 | 253 | Number of top PMTs |
n_top_pmts | 253.0 | 253 | Number of top PMTs |
peak_proximity
Description
Provided by plugin: PeakProximity
Data kind: peaks
Look for peaks around a peak to determine how many peaks are in proximity (in time) of a peak.
Columns provided
Field name | Data type | Comment |
---|---|---|
n_competing | int32 | Number of nearby larger or slightly smaller peaks |
n_competing_left | int32 | Number of larger or slightly smaller peaks left of the main peak |
t_to_prev_peak | int64 | Time between end of previous peak and start of this peak [ns] |
t_to_next_peak | int64 | Time between end of this peak and start of next peak [ns] |
t_to_nearest_peak | int64 | Smaller of t_to_prev_peak and t_to_next_peak [ns] |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
min_area_fraction | 0.5 | <OMITTED> | The area of competing peaks must be at least this fraction of that of the considered peak |
nearby_window | 10000000.0 | <OMITTED> | Peaks starting within this time window (on either side)in ns count as nearby. |
peak_max_proximity_time | 100000000.0 | <OMITTED> | Maximum value for proximity values such as t_to_next_peak [ns] |
peak_positions_cnn
Description
Provided by plugin: PeakPositionsCNN
Data kind: peaks
Convolutional Neural Network (CNN) neural net for position reconstruction
Columns provided
Field name | Data type | Comment |
---|---|---|
x_cnn | float32 | Reconstructed cnn S2 X position (cm), uncorrected |
y_cnn | float32 | Reconstructed cnn S2 Y position (cm), uncorrected |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
cnn_model | (cnn_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (cnn_model, ONLINE, True)Set to None to skip the computation of this plugin. |
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
n_top_pmts | 253 | 253 | Number of top PMTs |
peak_positions_mlp
Description
Provided by plugin: PeakPositionsMLP
Data kind: peaks
Multilayer Perceptron (MLP) neural net for position reconstruction
Columns provided
Field name | Data type | Comment |
---|---|---|
x_mlp | float32 | Reconstructed mlp S2 X position (cm), uncorrected |
y_mlp | float32 | Reconstructed mlp S2 Y position (cm), uncorrected |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
mlp_model | (mlp_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (mlp_model, ONLINE, True)Set to None to skip the computation of this plugin. |
n_top_pmts | 253 | 253 | Number of top PMTs |
peak_positions_gcn
Description
Provided by plugin: PeakPositionsGCN
Data kind: peaks
Graph Convolutional Network (GCN) neural net for position reconstruction
Columns provided
Field name | Data type | Comment |
---|---|---|
x_gcn | float32 | Reconstructed gcn S2 X position (cm), uncorrected |
y_gcn | float32 | Reconstructed gcn S2 Y position (cm), uncorrected |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
gcn_model | (gcn_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (gcn_model, ONLINE, True)Set to None to skip the computation of this plugin. |
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
n_top_pmts | 253 | 253 | Number of top PMTs |
peak_positions
Description
Provided by plugin: PeakPositionsNT
Data kind: peaks
Merge the reconstructed algorithms of the different algorithms into a single one that can be used in Event Basics.
Select one of the plugins to provide the ‘x’ and ‘y’ to be used further down the chain. Since we already have the information needed here, there is no need to wait until events to make the decision.
Since the computation is trivial as it only combined the three input plugins, don’t save this plugins output.
Columns provided
Field name | Data type | Comment |
---|---|---|
x_cnn | float32 | Reconstructed cnn S2 X position (cm), uncorrected |
y_cnn | float32 | Reconstructed cnn S2 Y position (cm), uncorrected |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
x_mlp | float32 | Reconstructed mlp S2 X position (cm), uncorrected |
y_mlp | float32 | Reconstructed mlp S2 Y position (cm), uncorrected |
x_gcn | float32 | Reconstructed gcn S2 X position (cm), uncorrected |
y_gcn | float32 | Reconstructed gcn S2 Y position (cm), uncorrected |
x | float32 | Reconstructed S2 X position (cm), uncorrected |
y | float32 | Reconstructed S2 Y position (cm), uncorrected |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
cnn_model | (cnn_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (cnn_model, ONLINE, True)Set to None to skip the computation of this plugin. |
default_reconstruction_algorithm | mlp | <OMITTED> | default reconstruction algorithm that provides (x,y) |
gcn_model | (gcn_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (gcn_model, ONLINE, True)Set to None to skip the computation of this plugin. |
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
min_reconstruction_area | 10 | <OMITTED> | Skip reconstruction if area (PE) is less than this |
mlp_model | (mlp_model, ONLINE, True) | <OMITTED> | Neural network model.If CMT, specify as (mlp_model, ONLINE, True)Set to None to skip the computation of this plugin. |
n_top_pmts | 253 | 253 | Number of top PMTs |
n_top_pmts | 253 | 253 | Number of top PMTs |
n_top_pmts | 253 | 253 | Number of top PMTs |
event_info
Description
Provided by plugin: EventInfo
Data kind: events
Plugin which merges the information of all event data_kinds into a single data_type.
Columns provided
Field name | Data type | Comment |
---|---|---|
cs1 | float32 | Corrected S1 area [PE] |
cs2 | float32 | Corrected S2 area [PE] |
alt_cs1 | float32 | Corrected area of the alternate S1 [PE] |
alt_cs2 | float32 | Corrected area of the alternate S2 [PE] |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
e_light | float32 | Energy in light signal [keVee] |
e_charge | float32 | Energy in charge signal [keVee] |
e_ces | float32 | Energy estimate [keVee] |
n_peaks | int32 | Number of peaks in the event |
drift_time | int32 | Drift time between main S1 and S2 in ns |
event_number | int64 | Event number in this dataset |
s1_index | int32 | Main S1 peak index in event |
alt_s1_index | int32 | Alternate S1 peak index in event |
s1_time | int64 | Main S1 start time since unix epoch [ns] |
alt_s1_time | int64 | Alternate S1 start time since unix epoch [ns] |
s1_center_time | int64 | Main S1 weighted center time since unix epoch [ns] |
alt_s1_center_time | int64 | Alternate S1 weighted center time since unix epoch [ns] |
s1_endtime | int64 | Main S1 end time since unix epoch [ns] |
alt_s1_endtime | int64 | Alternate S1 end time since unix epoch [ns] |
s1_area | float32 | Main S1 area, uncorrected [PE] |
alt_s1_area | float32 | Alternate S1 area, uncorrected [PE] |
s1_n_channels | int16 | Main S1 count of contributing PMTs |
alt_s1_n_channels | int16 | Alternate S1 count of contributing PMTs |
s1_n_competing | int32 | Main S1 number of competing peaks |
alt_s1_n_competing | int32 | Alternate S1 number of competing peaks |
s1_max_pmt | int16 | Main S1 PMT number which contributes the most PE |
alt_s1_max_pmt | int16 | Alternate S1 PMT number which contributes the most PE |
s1_max_pmt_area | float32 | Main S1 area in the largest-contributing PMT (PE) |
alt_s1_max_pmt_area | float32 | Alternate S1 area in the largest-contributing PMT (PE) |
s1_range_50p_area | float32 | Main S1 width, 50% area [ns] |
alt_s1_range_50p_area | float32 | Alternate S1 width, 50% area [ns] |
s1_range_90p_area | float32 | Main S1 width, 90% area [ns] |
alt_s1_range_90p_area | float32 | Alternate S1 width, 90% area [ns] |
s1_rise_time | float32 | Main S1 time between 10% and 50% area quantiles [ns] |
alt_s1_rise_time | float32 | Alternate S1 time between 10% and 50% area quantiles [ns] |
s1_area_fraction_top | float32 | Main S1 fraction of area seen by the top PMT array |
alt_s1_area_fraction_top | float32 | Alternate S1 fraction of area seen by the top PMT array |
alt_s1_interaction_drift_time | int32 | Drift time using alternate S1 [ns] |
alt_s1_delay | int32 | Time between main and alternate S1 [ns] |
s2_index | int32 | Main S2 peak index in event |
alt_s2_index | int32 | Alternate S2 peak index in event |
s2_time | int64 | Main S2 start time since unix epoch [ns] |
alt_s2_time | int64 | Alternate S2 start time since unix epoch [ns] |
s2_center_time | int64 | Main S2 weighted center time since unix epoch [ns] |
alt_s2_center_time | int64 | Alternate S2 weighted center time since unix epoch [ns] |
s2_endtime | int64 | Main S2 end time since unix epoch [ns] |
alt_s2_endtime | int64 | Alternate S2 end time since unix epoch [ns] |
s2_area | float32 | Main S2 area, uncorrected [PE] |
alt_s2_area | float32 | Alternate S2 area, uncorrected [PE] |
s2_n_channels | int16 | Main S2 count of contributing PMTs |
alt_s2_n_channels | int16 | Alternate S2 count of contributing PMTs |
s2_n_competing | int32 | Main S2 number of competing peaks |
alt_s2_n_competing | int32 | Alternate S2 number of competing peaks |
s2_max_pmt | int16 | Main S2 PMT number which contributes the most PE |
alt_s2_max_pmt | int16 | Alternate S2 PMT number which contributes the most PE |
s2_max_pmt_area | float32 | Main S2 area in the largest-contributing PMT (PE) |
alt_s2_max_pmt_area | float32 | Alternate S2 area in the largest-contributing PMT (PE) |
s2_range_50p_area | float32 | Main S2 width, 50% area [ns] |
alt_s2_range_50p_area | float32 | Alternate S2 width, 50% area [ns] |
s2_range_90p_area | float32 | Main S2 width, 90% area [ns] |
alt_s2_range_90p_area | float32 | Alternate S2 width, 90% area [ns] |
s2_rise_time | float32 | Main S2 time between 10% and 50% area quantiles [ns] |
alt_s2_rise_time | float32 | Alternate S2 time between 10% and 50% area quantiles [ns] |
s2_area_fraction_top | float32 | Main S2 fraction of area seen by the top PMT array |
alt_s2_area_fraction_top | float32 | Alternate S2 fraction of area seen by the top PMT array |
alt_s2_interaction_drift_time | int32 | Drift time using alternate S2 [ns] |
alt_s2_delay | int32 | Time between main and alternate S2 [ns] |
s2_x | float32 | Main S2 reconstructed X position, uncorrected [cm] |
s2_y | float32 | Main S2 reconstructed Y position, uncorrected [cm] |
alt_s2_x | float32 | Alternate S2 reconstructed X position, uncorrected [cm] |
alt_s2_y | float32 | Alternate S2 reconstructed Y position, uncorrected [cm] |
area_before_main_s2 | float32 | Sum of areas before Main S2 [PE] |
large_s2_before_main_s2 | float32 | The largest S2 before the Main S2 [PE] |
s2_x_cnn | float32 | Main S2 cnn-reconstructed X position, uncorrected [cm] |
s2_y_cnn | float32 | Main S2 cnn-reconstructed Y position, uncorrected [cm] |
alt_s2_x_cnn | float32 | Alternate S2 cnn-reconstructed X position, uncorrected [cm] |
alt_s2_y_cnn | float32 | Alternate S2 cnn-reconstructed Y position, uncorrected [cm] |
s2_x_gcn | float32 | Main S2 gcn-reconstructed X position, uncorrected [cm] |
s2_y_gcn | float32 | Main S2 gcn-reconstructed Y position, uncorrected [cm] |
alt_s2_x_gcn | float32 | Alternate S2 gcn-reconstructed X position, uncorrected [cm] |
alt_s2_y_gcn | float32 | Alternate S2 gcn-reconstructed Y position, uncorrected [cm] |
s2_x_mlp | float32 | Main S2 mlp-reconstructed X position, uncorrected [cm] |
s2_y_mlp | float32 | Main S2 mlp-reconstructed Y position, uncorrected [cm] |
alt_s2_x_mlp | float32 | Alternate S2 mlp-reconstructed X position, uncorrected [cm] |
alt_s2_y_mlp | float32 | Alternate S2 mlp-reconstructed Y position, uncorrected [cm] |
x | float32 | Interaction x-position, field-distortion corrected (cm) |
y | float32 | Interaction y-position, field-distortion corrected (cm) |
z | float32 | Interaction z-position, using mean drift velocity only (cm) |
r | float32 | Interaction radial position, field-distortion corrected (cm) |
z_naive | float32 | Interaction z-position using mean drift velocity only (cm) |
r_naive | float32 | Interaction r-position using observed S2 positions directly (cm) |
r_field_distortion_correction | float32 | Correction added to r_naive for field distortion (cm) |
z_field_distortion_correction | float32 | Correction added to z_naive for field distortion (cm) |
theta | float32 | Interaction angular position (radians) |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
event_info_function | pre_apply_function | <OMITTED> | Function that must be applied to all event_info data. Do not change. |
raw_records
Description
Provided by plugin: DAQReader
Data kind: raw_records
Read the XENONnT DAQ-live_data from redax and split it to the appropriate raw_record data-types based on the channel-map.
Does nothing whatsoever to the live_data; not even baselining.
- Provides:
raw_records: (tpc)raw_records.
raw_records_he: raw_records for the high energy boards
digitizing the top PMT-array at lower amplification. - raw_records_nv: neutron veto raw_records; only stored temporary as the software coincidence trigger not applied yet. - raw_records_mv: muon veto raw_records. - raw_records_aqmon: raw_records for the acquisition monitor (_nv for neutron veto).
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int16 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
pulse_length | int32 | Length of pulse to which the record belongs (without zero-padding) |
record_i | int16 | Fragment number in the pulse |
baseline | int16 | Baseline determined by the digitizer (if this is supported) |
data | ('<i2', (110,)) | Waveform data in raw ADC counts |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
baseline_samples_nv | (baseline_samples_nv, ONLINE, True) | <OMITTED> | Number of samples used in baseline rms calculation |
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | frozendict mapping subdetector to (min, max) channel number. |
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | immutabledict mapping subdetector to (min, max) channel number. |
check_raw_record_overlaps_nv | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
coincidence_level_recorder_nv | 3 | <OMITTED> | Required coincidence level. |
daq_chunk_duration | 5000000000 | <OMITTED> | Duration of regular chunks in ns |
daq_compressor | lz4 | <OMITTED> | Algorithm used for (de)compressing the live data |
daq_input_dir | <OMITTED> | <OMITTED> | Directory where readers put data |
daq_overlap_chunk_duration | 500000000 | <OMITTED> | Duration of intermediate/overlap chunks in ns |
erase | False | <OMITTED> | Delete reader data after processing |
hit_min_amplitude_nv | (hit_thresholds_nv, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_nveto_pmts, or a number, or a string like "pmt_commissioning_initial" which means calling hitfinder_thresholds.py, or a tuple like (correction=str, version=str, nT=boolean), which means we are using cmt. |
max_digitizer_sampling_time | 10 | <OMITTED> | Highest interval time of the digitizer sampling times(s) used. |
n_lone_records_nv | 2 | <OMITTED> | Number of lone hits to be stored per channel for diagnostic reasons. |
pre_trigger_time_nv | 150 | <OMITTED> | Pretrigger time before coincidence window in ns. |
readout_threads | <OMITTED> | <OMITTED> | Dictionary of the readout threads where the keys specify the reader and value the number of threads |
record_length | 110 | <OMITTED> | Number of samples per raw_record |
resolving_time_recorder_nv | 600 | <OMITTED> | Resolving time of the coincidence in ns. |
run_start_time | 0 | <OMITTED> | time of start run (s since unix epoch) |
safe_break_in_pulses | 1000 | <OMITTED> | Time (ns) between pulses indicating a safe break in the datastream -- gaps of this size cannot be interior to peaklets. |
raw_records_aqmon
Description
Provided by plugin: DAQReader
Data kind: raw_records_aqmon
Read the XENONnT DAQ-live_data from redax and split it to the appropriate raw_record data-types based on the channel-map.
Does nothing whatsoever to the live_data; not even baselining.
- Provides:
raw_records: (tpc)raw_records.
raw_records_he: raw_records for the high energy boards
digitizing the top PMT-array at lower amplification. - raw_records_nv: neutron veto raw_records; only stored temporary as the software coincidence trigger not applied yet. - raw_records_mv: muon veto raw_records. - raw_records_aqmon: raw_records for the acquisition monitor (_nv for neutron veto).
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int16 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
pulse_length | int32 | Length of pulse to which the record belongs (without zero-padding) |
record_i | int16 | Fragment number in the pulse |
baseline | int16 | Baseline determined by the digitizer (if this is supported) |
data | ('<i2', (110,)) | Waveform data in raw ADC counts |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | immutabledict mapping subdetector to (min, max) channel number. |
daq_chunk_duration | 5000000000 | <OMITTED> | Duration of regular chunks in ns |
daq_compressor | lz4 | <OMITTED> | Algorithm used for (de)compressing the live data |
daq_input_dir | <OMITTED> | <OMITTED> | Directory where readers put data |
daq_overlap_chunk_duration | 500000000 | <OMITTED> | Duration of intermediate/overlap chunks in ns |
erase | False | <OMITTED> | Delete reader data after processing |
max_digitizer_sampling_time | 10 | <OMITTED> | Highest interval time of the digitizer sampling times(s) used. |
readout_threads | <OMITTED> | <OMITTED> | Dictionary of the readout threads where the keys specify the reader and value the number of threads |
record_length | 110 | <OMITTED> | Number of samples per raw_record |
run_start_time | 0 | <OMITTED> | time of start run (s since unix epoch) |
safe_break_in_pulses | 1000 | <OMITTED> | Time (ns) between pulses indicating a safe break in the datastream -- gaps of this size cannot be interior to peaklets. |
events_tagged
Description
Provided by plugin: EventInfoVetos
Data kind: events
Plugin which combines event_info with the tagged peaks information from muon- and neutron-veto.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
s1_veto_tag | int8 | Veto tag for S1: unatagged: 0, nveto: 1, mveto: 2, both: 3 |
s1_dt_veto | int64 | Time to closest veto interval for s1 |
alt_s1_veto_tag | int8 | Veto tag for alt_S1: unatagged: 0, nveto: 1, mveto: 2, both: 3 |
alt_s1_dt_veto | int64 | Time to closest veto interval for alt_s1 |
s2_veto_tag | int8 | Veto tag for S2: unatagged: 0, nveto: 1, mveto: 2, both: 3 |
s2_dt_veto | int64 | Time to closest veto interval for s2 |
alt_s2_veto_tag | int8 | Veto tag for alt_S2: unatagged: 0, nveto: 1, mveto: 2, both: 3 |
alt_s2_dt_veto | int64 | Time to closest veto interval for alt_s2 |
n_tagged_peaks | int16 | Number of peaks tagged by NV/MV inside event |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|
corrected_areas
Description
Provided by plugin: CorrectedAreas
Data kind: events
Plugin which applies light collection efficiency maps and electron life time to the data.
Computes the cS1/cS2 for the main/alternative S1/S2 as well as the corrected life time.
- Note:
Please be aware that for both, the main and alternative S1, the area is corrected according to the xy-position of the main S2.
Columns provided
Field name | Data type | Comment |
---|---|---|
cs1 | float32 | Corrected S1 area [PE] |
cs2 | float32 | Corrected S2 area [PE] |
alt_cs1 | float32 | Corrected area of the alternate S1 [PE] |
alt_cs2 | float32 | Corrected area of the alternate S2 [PE] |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
default_reconstruction_algorithm | mlp | <OMITTED> | default reconstruction algorithm that provides (x,y) |
elife_conf | (elife, ONLINE, True) | <OMITTED> | Electron lifetime Specify as (model_type->str, model_config->str, is_nT->bool) where model_type can be "elife" or "elife_constant" and model_config can be a version. |
s1_xyz_correction_map | https://ra...3d_v0.json | (s1_xyz_map, ONLINE, True) | S1 relative (x, y, z) correction map |
s2_xy_correction_map | https://ra..._v2.2.json | (s2_xy_map, ONLINE, True) | S2 (x, y) correction map. Correct S2 position dependence manly due to bending of anode/gate-grid, PMT quantum efficiency and extraction field distribution, as well as other geometric factors. |
energy_estimates
Description
Provided by plugin: EnergyEstimates
Data kind: events
Plugin which converts cS1 and cS2 into energies (from PE to KeVee).
Columns provided
Field name | Data type | Comment |
---|---|---|
e_light | float32 | Energy in light signal [keVee] |
e_charge | float32 | Energy in charge signal [keVee] |
e_ces | float32 | Energy estimate [keVee] |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
g1 | 0.142600 | 0.1426 | S1 gain in PE / photons produced |
g2 | 31.216216 | 11.55 | S2 gain in PE / electrons produced |
lxe_w | 0.013700 | <OMITTED> | LXe work function in quanta/keV |
event_basics
Description
Provided by plugin: EventBasics
Data kind: events
Computes the basic properties of the main/alternative S1/S2 within an event.
The main S2 and alternative S2 are given by the largest two S2-Peaks within the event. By default this is also true for S1.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
n_peaks | int32 | Number of peaks in the event |
drift_time | int32 | Drift time between main S1 and S2 in ns |
event_number | int64 | Event number in this dataset |
s1_index | int32 | Main S1 peak index in event |
alt_s1_index | int32 | Alternate S1 peak index in event |
s1_time | int64 | Main S1 start time since unix epoch [ns] |
alt_s1_time | int64 | Alternate S1 start time since unix epoch [ns] |
s1_center_time | int64 | Main S1 weighted center time since unix epoch [ns] |
alt_s1_center_time | int64 | Alternate S1 weighted center time since unix epoch [ns] |
s1_endtime | int64 | Main S1 end time since unix epoch [ns] |
alt_s1_endtime | int64 | Alternate S1 end time since unix epoch [ns] |
s1_area | float32 | Main S1 area, uncorrected [PE] |
alt_s1_area | float32 | Alternate S1 area, uncorrected [PE] |
s1_n_channels | int16 | Main S1 count of contributing PMTs |
alt_s1_n_channels | int16 | Alternate S1 count of contributing PMTs |
s1_n_competing | int32 | Main S1 number of competing peaks |
alt_s1_n_competing | int32 | Alternate S1 number of competing peaks |
s1_max_pmt | int16 | Main S1 PMT number which contributes the most PE |
alt_s1_max_pmt | int16 | Alternate S1 PMT number which contributes the most PE |
s1_max_pmt_area | float32 | Main S1 area in the largest-contributing PMT (PE) |
alt_s1_max_pmt_area | float32 | Alternate S1 area in the largest-contributing PMT (PE) |
s1_range_50p_area | float32 | Main S1 width, 50% area [ns] |
alt_s1_range_50p_area | float32 | Alternate S1 width, 50% area [ns] |
s1_range_90p_area | float32 | Main S1 width, 90% area [ns] |
alt_s1_range_90p_area | float32 | Alternate S1 width, 90% area [ns] |
s1_rise_time | float32 | Main S1 time between 10% and 50% area quantiles [ns] |
alt_s1_rise_time | float32 | Alternate S1 time between 10% and 50% area quantiles [ns] |
s1_area_fraction_top | float32 | Main S1 fraction of area seen by the top PMT array |
alt_s1_area_fraction_top | float32 | Alternate S1 fraction of area seen by the top PMT array |
alt_s1_interaction_drift_time | int32 | Drift time using alternate S1 [ns] |
alt_s1_delay | int32 | Time between main and alternate S1 [ns] |
s2_index | int32 | Main S2 peak index in event |
alt_s2_index | int32 | Alternate S2 peak index in event |
s2_time | int64 | Main S2 start time since unix epoch [ns] |
alt_s2_time | int64 | Alternate S2 start time since unix epoch [ns] |
s2_center_time | int64 | Main S2 weighted center time since unix epoch [ns] |
alt_s2_center_time | int64 | Alternate S2 weighted center time since unix epoch [ns] |
s2_endtime | int64 | Main S2 end time since unix epoch [ns] |
alt_s2_endtime | int64 | Alternate S2 end time since unix epoch [ns] |
s2_area | float32 | Main S2 area, uncorrected [PE] |
alt_s2_area | float32 | Alternate S2 area, uncorrected [PE] |
s2_n_channels | int16 | Main S2 count of contributing PMTs |
alt_s2_n_channels | int16 | Alternate S2 count of contributing PMTs |
s2_n_competing | int32 | Main S2 number of competing peaks |
alt_s2_n_competing | int32 | Alternate S2 number of competing peaks |
s2_max_pmt | int16 | Main S2 PMT number which contributes the most PE |
alt_s2_max_pmt | int16 | Alternate S2 PMT number which contributes the most PE |
s2_max_pmt_area | float32 | Main S2 area in the largest-contributing PMT (PE) |
alt_s2_max_pmt_area | float32 | Alternate S2 area in the largest-contributing PMT (PE) |
s2_range_50p_area | float32 | Main S2 width, 50% area [ns] |
alt_s2_range_50p_area | float32 | Alternate S2 width, 50% area [ns] |
s2_range_90p_area | float32 | Main S2 width, 90% area [ns] |
alt_s2_range_90p_area | float32 | Alternate S2 width, 90% area [ns] |
s2_rise_time | float32 | Main S2 time between 10% and 50% area quantiles [ns] |
alt_s2_rise_time | float32 | Alternate S2 time between 10% and 50% area quantiles [ns] |
s2_area_fraction_top | float32 | Main S2 fraction of area seen by the top PMT array |
alt_s2_area_fraction_top | float32 | Alternate S2 fraction of area seen by the top PMT array |
alt_s2_interaction_drift_time | int32 | Drift time using alternate S2 [ns] |
alt_s2_delay | int32 | Time between main and alternate S2 [ns] |
s2_x | float32 | Main S2 reconstructed X position, uncorrected [cm] |
s2_y | float32 | Main S2 reconstructed Y position, uncorrected [cm] |
alt_s2_x | float32 | Alternate S2 reconstructed X position, uncorrected [cm] |
alt_s2_y | float32 | Alternate S2 reconstructed Y position, uncorrected [cm] |
area_before_main_s2 | float32 | Sum of areas before Main S2 [PE] |
large_s2_before_main_s2 | float32 | The largest S2 before the Main S2 [PE] |
s2_x_cnn | float32 | Main S2 cnn-reconstructed X position, uncorrected [cm] |
s2_y_cnn | float32 | Main S2 cnn-reconstructed Y position, uncorrected [cm] |
alt_s2_x_cnn | float32 | Alternate S2 cnn-reconstructed X position, uncorrected [cm] |
alt_s2_y_cnn | float32 | Alternate S2 cnn-reconstructed Y position, uncorrected [cm] |
s2_x_gcn | float32 | Main S2 gcn-reconstructed X position, uncorrected [cm] |
s2_y_gcn | float32 | Main S2 gcn-reconstructed Y position, uncorrected [cm] |
alt_s2_x_gcn | float32 | Alternate S2 gcn-reconstructed X position, uncorrected [cm] |
alt_s2_y_gcn | float32 | Alternate S2 gcn-reconstructed Y position, uncorrected [cm] |
s2_x_mlp | float32 | Main S2 mlp-reconstructed X position, uncorrected [cm] |
s2_y_mlp | float32 | Main S2 mlp-reconstructed Y position, uncorrected [cm] |
alt_s2_x_mlp | float32 | Alternate S2 mlp-reconstructed X position, uncorrected [cm] |
alt_s2_y_mlp | float32 | Alternate S2 mlp-reconstructed Y position, uncorrected [cm] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
allow_posts2_s1s | False | <OMITTED> | Allow S1s past the main S2 to become the main S1 and S2 |
event_s1_min_coincidence | 2 | <OMITTED> | Event level S1 min coincidence. Should be >= s1_min_coincidence in the peaklet classification |
force_main_before_alt | False | <OMITTED> | Make the alternate S1 (and likewise S2) the main S1 if occurs before the main S1. |
records
Description
Provided by plugin: PulseProcessing
Data kind: records
Split raw_records into:
(tpc) records
aqmon_records
pulse_counts
- For TPC records, apply basic processing:
Flip, baseline, and integrate the waveform
Apply software HE veto after high-energy peaks.
Find hits, apply linear filter, and zero outside hits.
pulse_counts holds some average information for the individual PMT channels for each chunk of raw_records. This includes e.g. number of recorded pulses, lone_pulses (pulses which do not overlap with any other pulse), or mean values of baseline and baseline rms channel.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int16 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
pulse_length | int32 | Length of pulse to which the record belongs (without zero-padding) |
record_i | int16 | Fragment number in the pulse |
area | int32 | Integral in ADC counts x samples |
reduction_level | uint8 | Level of data reduction applied (strax.ReductionLevel enum) |
baseline | float32 | Baseline in ADC counts. data = int(baseline) - data_orig |
baseline_rms | float32 | Baseline RMS in ADC counts. data = baseline - data_orig |
amplitude_bit_shift | int16 | Multiply data by 2**(this number). Baseline is unaffected. |
data | ('<i2', (110,)) | Waveform data in raw counts above integer part of baseline |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
allow_sloppy_chunking | False | <OMITTED> | Use a default baseline for incorrectly chunked fragments. This is a kludge for improperly converted XENON1T data. |
allow_sloppy_chunking | False | <OMITTED> | Use a default baseline for incorrectly chunked fragments. This is a kludge for improperly converted XENON1T data. |
baseline_samples | 40 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples | 40 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples_mv | 100 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples_nv | (baseline_samples_nv, ONLINE, True) | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples_nv | (baseline_samples_nv, ONLINE, True) | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples_nv | (baseline_samples_nv, ONLINE, True) | <OMITTED> | Number of samples used in baseline rms calculation |
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | frozendict mapping subdetector to (min, max) channel number. |
channel_map | <OMITTED> | (tpc, he, aqmon, aqmon_nv, tpc_blank, mv, aux_mv, mv_blank, nveto, nveto_blank) | immutabledict mapping subdetector to (min, max) channel number. |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
check_raw_record_overlaps_nv | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
coincidence_level_recorder_nv | 3 | <OMITTED> | Required coincidence level. |
daq_chunk_duration | 5000000000 | <OMITTED> | Duration of regular chunks in ns |
daq_compressor | lz4 | <OMITTED> | Algorithm used for (de)compressing the live data |
daq_input_dir | <OMITTED> | <OMITTED> | Directory where readers put data |
daq_overlap_chunk_duration | 500000000 | <OMITTED> | Duration of intermediate/overlap chunks in ns |
erase | False | <OMITTED> | Delete reader data after processing |
hev_gain_model | (disabled, None) | <OMITTED> | PMT gain model used in the software high-energy veto.Specify as (model_type, model_config) |
hev_gain_model | (disabled, None) | <OMITTED> | PMT gain model used in the software high-energy veto.Specify as (model_type, model_config) |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude_he | (hit_thresholds_he, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude_mv | (hit_thresholds_mv, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_mveto_pmts, or a number, or a string like "pmt_commissioning_initial" which means calling hitfinder_thresholds.py, or a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude_nv | (hit_thresholds_nv, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_nveto_pmts, or a number, or a string like "pmt_commissioning_initial" which means calling hitfinder_thresholds.py, or a tuple like (correction=str, version=str, nT=boolean), which means we are using cmt. |
hit_min_amplitude_nv | (hit_thresholds_nv, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_nveto_pmts, or a number, or a string like "pmt_commissioning_initial" which means calling hitfinder_thresholds.py, or a tuple like (correction=str, version=str, nT=boolean), which means we are using cmt. |
hit_min_amplitude_nv | (hit_thresholds_nv, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_nveto_pmts, or a number, or a string like "pmt_commissioning_initial" which means calling hitfinder_thresholds.py, or a tuple like (correction=str, version=str, nT=boolean), which means we are using cmt. |
max_digitizer_sampling_time | 10 | <OMITTED> | Highest interval time of the digitizer sampling times(s) used. |
max_veto_value | None | <OMITTED> | Optionally pass a HE peak that exceeds this absolute area. (if performing a hard veto, can keep a few statistics.) |
max_veto_value | None | <OMITTED> | Optionally pass a HE peak that exceeds this absolute area. (if performing a hard veto, can keep a few statistics.) |
min_samples_alt_baseline_nv | None | <OMITTED> | Min. length of pulse before alternative baselineing via pulse median is applied. |
min_samples_alt_baseline_nv | None | <OMITTED> | Min. length of pulse before alternative baselineing via pulse median is applied. |
n_he_pmts | 752 | <OMITTED> | Maximum channel of the he channels |
n_lone_records_nv | 2 | <OMITTED> | Number of lone hits to be stored per channel for diagnostic reasons. |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
pmt_pulse_filter | None | <OMITTED> | Linear filter to apply to pulses, will be normalized. |
pmt_pulse_filter | None | <OMITTED> | Linear filter to apply to pulses, will be normalized. |
pre_trigger_time_nv | 150 | <OMITTED> | Pretrigger time before coincidence window in ns. |
readout_threads | <OMITTED> | <OMITTED> | Dictionary of the readout threads where the keys specify the reader and value the number of threads |
record_length | 110 | <OMITTED> | Number of samples per raw_record |
record_length | 110 | <OMITTED> | Number of samples per raw_record |
resolving_time_recorder_nv | 600 | <OMITTED> | Resolving time of the coincidence in ns. |
run_start_time | 0 | <OMITTED> | time of start run (s since unix epoch) |
safe_break_in_pulses | 1000 | <OMITTED> | Time (ns) between pulses indicating a safe break in the datastream -- gaps of this size cannot be interior to peaklets. |
save_outside_hits | (3, 20) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
save_outside_hits | (3, 20) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
save_outside_hits_mv | (2, 5) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
save_outside_hits_nv | (3, 15) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
save_outside_hits_nv | (3, 15) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
tail_veto_duration | 3000000 | <OMITTED> | Time in ns to veto after large peaks |
tail_veto_duration | 3000000 | <OMITTED> | Time in ns to veto after large peaks |
tail_veto_pass_extend | 3 | <OMITTED> | Extend pass veto by this many samples (tail_veto_resolution!) |
tail_veto_pass_extend | 3 | <OMITTED> | Extend pass veto by this many samples (tail_veto_resolution!) |
tail_veto_pass_fraction | 0.05 | <OMITTED> | Pass veto if maximum amplitude above max * fraction |
tail_veto_pass_fraction | 0.05 | <OMITTED> | Pass veto if maximum amplitude above max * fraction |
tail_veto_resolution | 1000 | <OMITTED> | Time resolution in ns for pass-veto waveform summation |
tail_veto_resolution | 1000 | <OMITTED> | Time resolution in ns for pass-veto waveform summation |
tail_veto_threshold | 0 | <OMITTED> | Minimum peakarea in PE to trigger tail veto.Set to None, 0 or False to disable veto. |
tail_veto_threshold | 0 | <OMITTED> | Minimum peakarea in PE to trigger tail veto.Set to None, 0 or False to disable veto. |
veto_regions
Description
Provided by plugin: PulseProcessing
Data kind: veto_regions
Split raw_records into:
(tpc) records
aqmon_records
pulse_counts
- For TPC records, apply basic processing:
Flip, baseline, and integrate the waveform
Apply software HE veto after high-energy peaks.
Find hits, apply linear filter, and zero outside hits.
pulse_counts holds some average information for the individual PMT channels for each chunk of raw_records. This includes e.g. number of recorded pulses, lone_pulses (pulses which do not overlap with any other pulse), or mean values of baseline and baseline rms channel.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int16 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
area | float32 | Integral [ADC x samples] |
left | int16 | Index of sample in record in which hit starts |
right | int16 | Index of first sample in record just beyond hit (exclusive bound) |
left_integration | int16 | For lone hits, index of sample in record where integration starts |
right_integration | int16 | For lone hits, index of first sample beyond integration region |
record_i | int32 | Internal (temporary) index of fragment in which hit was found |
threshold | float32 | ADC threshold applied in order to find hits |
height | float32 | Maximum amplitude above baseline [ADC counts] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
allow_sloppy_chunking | False | <OMITTED> | Use a default baseline for incorrectly chunked fragments. This is a kludge for improperly converted XENON1T data. |
baseline_samples | 40 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
hev_gain_model | (disabled, None) | <OMITTED> | PMT gain model used in the software high-energy veto.Specify as (model_type, model_config) |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
max_veto_value | None | <OMITTED> | Optionally pass a HE peak that exceeds this absolute area. (if performing a hard veto, can keep a few statistics.) |
min_veto_area_mv | 10 | <OMITTED> | Minimal area required in pe to trigger veto. |
min_veto_area_nv | 5 | <OMITTED> | Minimal area required in pe to trigger veto. |
min_veto_area_nv | 5 | <OMITTED> | Minimal area required in pe to trigger veto. |
min_veto_channel_mv | 5 | <OMITTED> | Minimal number PMT channel contributing to the event. |
min_veto_channel_nv | 0 | <OMITTED> | Minimal number PMT channel contributing to the n/mveto_event. |
min_veto_channel_nv | 0 | <OMITTED> | Minimal number PMT channel contributing to the n/mveto_event. |
min_veto_hits_mv | 0 | <OMITTED> | Minimal number of hitlets in event to trigger veto. |
min_veto_hits_nv | 10 | <OMITTED> | Minimal number of hitlets in n/mveto_event to trigger a veto. |
min_veto_hits_nv | 10 | <OMITTED> | Minimal number of hitlets in n/mveto_event to trigger a veto. |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
pmt_pulse_filter | None | <OMITTED> | Linear filter to apply to pulses, will be normalized. |
save_outside_hits | (3, 20) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
tail_veto_duration | 3000000 | <OMITTED> | Time in ns to veto after large peaks |
tail_veto_pass_extend | 3 | <OMITTED> | Extend pass veto by this many samples (tail_veto_resolution!) |
tail_veto_pass_fraction | 0.05 | <OMITTED> | Pass veto if maximum amplitude above max * fraction |
tail_veto_resolution | 1000 | <OMITTED> | Time resolution in ns for pass-veto waveform summation |
tail_veto_threshold | 0 | <OMITTED> | Minimum peakarea in PE to trigger tail veto.Set to None, 0 or False to disable veto. |
veto_left_extension_mv | 0 | <OMITTED> | Veto time in ns left t the start of a vetoing event. |
veto_left_extension_nv | 500000 | <OMITTED> | Veto time in ns left t the start of a vetoing event. |
veto_left_extension_nv | 500000 | <OMITTED> | Veto time in ns left t the start of a vetoing event. |
veto_right_extension_mv | 1000000 | <OMITTED> | Veto time in ns right to the end of a vetoing event. |
veto_right_extension_nv | 0 | <OMITTED> | Veto time in ns right to the end of a vetoing event. |
veto_right_extension_nv | 0 | <OMITTED> | Veto time in ns right to the end of a vetoing event. |
pulse_counts
Description
Provided by plugin: PulseProcessing
Data kind: pulse_counts
Split raw_records into:
(tpc) records
aqmon_records
pulse_counts
- For TPC records, apply basic processing:
Flip, baseline, and integrate the waveform
Apply software HE veto after high-energy peaks.
Find hits, apply linear filter, and zero outside hits.
pulse_counts holds some average information for the individual PMT channels for each chunk of raw_records. This includes e.g. number of recorded pulses, lone_pulses (pulses which do not overlap with any other pulse), or mean values of baseline and baseline rms channel.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time of the chunk |
endtime | int64 | End time of the chunk |
pulse_count | ('<i8', (494,)) | Number of pulses |
lone_pulse_count | ('<i8', (494,)) | Number of lone pulses |
pulse_area | ('<i8', (494,)) | Integral of all pulses in ADC_count x samples |
lone_pulse_area | ('<i8', (494,)) | Integral of lone pulses in ADC_count x samples |
baseline_mean | ('<i2', (494,)) | Average baseline |
baseline_rms_mean | ('<f4', (494,)) | Average baseline rms |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
allow_sloppy_chunking | False | <OMITTED> | Use a default baseline for incorrectly chunked fragments. This is a kludge for improperly converted XENON1T data. |
allow_sloppy_chunking | False | <OMITTED> | Use a default baseline for incorrectly chunked fragments. This is a kludge for improperly converted XENON1T data. |
baseline_samples | 40 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
baseline_samples | 40 | <OMITTED> | Number of samples to use at the start of the pulse to determine the baseline |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
check_raw_record_overlaps | True | <OMITTED> | Crash if any of the pulses in raw_records overlap with others in the same channel |
hev_gain_model | (disabled, None) | <OMITTED> | PMT gain model used in the software high-energy veto.Specify as (model_type, model_config) |
hev_gain_model | (disabled, None) | <OMITTED> | PMT gain model used in the software high-energy veto.Specify as (model_type, model_config) |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude_he | (hit_thresholds_he, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
max_veto_value | None | <OMITTED> | Optionally pass a HE peak that exceeds this absolute area. (if performing a hard veto, can keep a few statistics.) |
max_veto_value | None | <OMITTED> | Optionally pass a HE peak that exceeds this absolute area. (if performing a hard veto, can keep a few statistics.) |
n_he_pmts | 752 | <OMITTED> | Maximum channel of the he channels |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
pmt_pulse_filter | None | <OMITTED> | Linear filter to apply to pulses, will be normalized. |
pmt_pulse_filter | None | <OMITTED> | Linear filter to apply to pulses, will be normalized. |
record_length | 110 | <OMITTED> | Number of samples per raw_record |
save_outside_hits | (3, 20) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
save_outside_hits | (3, 20) | <OMITTED> | Save (left, right) samples besides hits; cut the rest |
tail_veto_duration | 3000000 | <OMITTED> | Time in ns to veto after large peaks |
tail_veto_duration | 3000000 | <OMITTED> | Time in ns to veto after large peaks |
tail_veto_pass_extend | 3 | <OMITTED> | Extend pass veto by this many samples (tail_veto_resolution!) |
tail_veto_pass_extend | 3 | <OMITTED> | Extend pass veto by this many samples (tail_veto_resolution!) |
tail_veto_pass_fraction | 0.05 | <OMITTED> | Pass veto if maximum amplitude above max * fraction |
tail_veto_pass_fraction | 0.05 | <OMITTED> | Pass veto if maximum amplitude above max * fraction |
tail_veto_resolution | 1000 | <OMITTED> | Time resolution in ns for pass-veto waveform summation |
tail_veto_resolution | 1000 | <OMITTED> | Time resolution in ns for pass-veto waveform summation |
tail_veto_threshold | 0 | <OMITTED> | Minimum peakarea in PE to trigger tail veto.Set to None, 0 or False to disable veto. |
tail_veto_threshold | 0 | <OMITTED> | Minimum peakarea in PE to trigger tail veto.Set to None, 0 or False to disable veto. |
merged_s2s
Description
Provided by plugin: MergedS2s
Data kind: merged_s2s
Merge together peaklets if peak finding favours that they would form a single peak instead.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int32 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
type | int8 | Classification of the peak(let) |
area | float32 | Integral across channels [PE] |
area_per_channel | ('<f4', (494,)) | Integral per channel [PE] |
n_hits | int32 | Number of hits contributing at least one sample to the peak |
data | ('<f4', (200,)) | Waveform data in PE/sample (not PE/ns!) |
width | ('<f4', (11,)) | Peak widths in range of central area fraction [ns] |
area_decile_from_midpoint | ('<f4', (11,)) | Peak widths: time between nth and 5th area decile [ns] |
saturated_channel | ('i1', (494,)) | Does the channel reach ADC saturation? |
n_saturated_channels | int16 | Total number of saturated channels |
tight_coincidence | int16 | Channel within tight range of mean |
max_gap | int32 | Largest gap between hits inside peak [ns] |
max_goodness_of_split | float32 | Maximum interior goodness of split |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
gain_model | <OMITTED> | (to_pe_model, ONLINE, True) | PMT gain model. Specify as (str(model_config), str(version), nT-->boolean |
gain_model | <OMITTED> | (to_pe_model, ONLINE, True) | PMT gain model. Specify as (str(model_config), str(version), nT-->boolean |
merge_without_s1 | True | <OMITTED> | If true, S1s will be igored during the merging. It's now possible for a S1 to be inside a S2 post merging |
merge_without_s1 | True | <OMITTED> | If true, S1s will be igored during the merging. It's now possible for a S1 to be inside a S2 post merging |
s2_merge_gap_thresholds | ((1.7, 26500.0), (4.0, 2600.0), (5.0, 0.0)) | <OMITTED> | Points to define maximum separation between peaklets to allow merging [ns] depending on log10 area of the merged peak\nwhere the gap size of the first point is the maximum gap to allow mergingand the area of the last point is the maximum area to allow merging. The format is ((log10(area), max_gap), (..., ...), (..., ...)) |
s2_merge_gap_thresholds | ((1.7, 26500.0), (4.0, 2600.0), (5.0, 0.0)) | <OMITTED> | Points to define maximum separation between peaklets to allow merging [ns] depending on log10 area of the merged peak\nwhere the gap size of the first point is the maximum gap to allow mergingand the area of the last point is the maximum area to allow merging. The format is ((log10(area), max_gap), (..., ...), (..., ...)) |
s2_merge_max_duration | 50000 | <OMITTED> | Do not merge peaklets at all if the result would be a peak longer than this [ns] |
s2_merge_max_duration | 50000 | <OMITTED> | Do not merge peaklets at all if the result would be a peak longer than this [ns] |
peaklet_classification
Description
Provided by plugin: PeakletClassification
Data kind: peaklets
Classify peaklets as unknown, S1, or S2.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int32 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
type | int8 | Classification of the peak(let) |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
s1_max_rise_time | 110 | <OMITTED> | Maximum S1 rise time for < 100 PE [ns] |
s1_max_rise_time | 110 | <OMITTED> | Maximum S1 rise time for < 100 PE [ns] |
s1_max_rise_time_post100 | 200 | <OMITTED> | Maximum S1 rise time for > 100 PE [ns] |
s1_max_rise_time_post100 | 200 | <OMITTED> | Maximum S1 rise time for > 100 PE [ns] |
s1_min_coincidence | 2 | <OMITTED> | Minimum tight coincidence necessary to make an S1 |
s1_min_coincidence | 2 | <OMITTED> | Minimum tight coincidence necessary to make an S1 |
s2_min_pmts | 4 | <OMITTED> | Minimum number of PMTs contributing to an S2 |
s2_min_pmts | 4 | <OMITTED> | Minimum number of PMTs contributing to an S2 |
peaklets
Description
Provided by plugin: Peaklets
Data kind: peaklets
- Split records into:
-peaklets -lone_hits
Peaklets are very aggressively split peaks such that we are able to find S1-S2s even if they are close to each other. (S2) Peaks that are split into too many peaklets will be merged later on.
- To get Peaklets from records apply/do:
Hit finding
Peak finding
Peak splitting using the natural breaks algorithm
Compute the digital sum waveform
Lone hits are all hits which are outside of any peak. The area of lone_hits includes the left and right hit extension, except the extension overlaps with any peaks or other hits.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int32 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
type | int8 | Classification of the peak(let) |
area | float32 | Integral across channels [PE] |
area_per_channel | ('<f4', (494,)) | Integral per channel [PE] |
n_hits | int32 | Number of hits contributing at least one sample to the peak |
data | ('<f4', (200,)) | Waveform data in PE/sample (not PE/ns!) |
width | ('<f4', (11,)) | Peak widths in range of central area fraction [ns] |
area_decile_from_midpoint | ('<f4', (11,)) | Peak widths: time between nth and 5th area decile [ns] |
saturated_channel | ('i1', (494,)) | Does the channel reach ADC saturation? |
n_saturated_channels | int16 | Total number of saturated channels |
tight_coincidence | int16 | Channel within tight range of mean |
max_gap | int32 | Largest gap between hits inside peak [ns] |
max_goodness_of_split | float32 | Maximum interior goodness of split |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
diagnose_sorting | False | <OMITTED> | Enable runtime checks for sorting and disjointness |
diagnose_sorting | False | <OMITTED> | Enable runtime checks for sorting and disjointness |
gain_model | <OMITTED> | (to_pe_model, ONLINE, True) | PMT gain model. Specify as (str(model_config), str(version), nT-->boolean |
gain_model | <OMITTED> | (to_pe_model, ONLINE, True) | PMT gain model. Specify as (str(model_config), str(version), nT-->boolean |
he_channel_offset | 500 | <OMITTED> | Minimum channel number of the he channels |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
hit_min_amplitude_he | (hit_thresholds_he, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
le_to_he_amplification | 20 | <OMITTED> | Difference in amplification between low energy and high energy channels |
n_he_pmts | 752 | <OMITTED> | Maximum channel of the he channels |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
peak_left_extension | 30 | <OMITTED> | Include this many ns left of hits in peaks |
peak_left_extension | 30 | <OMITTED> | Include this many ns left of hits in peaks |
peak_min_pmts | 2 | <OMITTED> | Minimum number of contributing PMTs needed to define a peak |
peak_min_pmts | 2 | <OMITTED> | Minimum number of contributing PMTs needed to define a peak |
peak_min_pmts_he | 2 | <OMITTED> | Minimum number of contributing PMTs needed to define a peak |
peak_right_extension | 200 | <OMITTED> | Include this many ns right of hits in peaks |
peak_right_extension | 200 | <OMITTED> | Include this many ns right of hits in peaks |
peak_split_filter_wing_width | 70 | <OMITTED> | Wing width of moving average filter for low-split natural breaks |
peak_split_filter_wing_width | 70 | <OMITTED> | Wing width of moving average filter for low-split natural breaks |
peak_split_gof_threshold | (None, ((0.5, 1.0), (6.0, 0.4)), ((2.5, 1.0), (5.625, 0.4))) | <OMITTED> | Natural breaks goodness of fit/split threshold to split a peak. Specify as tuples of (log10(area), threshold). |
peak_split_gof_threshold | (None, ((0.5, 1.0), (6.0, 0.4)), ((2.5, 1.0), (5.625, 0.4))) | <OMITTED> | Natural breaks goodness of fit/split threshold to split a peak. Specify as tuples of (log10(area), threshold). |
peak_split_iterations | 20 | <OMITTED> | Maximum number of recursive peak splits to do. |
peak_split_iterations | 20 | <OMITTED> | Maximum number of recursive peak splits to do. |
peak_split_min_area | 40 | <OMITTED> | Minimum area to evaluate natural breaks criterion. Smaller peaks are not split. |
peak_split_min_area | 40 | <OMITTED> | Minimum area to evaluate natural breaks criterion. Smaller peaks are not split. |
peaklet_gap_threshold | 700 | <OMITTED> | No hits for this many ns triggers a new peak |
peaklet_gap_threshold | 700 | <OMITTED> | No hits for this many ns triggers a new peak |
peaklet_max_duration | 10000000 | <OMITTED> | Maximum duration [ns] of a peaklet |
peaklet_max_duration | 10000000 | <OMITTED> | Maximum duration [ns] of a peaklet |
saturation_correction_on | True | <OMITTED> | On off switch for saturation correction |
saturation_correction_on | True | <OMITTED> | On off switch for saturation correction |
saturation_correction_on_he | False | <OMITTED> | On off switch for saturation correction for High Energy channels |
saturation_min_reference_length | 20 | <OMITTED> | Minimum number of reference sample used to correct saturated samples |
saturation_min_reference_length | 20 | <OMITTED> | Minimum number of reference sample used to correct saturated samples |
saturation_reference_length | 100 | <OMITTED> | Maximum number of reference sample used to correct saturated samples |
saturation_reference_length | 100 | <OMITTED> | Maximum number of reference sample used to correct saturated samples |
tight_coincidence_window_left | 50 | <OMITTED> | Time range left of peak center to call a hit a tight coincidence (ns) |
tight_coincidence_window_left | 50 | <OMITTED> | Time range left of peak center to call a hit a tight coincidence (ns) |
tight_coincidence_window_right | 50 | <OMITTED> | Time range right of peak center to call a hit a tight coincidence (ns) |
tight_coincidence_window_right | 50 | <OMITTED> | Time range right of peak center to call a hit a tight coincidence (ns) |
lone_hits
Description
Provided by plugin: Peaklets
Data kind: lone_hits
- Split records into:
-peaklets -lone_hits
Peaklets are very aggressively split peaks such that we are able to find S1-S2s even if they are close to each other. (S2) Peaks that are split into too many peaklets will be merged later on.
- To get Peaklets from records apply/do:
Hit finding
Peak finding
Peak splitting using the natural breaks algorithm
Compute the digital sum waveform
Lone hits are all hits which are outside of any peak. The area of lone_hits includes the left and right hit extension, except the extension overlaps with any peaks or other hits.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int16 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
area | float32 | Integral [ADC x samples] |
left | int16 | Index of sample in record in which hit starts |
right | int16 | Index of first sample in record just beyond hit (exclusive bound) |
left_integration | int16 | For lone hits, index of sample in record where integration starts |
right_integration | int16 | For lone hits, index of first sample beyond integration region |
record_i | int32 | Internal (temporary) index of fragment in which hit was found |
threshold | float32 | ADC threshold applied in order to find hits |
height | float32 | Maximum amplitude above baseline [ADC counts] |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
diagnose_sorting | False | <OMITTED> | Enable runtime checks for sorting and disjointness |
gain_model | <OMITTED> | (to_pe_model, ONLINE, True) | PMT gain model. Specify as (str(model_config), str(version), nT-->boolean |
hit_min_amplitude | (hit_thresholds_tpc, ONLINE, True) | <OMITTED> | Minimum hit amplitude in ADC counts above baseline. Specify as a tuple of length n_tpc_pmts, or a number,or a string like "pmt_commissioning_initial" which means callinghitfinder_thresholds.pyor a tuple like (correction=str, version=str, nT=boolean),which means we are using cmt. |
n_tpc_pmts | <OMITTED> | 494 | Number of TPC PMTs |
peak_left_extension | 30 | <OMITTED> | Include this many ns left of hits in peaks |
peak_min_pmts | 2 | <OMITTED> | Minimum number of contributing PMTs needed to define a peak |
peak_right_extension | 200 | <OMITTED> | Include this many ns right of hits in peaks |
peak_split_filter_wing_width | 70 | <OMITTED> | Wing width of moving average filter for low-split natural breaks |
peak_split_gof_threshold | (None, ((0.5, 1.0), (6.0, 0.4)), ((2.5, 1.0), (5.625, 0.4))) | <OMITTED> | Natural breaks goodness of fit/split threshold to split a peak. Specify as tuples of (log10(area), threshold). |
peak_split_iterations | 20 | <OMITTED> | Maximum number of recursive peak splits to do. |
peak_split_min_area | 40 | <OMITTED> | Minimum area to evaluate natural breaks criterion. Smaller peaks are not split. |
peaklet_gap_threshold | 700 | <OMITTED> | No hits for this many ns triggers a new peak |
peaklet_max_duration | 10000000 | <OMITTED> | Maximum duration [ns] of a peaklet |
saturation_correction_on | True | <OMITTED> | On off switch for saturation correction |
saturation_min_reference_length | 20 | <OMITTED> | Minimum number of reference sample used to correct saturated samples |
saturation_reference_length | 100 | <OMITTED> | Maximum number of reference sample used to correct saturated samples |
tight_coincidence_window_left | 50 | <OMITTED> | Time range left of peak center to call a hit a tight coincidence (ns) |
tight_coincidence_window_right | 50 | <OMITTED> | Time range right of peak center to call a hit a tight coincidence (ns) |
peaks
Description
Provided by plugin: Peaks
Data kind: peaks
Merge peaklets and merged S2s such that we obtain our peaks (replacing all peaklets that were later re-merged as S2s). As this step is computationally trivial, never save this plugin.
Columns provided
Field name | Data type | Comment |
---|---|---|
time | int64 | Start time since unix epoch [ns] |
length | int32 | Length of the interval in samples |
dt | int32 | Width of one sample [ns] |
channel | int16 | Channel/PMT number |
type | int8 | Classification of the peak(let) |
area | float32 | Integral across channels [PE] |
area_per_channel | ('<f4', (494,)) | Integral per channel [PE] |
n_hits | int32 | Number of hits contributing at least one sample to the peak |
data | ('<f4', (200,)) | Waveform data in PE/sample (not PE/ns!) |
width | ('<f4', (11,)) | Peak widths in range of central area fraction [ns] |
area_decile_from_midpoint | ('<f4', (11,)) | Peak widths: time between nth and 5th area decile [ns] |
saturated_channel | ('i1', (494,)) | Does the channel reach ADC saturation? |
n_saturated_channels | int16 | Total number of saturated channels |
tight_coincidence | int16 | Channel within tight range of mean |
max_gap | int32 | Largest gap between hits inside peak [ns] |
max_goodness_of_split | float32 | Maximum interior goodness of split |
Dependencies
Configuration options
These are all options that affect this data type. This also includes options taken by dependencies of this datatype, because changing any of those options affect this data indirectly.
option | default | current | help |
---|---|---|---|
diagnose_sorting | False | <OMITTED> | Enable runtime checks for sorting and disjointness |
diagnose_sorting | False | <OMITTED> | Enable runtime checks for sorting and disjointness |
merge_without_s1 | True | <OMITTED> | If true, S1s will be igored during the merging. It's now possible for a S1 to be inside a S2 post merging |
merge_without_s1 | True | <OMITTED> | If true, S1s will be igored during the merging. It's now possible for a S1 to be inside a S2 post merging |
event_info_double
Description
Provided by plugin: EventInfoDouble
Data kind: events
- Alternate version of event_info for Kr and other double scatter
analyses:
Uses a different naming convention: s1 -> s1_a, alt_s1 -> s1_b, and similarly for s2s;
Adds s1_b_distinct_channels, which can be tricky to compute (since it requires going back to peaks)
Columns provided
Field name | Data type | Comment |
---|---|---|
cs1_a | float32 | Corrected S1 area [PE] |
cs2_a | float32 | Corrected S2 area [PE] |
cs1_b | float32 | Corrected area of the alternate S1 [PE] |
cs2_b | float32 | Corrected area of the alternate S2 [PE] |
time | int64 | Start time since unix epoch [ns] |
endtime | int64 | Exclusive end time since unix epoch [ns] |
e_light | float32 | Energy in light signal [keVee] |
e_charge | float32 | Energy in charge signal [keVee] |
e_ces | float32 | Energy estimate [keVee] |
n_peaks | int32 | Number of peaks in the event |
drift_time | int32 | Drift time between main S1 and S2 in ns |
event_number | int64 | Event number in this dataset |
s1_a_index | int32 | Main S1 peak index in event |
s1_b_index | int32 | Alternate S1 peak index in event |
s1_a_time | int64 | Main S1 start time since unix epoch [ns] |
s1_b_time | int64 | Alternate S1 start time since unix epoch [ns] |
s1_a_center_time | int64 | Main S1 weighted center time since unix epoch [ns] |
s1_b_center_time | int64 | Alternate S1 weighted center time since unix epoch [ns] |
s1_a_endtime | int64 | Main S1 end time since unix epoch [ns] |
s1_b_endtime | int64 | Alternate S1 end time since unix epoch [ns] |
s1_a_area | float32 | Main S1 area, uncorrected [PE] |
s1_b_area | float32 | Alternate S1 area, uncorrected [PE] |
s1_a_n_channels | int16 | Main S1 count of contributing PMTs |
s1_b_n_channels | int16 | Alternate S1 count of contributing PMTs |
s1_a_n_competing | int32 | Main S1 number of competing peaks |
s1_b_n_competing | int32 | Alternate S1 number of competing peaks |
s1_a_max_pmt | int16 | Main S1 PMT number which contributes the most PE |
s1_b_max_pmt | int16 | Alternate S1 PMT number which contributes the most PE |
s1_a_max_pmt_area | float32 | Main S1 area in the largest-contributing PMT (PE) |
s1_b_max_pmt_area | float32 | Alternate S1 area in the largest-contributing PMT (PE) |
s1_a_range_50p_area | float32 | Main S1 width, 50% area [ns] |
s1_b_range_50p_area | float32 | Alternate S1 width, 50% area [ns] |
s1_a_range_90p_area | float32 | Main S1 width, 90% area [ns] |
s1_b_range_90p_area | float32 | Alternate S1 width, 90% area [ns] |
s1_a_rise_time | float32 | Main S1 time between 10% and 50% area quantiles [ns] |
s1_b_rise_time | float32 | Alternate S1 time between 10% and 50% area quantiles [ns] |
s1_a_area_fraction_top | float32 | Main S1 fraction of area seen by the top PMT array |
s1_b_area_fraction_top | float32 | Alternate S1 fraction of area seen by the top PMT array |
s1_b_interaction_drift_time | int32 | Drift time using alternate S1 [ns] |
ds_s1_dt | int32 | Time between main and alternate S1 [ns] |
s2_a_index | int32 | Main S2 peak index in event |
s2_b_index | int32 | Alternate S2 peak index in event |
s2_a_time | int64 | Main S2 start time since unix epoch [ns] |
s2_b_time | int64 | Alternate S2 start time since unix epoch [ns] |
s2_a_center_time | int64 | Main S2 weighted center time since unix epoch [ns] |
s2_b_center_time | int64 | Alternate S2 weighted center time since unix epoch [ns] |
s2_a_endtime | int64 | Main S2 end time since unix epoch [ns] |
s2_b_endtime | int64 | Alternate S2 end time since unix epoch [ns] |
s2_a_area | float32 | Main S2 area, uncorrected [PE] |
s2_b_area | float32 | Alternate S2 area, uncorrected [PE] |