icecube.radcube.TAXIBackgroundReader module

class icecube.radcube.TAXIBackgroundReader.TAXIBackgroundReader(filenames)

Bases: object

Singleton object that can be pinged for background waveforms from measured radio waveforms. After supplying an/some I3File(s), the “soft triggered” waveforms from the files are read out and saved until either all the waveforms in the passed in frames have been read or until the specified number of waveforms (nTraces) has been read in.

Since these waveforms are read in in units of ADC, several operations can be done to them such that they will be in a sufficient state to add to, e.g. simulated waveforms. These include converting them into a voltage (convertToVoltage) and removing TAXI artifacts.

Internally, the waveforms are stored in a python dict, indexed by antenna and channel key. The radio data can then be index by requesting a spectrum or a time series. Alternatively, the FFTDataContainer can simply be requested to get both.

For an example, see $I3_BUILD/radcube/resources/examples/ExampleScript_AddingMeasuredNoise.py

Parameters:

filenames – Filenames of the I3 files to load background waveforms from

ApplyBandpass(flow, fhigh, filterType=icecube._radcube.FilterType.eBox)

Applies a bandpass filter to all the stored background waveforms

Parameters:
  • flow (float) – Low frequency cutoff

  • fhigh (float) – High frequency cutoff

  • filterType (:cpp:class:FilterType, optional) – Kind of filter to apply

ApplySpikeFilter(filter, power=2)
AverageNonCascaded(longSeries, stride)
GetData()
GetFFTData(antkey=None, chkey=None)

Returns one FFTData container. If given an index, it will give you that particular one, otherwise it will give you the “next” one and bump the counter.

GetKeys()
GetN()
GetNextKeys()

Gets the keys of the next waveform that will by returned using e.g. GetFFTData This allow you to know the corresponding keys if requesting the background without supply the antkey and chkey

GetSpectrum(antkey=None, chkey=None)

Returns one frequency spectrum. If given an index, it will give you that particular one, otherwise it will give you the “next” one and bump the internal counter.

GetTrace(antkey=None, chkey=None)

Returns one time-domain waveform. If given an index, it will give you that particular one, otherwise it will give you the “next” one and bump the internal counter.

HasKey(antkey, chkey)
IsOverused(antkey=None, chkey=None)

Runs a check to see if the specified waveforms all all been used at least once

Return type:

bool

LoadAllFiles()