Straxen datastructure for high energy channels =========================================================== This page is an autogenerated reference for all the plugins in straxen's `xenonnt` context. The figures presented are dependency diagrams, meaning that an arrow stemming from a node points to a node that the stem depends on (i.e. "A depends on B" is equivalent to "A ---> B"). Colors indicate data kinds. To load tables with different data kinds, you currently need more than one `get_df` (or `get_array`) commands. peak_basics_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PeakBasicsHighEnergy `_ Data kind: peaks_he High energy channels: attenuated signals of the top PMT-array Compute the basic peak-properties, thereby dropping structured arrays. NB: This plugin can therefore be loaded as a pandas DataFrame. Columns provided ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
Field name Data type Comment
time int64 Start time since unix epoch [ns]
endtime int64 Exclusive end time since unix epoch [ns]
center_time int64 Weighted average center time of the peak [ns]
area float32 Peak integral in PE
n_hits int32 Number of hits contributing at least one sample to the peak
n_channels int16 Number of PMTs contributing to the peak
top_n_channels int16 Number of top 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)
n_saturated_channels int16 Total number of saturated channels
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
length int32 Length of the peak waveform in samples
dt int16 Time resolution of the peak waveform in ns
median_time float32 Weighted relative median time of the peak [ns]
rise_time float32 Time between 10% and 50% area quantiles [ns]
tight_coincidence int16 Number of PMTs with hits within tight range of mean
type int8 Classification of the peak(let)
merged bool Is merged from peaklets
max_diff int32 Largest time difference between apexes of hits inside peak [ns]
min_diff int32 Smallest time difference between apexes of hits inside peak [ns]
first_channel int16 First channel/PMT number inside peak (sorted by apexes of hits)
last_channel int16 Last channel/PMT number inside peak (sorted by apexes of hits)
Dependencies ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 peak_basics_he peak_basics_he peaks_he peaks_he peak_basics_he->peaks_he peaklets_he peaklets_he peaks_he->peaklets_he peaklet_classification_he peaklet_classification_he peaks_he->peaklet_classification_he merged_s2s_he merged_s2s_he peaks_he->merged_s2s_he records_he records_he peaklets_he->records_he peaklet_classification_he->peaklets_he merged_s2s_he->peaklets_he merged_s2s_he->peaklet_classification_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
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).
n_top_pmts 253.0 253 Number of top PMTs
------------------ peaks_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PeaksHighEnergy `_ Data kind: peaks_he High energy channels: attenuated signals of the top PMT-array 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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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_fraction_top float32 Fraction of area seen by the top array
area_per_channel ('<f4', (752,)) 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!)
data_start ('<f4', (200,)) Waveform data in PE/sample (not PE/ns!), starting not downsampled samples
center_time int64 Weighted average center time of the peak [ns]
median_time float32 Weighted relative median time of the peak [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', (752,)) 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
max_diff int32 Largest time difference between apexes of hits inside peak [ns]
min_diff int32 Smallest time difference between apexes of hits inside peak [ns]
first_channel int16 First channel/PMT number inside peak (sorted by apexes of hits)
last_channel int16 Last channel/PMT number inside peak (sorted by apexes of hits)
merged bool Peaklet is merging input or peak is merged from peaklets
Dependencies ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 peaks_he peaks_he peaklets_he peaklets_he peaks_he->peaklets_he peaklet_classification_he peaklet_classification_he peaks_he->peaklet_classification_he merged_s2s_he merged_s2s_he peaks_he->merged_s2s_he records_he records_he peaklets_he->records_he peaklet_classification_he->peaklets_he merged_s2s_he->peaklets_he merged_s2s_he->peaklet_classification_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
option default current help
diagnose_sorting False <OMITTED> Enable runtime checks for sorting and disjointness
merge_s0 True <OMITTED> Merge S0s into merged S2s
------------------ merged_s2s_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `MergedS2sHighEnergy `_ Data kind: merged_s2s_he High energy channels: attenuated signals of the top PMT-array Merge together peaklets if peak finding favours that they would form a single peak instead. Technically, the S2 merging algorithm merges S2 peaklets into S2 peaks. By introducing more information about the waveform and (x, y) distribution of potential groups of peaklets, the algorithm removes PI and DE population from S2 peaks. Note: Types FAR_XYPOS_S2_TYPE (20) and WIDE_XYPOS_S2_TYPE (22) are still S2s, but they do not participate in the event building. The algorithm merges S2 peaklets when they are close in (t, x, y). But if a group of peaklets is dense in time but sparse in (x, y), the following steps are conducted: 1. Merge these peaklets that are dense in (x, y). 2. Assign the peaklets that are dense in time but not dense in (x, y) by type 20, they are usually PI or DE. 3. If the sum of nearby type 20 is large compared to the merged peak, assign the merged peak as type 22, because it is usually PI. Reference: xenon:xenonnt:analysis:s2_merging_time_position xenon:xenonnt:analysis:sr2_peak_types Columns provided ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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_fraction_top float32 Fraction of area seen by the top array
area_per_channel ('<f4', (752,)) 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!)
data_start ('<f4', (200,)) Waveform data in PE/sample (not PE/ns!), starting not downsampled samples
center_time int64 Weighted average center time of the peak [ns]
median_time float32 Weighted relative median time of the peak [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', (752,)) 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
max_diff int32 Largest time difference between apexes of hits inside peak [ns]
min_diff int32 Smallest time difference between apexes of hits inside peak [ns]
first_channel int16 First channel/PMT number inside peak (sorted by apexes of hits)
last_channel int16 Last channel/PMT number inside peak (sorted by apexes of hits)
Dependencies ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 merged_s2s_he merged_s2s_he peaklets_he peaklets_he merged_s2s_he->peaklets_he peaklet_classification_he peaklet_classification_he merged_s2s_he->peaklet_classification_he records_he records_he peaklets_he->records_he peaklet_classification_he->peaklets_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
option default current help
default_reconstruction_algorithm cnf <OMITTED> default reconstruction algorithm that provides (x,y)
disable_progress_bar True <OMITTED> Whether to disable the progress bar
gain_model <OMITTED> list-to-array://xedocs://pmt_area_to_pes?as_list=True&sort=pmt&detector=tpc&run_id=plugin.run_id&version=ONLINE&attr=value PMT gain model. Specify as (str(model_config), str(version), nT-->boolean
maxexp 10 <OMITTED> Maximum exponent for the posterior to keep numerical stability
merge_lone_hits True <OMITTED> Merge lone hits into merged S2s
merge_s0 True <OMITTED> Merge S0s into merged S2s
merged_s2s_get_window_size_factor 5 <OMITTED> Factor of the window size for the merged_s2s plugin
n_top_pmts <OMITTED> 253 Number of top TPC array PMTs
n_tpc_pmts <OMITTED> 494 Number of TPC PMTs
normal_max_sigma 7 <OMITTED> Maximum sigma for the normal distribution CDF panel
normal_n_bins 501 <OMITTED> Number of bins for the normal distribution CDF panel
p_value_prioritized False <OMITTED> Whether to prioritize p-value over area when testing the proposal
poisson_max_mu 25 <OMITTED> When to switch from Poisson to normal distribution
poisson_survival_ratio 0.0001 <OMITTED> Survival ratio for Poisson distribution. The PMF smaller than this will be ignored.
rm_sparse_xy True <OMITTED> Remove peaklets that are too far away in (x, y)
rough_max_sigma 20000.0 <OMITTED> Maximum sigma for the merged peaks
rough_min_sigma 100.0 <OMITTED> Minimum sigma for the merged peaks
rough_mu_bins 10 <OMITTED> Number of bins for mu of merged peaks
rough_seg 30 <OMITTED> Rough single electron gain [PE/e]
rough_sigma_bins 10 <OMITTED> Number of bins for sigma of merged peaks
s2_merge_dr_thresholds ((1.51, 14.0), (1.84, 18.3), (2.18, 19.7), (2.51, 12.4), (2.84, 5.75)) <OMITTED> Points to define maximum weighted mean deviation of the peaklets from the main cluster [cm]\nThe format is ((log10(area_top), dr), (..., ...), (..., ...))
s2_merge_gap_thresholds ((1.84, 28400.0), (2.18, 24000.0), (2.51, 19600.0), (2.84, 18000.0), (3.18, 16800.0), (3.51, 18600.0), (3.84, 19800.0), (4.18, 16600.0), (4.51, 12100.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 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_p_thresholds ((4.18, 0.000989), (4.51, 0.00715), (4.84, 0.16)) <OMITTED> Points to define minimum p-value of merging proposal depending on log10 area of the merged peak\nThe format is ((log10(area), p-value), (..., ...), (..., ...))
s2_merge_unmerged_thresholds (1, 49.5, 0.01) <OMITTED> Max (number, fraction of unmerged, total area of unmerged) of type 20 peaklets inside a peak. The number of type 20 peaklets should not be larger than the number threshold. The area of type 20 peaklets should not be larger than the both area thresholds. The fraction threshold is important when S2 is large, while the total area threshold is important when S2 is small.
sigma_seg 6.5 <OMITTED> Standard deviation of the single electron gain [PE/e]
use_bayesian_merging True <OMITTED> Use Bayesian merging
use_uncertainty_weights True <OMITTED> Use uncertainty from probabilistic posrec to derive weights
------------------ peaklet_classification_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PeakletClassificationHighEnergy `_ Data kind: peaklets_he High energy channels: attenuated signals of the top PMT-array Classify peaklets as unknown, S1, or S2. Columns provided ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 peaklet_classification_he peaklet_classification_he peaklets_he peaklets_he peaklet_classification_he->peaklets_he records_he records_he peaklets_he->records_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
option default current help
s1_flatten_threshold_aft (0.6, 100) <OMITTED> Threshold for AFT, above which we use a flatted boundary for rise timeSpecified values: (AFT boundary, constant rise time).
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_risetime_aft_parameters (-1, 2.6) <OMITTED> Slope and offset in exponential of emperical boundary in the rise time-AFT plot. Specified as (slope, offset)
s1_risetime_area_parameters (50, 80, 12) <OMITTED> norm, const, tau in the empirical boundary in the risetime-area plot
s2_min_pmts 4 <OMITTED> Minimum number of PMTs contributing to an S2
------------------ peaklets_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PeakletsHighEnergy `_ Data kind: peaklets_he High energy channels: attenuated signals of the top PMT-array 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: 1. Hit finding 2. Peak finding 3. Peak splitting using the natural breaks algorithm 4. 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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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_fraction_top float32 Fraction of area seen by the top array
area_per_channel ('<f4', (752,)) 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!)
data_start ('<f4', (200,)) Waveform data in PE/sample (not PE/ns!), starting not downsampled samples
center_time int64 Weighted average center time of the peak [ns]
median_time float32 Weighted relative median time of the peak [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', (752,)) 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
max_diff int32 Largest time difference between apexes of hits inside peak [ns]
min_diff int32 Smallest time difference between apexes of hits inside peak [ns]
first_channel int16 First channel/PMT number inside peak (sorted by apexes of hits)
last_channel int16 Last channel/PMT number inside peak (sorted by apexes of hits)
Dependencies ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 peaklets_he peaklets_he records_he records_he peaklets_he->records_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
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.
diagnose_sorting False <OMITTED> Enable runtime checks for sorting and disjointness
gain_model <OMITTED> list-to-array://xedocs://pmt_area_to_pes?as_list=True&sort=pmt&detector=tpc&run_id=plugin.run_id&version=ONLINE&attr=value PMT gain model. Specify as URL or explicit value
he_channel_offset 500 <OMITTED> Minimum channel number of the he channels
hit_min_amplitude list-to-ar...ion=ONLINE <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.py
hit_min_amplitude_he list-to-ar...ion=ONLINE <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.py
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_top_pmts <OMITTED> 253 Number of top TPC array 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_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_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.0 <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_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_reference_length 100 <OMITTED> Maximum number of reference sample used to correct saturated samples
store_data_start True <OMITTED> Save the start time of the waveform with minimum dt
store_data_top True <OMITTED> Save the sum waveform of the top array separately
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)
------------------ records_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PulseProcessingHighEnergy `_ Data kind: records_he High energy channels: attenuated signals of the top PMT-array Split raw_records into: - (tpc) records - aqmon_records - pulse_counts For TPC records, apply basic processing: 1. Flip, baseline, and integrate the waveform 2. Apply software HE veto after high-energy peaks. 3. 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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 records_he records_he raw_records_he raw_records_he records_he->raw_records_he 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. .. raw:: html
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
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
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
hev_gain_model None <OMITTED> PMT gain model used in the software high-energy veto.
hit_min_amplitude list-to-ar...ion=ONLINE <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.py
hit_min_amplitude_he list-to-ar...ion=ONLINE <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.py
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.)
n_he_pmts 752 <OMITTED> Maximum channel of the he channels
n_tpc_pmts <OMITTED> 494 Number of TPC PMTs
pmt_pulse_filter None <OMITTED> Linear filter to apply to pulses, will be normalized.
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
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
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.
------------------ pulse_counts_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `PulseProcessingHighEnergy `_ Data kind: pulse_counts_he High energy channels: attenuated signals of the top PMT-array Split raw_records into: - (tpc) records - aqmon_records - pulse_counts For TPC records, apply basic processing: 1. Flip, baseline, and integrate the waveform 2. Apply software HE veto after high-energy peaks. 3. 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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
Field name Data type Comment
time int64 Start time of the chunk
endtime int64 End time of the chunk
pulse_count ('<i8', (752,)) Number of pulses
lone_pulse_count ('<i8', (752,)) Number of lone pulses
pulse_area ('<i8', (752,)) Integral of all pulses in ADC_count x samples
lone_pulse_area ('<i8', (752,)) Integral of lone pulses in ADC_count x samples
baseline_mean ('<i2', (752,)) Average baseline
baseline_rms_mean ('<f4', (752,)) Average baseline rms
Dependencies ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 pulse_counts_he pulse_counts_he raw_records_he raw_records_he pulse_counts_he->raw_records_he 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. .. raw:: html
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 None <OMITTED> PMT gain model used in the software high-energy veto.
hit_min_amplitude list-to-ar...ion=ONLINE <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.py
hit_min_amplitude_he list-to-ar...ion=ONLINE <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.py
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
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
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.
------------------ raw_records_he -------------------------------------------------------- Description ~~~~~~~~~~~~~~~~~~~~~~ Provided by plugin: `DAQReader `_ Data kind: raw_records_he 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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html
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 ~~~~~~~~~~~~~~~~~~~~~~ .. raw:: html %3 raw_records_he raw_records_he 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. .. raw:: html
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
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.
------------------