NuRadioReco.modules.trigger.highLowThreshold module
- NuRadioReco.modules.trigger.highLowThreshold.get_high_low_triggers(trace, high_threshold, low_threshold, time_coincidence=5, dt=1)[source]
calculates a high low trigger in a time coincidence window
- Parameters:
- trace: array of floats
the signal trace
- high_threshold: float
the high threshold
- low_threshold: float
the low threshold
- time_coincidence: float
the time coincidence window between a high + low
- dt: float
the width of a time bin (inverse of sampling rate)
- Returns:
- triggered bins: array of bools
the bins where the trigger condition is satisfied
- NuRadioReco.modules.trigger.highLowThreshold.get_majority_logic(tts, number_of_coincidences=2, time_coincidence=32, dt=1)[source]
calculates a majority logic trigger
- Parameters:
- tts: array/list of array of bools
an array of bools that indicate a single channel trigger per channel
- number_of_coincidences: int (default: 2)
the number of coincidences between channels
- time_coincidence: float
the time coincidence window between channels
- dt: float
the width of a time bin (inverse of sampling rate)
- Returns:
- triggerd: bool
returns True if majority logic is fulfilled
- triggerd_bins: array of ints
the bins that fulfilled the trigger
- triggered_times: array of floats
the trigger times
- class NuRadioReco.modules.trigger.highLowThreshold.triggerSimulator[source]
Bases:
object
Calculates the trigger of an event. Uses the ARIANNA trigger logic, that a single antenna needs to cross a high and a low threshold value, and then coincidences between antennas can be required.
Methods
run
(evt, station, det[, use_digitization, ...])simulate ARIANNA trigger logic
begin
end
- run(evt, station, det, use_digitization=False, threshold_high=0.06, threshold_low=-0.06, high_low_window=5, coinc_window=200, number_concidences=2, triggered_channels=None, trigger_name='default_high_low', set_not_triggered=False, Vrms=None, trigger_adc=True, clock_offset=0, adc_output='voltage')[source]
simulate ARIANNA trigger logic
- Parameters:
- evt: Event
The event to run the module on
- station: Station
The station to run the module on
- det: Detector
The detector description
- use_digitization: bool
If True, traces will be digitized
- threshold_high: float or dict of floats
the threshold voltage that needs to be crossed on a single channel on the high side a dict can be used to specify a different threshold per channel where the key is the channel id
- threshold_low: float or dict of floats
the threshold voltage that needs to be crossed on a single channel on the low side a dict can be used to specify a different threshold per channel where the key is the channel id
- high_low_window: float
time window in which a high+low crossing needs to occur to trigger a channel
- coinc_window: float
time window in which number_concidences channels need to trigger
- number_concidences: int
number of channels that are requried in coincidence to trigger a station
- triggered_channels: array of ints or None
channels ids that are triggered on, if None trigger will run on all channels
- trigger_name: string
a unique name of this particular trigger
- set_not_triggered: bool (default: False)
if True not trigger simulation will be performed and this trigger will be set to not_triggered
- Vrms: float
If supplied, overrides adc_reference_voltage as supplied in the detector description file
- trigger_adc: bool
If True, the relevant ADC parameters in the config file are the ones that start with ‘trigger_’
- clock_offset: float
- adc_output: string
Options: * ‘voltage’ to store the ADC output as discretised voltage trace * ‘counts’ to store the ADC output in ADC counts