NuRadioReco.modules.trigger package

Submodules

NuRadioReco.modules.trigger.highLowThreshold module

NuRadioReco.modules.trigger.highLowThreshold.get_high_low_triggers(trace, high_threshold, low_threshold, time_coincidence=5, dt=1)

calculats a high low trigger in a time coincidence window

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)

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)

calculates a majority logic trigger

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)

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

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.

begin(log_level=None)
end()
run(evt, station, det, 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)

simulate ARIANNA trigger logic

evt: Event

The event to run the module on

station: Station

The station to run the module on

det: Detector

The detector description

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

NuRadioReco.modules.trigger.multiHighLowThreshold module

NuRadioReco.modules.trigger.multiHighLowThreshold.get_high_triggers(trace, threshold)
NuRadioReco.modules.trigger.multiHighLowThreshold.get_low_triggers(trace, threshold)
NuRadioReco.modules.trigger.multiHighLowThreshold.get_multiple_high_low_trigger(trace, high_threshold, low_threshold, n_high_lows, time_coincidence=10, dt=1)

calculats a multiple high low threshold crossings in a time coincidence window

trace: array of floats

the signal trace

high_threshold: float

the high threshold

low_threshold: float

the low threshold

n_high_lows: int

the required number of high or low crossings in a given coincidence window

time_coincidence: float

the time coincidence window between the high or low threshold crossings

dt: float

the width of a time bin (inverse of sampling rate)

triggered bins: array of bools

the bins where the trigger condition is satisfied

class NuRadioReco.modules.trigger.multiHighLowThreshold.triggerSimulator

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.

begin()
end()
run(evt, station, det, threshold_high=0.06, threshold_low=-0.06, high_low_window=5, n_high_lows=5, coinc_window=200, number_concidences=2, triggered_channels=None, trigger_name='default_high_low', set_not_triggered=False)

simulate ARIANNA trigger logic

evt: Event

Event to run the module on

station: Station

Station to run the module on

det: Detector

The detector description

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

n_high_lows: int

the required number of high or low crossings in a given coincidence window

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

NuRadioReco.modules.trigger.simpleThreshold module

NuRadioReco.modules.trigger.simpleThreshold.get_threshold_triggers(trace, threshold)

calculats a simple threshold trigger

trace: array of floats

the signal trace

threshold: float

the threshold

triggered bins: array of bools

the bins where the trigger condition is satisfied

class NuRadioReco.modules.trigger.simpleThreshold.triggerSimulator

Bases: object

Calculate a very simple amplitude trigger.

begin()
end()
run(evt, station, det, threshold=0.06, number_concidences=1, triggered_channels=None, coinc_window=200, trigger_name='default_simple_threshold')

simulate simple trigger logic, no time window, just threshold in all channels

evt: Event

The event to run the module on

station: Station

The station to run the module on

det: Detector

The detector description

number_concidences: int

number of channels that are requried in coincidence to trigger a station

threshold: float or dict of floats

threshold above (or below) a trigger is issued, absolute amplitude a dict can be used to specify a different threshold per channel where the key is the channel id

triggered_channels: array of ints or None

channels ids that are triggered on, if None trigger will run on all channels

coinc_window: float

time window in which number_concidences channels need to trigger

trigger_name: string

a unique name of this particular trigger

Module contents