PyREx

pyrex.custom.arianna.antenna.ARIANNAAntennaSystem

class pyrex.custom.arianna.antenna.ARIANNAAntennaSystem(response_data, name, position, threshold, trigger_window=5e-09, z_axis=(0, 0, 1), x_axis=(1, 0, 0), amplification=1, amplifier_clipping=1, noisy=True, unique_noise_waveforms=10, **kwargs)

Antenna system extending base ARIANNA antenna with front-end processing.

Applies as the front end a filter representing the ARIANNA amplifier and signal clipping.

Parameters
response_datatuple of array_like

Tuple containing the response data for the antenna along the theta and phi polarization directions. The first and second elements should contain 3-D arrays of the antenna response model in the theta and phi polarizations, respectively, as a function of frequency (axis 0), zenith (axis 1), and azimuth (axis 2). The remaining elements should be the values of the frequency, zenith, and azimuth axes, respectively.

namestr

Name of the antenna.

positionarray_like

Vector position of the antenna.

thresholdfloat

Voltage sigma threshold for the trigger condition.

trigger_windowfloat

Time window (ns) for the trigger condition.

z_axisarray_like, optional

Vector direction of the z-axis of the antenna.

x_axisarray_like, optional

Vector direction of the x-axis of the antenna.

amplificationfloat, optional

Amplification to be applied to the signal pre-clipping.

amplifier_clippingfloat, optional

Voltage (V) above which the amplified signal is clipped (in positive and negative values).

noisyboolean, optional

Whether or not the antenna should add noise to incoming signals.

unique_noise_waveformsint, optional

The number of expected noise waveforms needed for each received signal to have its own noise.

See also

pyrex.AntennaSystem

Base class for antenna system with front-end processing.

ARIANNAAntenna

Antenna class to be used for ARIANNA antennas.

Attributes
antennaAntenna

Antenna object extended by the front end.

namestr

Name of the antenna.

positionarray_like

Vector position of the antenna.

thresholdfloat

Voltage sigma threshold for the trigger condition.

trigger_windowfloat

Time window (s) for the trigger condition.

amplificationfloat

Amplification to be applied to the signal pre-clipping. Note that the usual ARA electronics amplification is already applied without this.

amplifier_clippingfloat

Voltage (V) above which the amplified signal is clipped (in positive and negative values).

lead_in_timefloat

Lead-in time (s) required for the front end to equilibrate. Automatically added in before calculation of signals and waveforms.

is_hit

Boolean of whether the antenna system has been triggered.

is_hit_mc_truth

Boolean of whether the antenna has been triggered by signal.

signals

The signals received by the antenna with front-end processing.

waveforms

The antenna system signal + noise for each triggered hit.

all_waveforms

The antenna system signal + noise for all hits.

Methods

apply_response(signal[, direction, …])

Process the complete antenna response for an incoming signal.

clear([reset_noise])

Reset the antenna system to an empty state.

front_end(signal)

Apply front-end processes to a signal and return the output.

full_waveform(times)

Signal + noise for the antenna system for the given times.

interpolate_filter(frequencies)

Generate interpolated filter values for given frequencies.

is_hit_during(times)

Check if the antenna system is triggered in a time range.

make_noise(times)

Creates a noise signal over the given times.

receive(signal[, direction, polarization, …])

Process and store one or more incoming (polarized) signals.

set_orientation([z_axis, x_axis])

Sets the orientation of the antenna system.

setup_antenna([center_frequency, bandwidth, …])

Setup the antenna by passing along its init arguments.

trigger(signal)

Check if the antenna system triggers on a given signal.

PyREx

A Python package for simulation of neutrinos and radio antennas in ice. Version 1.10.0

Navigation