I3WaveformSplitter¶
The I3WaveformSplitter module splits a given I3WaveformSeriesMap into multiple maps, one for each waveform source.
Parameters¶
Input:
Name of the I3WaveformSeriesMap to get from the frame, e.g. “CalibratedWaveforms”.
HLC_ATWD:
Name of the I3WaveformSeriesMap containing the ATWD waveforms from HLC launches to put in the frame, e.g. “CalibratedATWD”.
HLC_FADC:
Name of the I3WaveformSeriesMap containing the FADC waveforms from HLC launches to put in the frame, e.g. “CalibratedFADC_HLC”.
SLC:
Name of the I3WaveformSeriesMap containing the FADC charge stamps from SLC launches to put in the frame, e.g. “CalibratedFADC_SLC”. Note that InIce-style SLC stamps are indistinguishable from IceTop-style SLC stamps and will appear in the same map.
Force:
Place output maps in the frame even if they’re empty. This can be useful if downstream modules are lazy and assume their inputs are always present.
PickUnsaturatedATWD:
Emit only the highest-gain unsaturated ATWD channel. This emulates WaveCalibrator’s former CALIBRATE_UNSATURATED mode.
SplitATWDChannels:
Split waveforms from the three ATWD channels into separate maps numbered 0, 1, and 2.
SplitATWDChips:
Split waveforms from the two ATWD chips into separate maps, marked _Chip0 and _Chip1.
OutBoxes¶
One.
Example¶
from icecube import icetray, dataio, WaveCalibrator
tray = icetray.I3Tray()
tray.AddModule("I3Reader","reader",
Filename="data.i3.gz"
)
tray.AddModule("I3WaveCalibrator", "sedan",
Launches="InIceRawData",
Waveforms="CalibratedWaveforms",
Errata="BorkedOMs",
ATWDSaturationMargin=123,
FADCSaturationMargin=0,
)
tray.AddModule("I3WaveformSplitter", "splitter",
Input="CalibratedWaveforms",
ATWD_HLC="CalibratedATWD",
FADC_HLC="CalibratedFADC_HLC",
SLC="CalibratedFADC_SLC",
PickUnsaturatedATWD=True,
)
tray.Execute()