.. .. copyright (C) 2011 .. The Icecube Collaboration .. .. $Id: index.rst 86437 2012-03-20 18:09:37Z kislat $ .. .. @version $Revision: 86437 $ .. @date $LastChangedDate: 2012-03-20 13:09:37 -0500 (Tue, 20 Mar 2012) $ .. @author Fabian Kislat $LastChangedBy: kislat $ .. _tpx-main: tpx ================ Modules for IceTop pulse extraction and calibration. .. _I3IceTopSanityChecks: I3IceTopSanityChecks -------------------- Performs several sanity checks on the GCD data. Outputs lists of bad DOMs, tanks, and stations. These lists will be written to the DetectorStatus (D) frame. Therefore, it is essential to store D frames after processing. Parameters ^^^^^^^^^^ ``InputBadDOMList`` A bad DOM list used as input. This list usually comes from the database. ``BadDOMList`` Bad DOM list generated by this module. It contains all IceTop DOMs from the input bad DOM list, and additional DOMs with issues found by this module. ``BadTankList`` List of bad tanks produced by this module. All tanks that do not have a working HG DOM are considered bad. ``BadStationList`` List of bad stations. All stations with one or more bad tanks are bad. ``CheckGainCalibration`` Set to true to perform checks on the gain calibration. DOMs are labeled as bad if their calibration parameters are outside a certain range. ``CheckTimeCalibration`` Set to true to perform checks on the timing calibration. DOMs are marked bad if their calibration constants are outside a certain range. The default is to perform all checks (both ``CheckGainCalibration`` and ``CheckTimeCalibration`` are on). I3TopHLCPulseExtractor ---------------------- Extract pulses from HLC waveforms and calibrate to PE and/or VEM. The pulse charge is determined by integrating the whole waveform. Pulse time is defined by the "leading edge", i.e. the slope between the bins where 10 and 90% of the first peak are reached extrapolated to the baseline. The trailing edge of the pulse is defined as the point where the waveform drops below 10% of the first pulse for the last time. This is used to calculate the pulse width. Furthermore the rise time of the 10-90% slope and the pulse amplitude are calculated. Parameters ^^^^^^^^^^ ``Waveforms`` Calibrated input waveforms. Use ``I3WaveformSplitter`` from :ref:`WaveCalibrator-main` to extract HLC ATWD waveforms from WaveCalibrator output. ``PEPulses`` Name of the ``I3RecoPulseSeriesMap`` with pulses calibrated in PE. Set to an empty string if you do not need these pulses. They are still calculated, however, because they are the bases of the VEM pulses. ``VEMPulses`` Name of the pulses calibrated in VEM. Set to an empty string if you do not need them. In that case they are never determined (e.g. in vemcal). ``PulseInfo`` Pulse info objects. These contain additional information that cannot be stored in :cpp:class:`I3RecoPulse`\ s, like amplitude and rise-time. Writes and :cpp:class:`I3TopPulseInfoSeriesMap` to the frame. I3TopSLCPulseExtractor ---------------------- Treats SLC charge stamps. Parameters ^^^^^^^^^^ ``Waveforms`` Calibrated input waveforms. Use ``I3WaveformSplitter`` from :ref:`WaveCalibrator-main` to extract HLC ATWD waveforms from WaveCalibrator output. ``PEPulses`` Name of the ``I3RecoPulseSeriesMap`` with pulses calibrated in PE. Set to an empty string if you do not need these pulses. They are still calculated, however, because they are the bases of the VEM pulses. ``VEMPulses`` Name of the pulses calibrated in VEM. Set to an empty string if you do not need them. In that case they are never determined (e.g. in vemcal). I3IceTopBaselineModule ---------------------- Calculates baseline parameters from a given range of ATWD/FADC bins for monitoring: * Average value of waveform. Can be used to monitor baseline subtraction. * Slope of waveform in given range (simple linear fit). Can be used to monitor droop correction. * Waveform RMS in range. Should be small if there are no pulses in given range. Parameters ^^^^^^^^^^ ``Waveforms`` Calibrated input waveforms. Ideally, you should use all waveforms output by :ref:`WaveCalibrator-main`, don't use ``WaveformSplitter``. ``BaselineRange`` Range of bins used for baseline calibration, specified as a list of two bins. Numbers are inclusive, i.e. the last bin given will be included. Negative values are counted from the end of the waveform with -1 corresponding to the last bin. ``Source`` An I3Waveform.Source such as I3Waveform.ATWD (default) or I3Waveform.FADC. ``Output`` Name of the output. The module writes an :cpp:class:`I3IceTopBaselineSeriesMap` to the frame. I3VEMConverter -------------- Converts :cpp:class:`I3RecoPulse`\ s from PE to VEM. Use this module to calibrate pulses transferred as superdst. Pulse time and all other properties of the pulses will remain unchaged. Parameters ^^^^^^^^^^ ``PEPulses`` Input :cpp:class:`I3RecoPulseSeriesMap` containing pulses with charge in units of PE. ``VEMPulses`` Output :cpp:class:`I3RecoPulseSeriesMap` with the same pulses calibrated in VEM. Classes ------- .. cpp:class:: I3IceTopBaselineSeriesMap A typedef for an :cpp:class:`I3Map\ >` storing :cpp:class:`I3IceTopBaseline` information about waveforms. .. cpp:class:: I3IceTopBaseline I3IceTopBaseline stores information about the IceTop-style baseline of a waveform. These parameters are calculated by I3IceTopBaselineModule. .. cpp:member:: I3Waveform::Source source Waveform source (ATWD or FADC) .. cpp:member:: uint8_t channel ATWD channel, undefined in case of FADC .. cpp:member:: uint8_t sourceID ATWD chip ID, undefined in case of FADC .. cpp:member:: float baseline Average baseline (voltage) .. cpp:member:: float slope Baseline slope (voltage/time) .. cpp:member:: float rms Variation of waveform baseline (voltage) .. cpp:class:: I3TopPulseInfoSeriesMap A typedef for :cpp:class:`I3Map\ >` storing :cpp:class:`I3TopPulseInfo` objects. .. cpp:class:: I3TopPulseInfo Stores additional parameters of an IceTop pulse. .. cpp:type:: enum Status Pulse status. Can be OK, Saturated, BadCharge, BadTime. .. cpp:member:: double amplitude Amplitude of the waveform (voltage) .. cpp:member:: double risetime Risetime of the first peak of the waveform .. cpp:member:: double trailingEdge Trailing edge of the waveform .. cpp:member:: Status status Waveform status .. cpp:member:: uint8_t channel ATWD channel .. cpp:member:: uint8_t sourceID ATWD Chip, from :cpp:func:`I3Waveform::GetSourceIndex()`