Get signal and timing values from events¶
Get data from HiSPARC events
This module contains functions to derive data from HiSPARC events. Common tasks for data reconstruction are getting the particle density and shower arrival time in detectors or a station. These functions are aware of processed events (i.e. reconstructed number of MIPs, arrival times and trigger time) and stations.
- sapphire.analysis.event_utils.station_density(event, detector_ids=None, station=None)¶
Get particle density in a station
Detectors with error values will be ignored.
- Parameters:
event – Processed event row.
detector_ids – list of detectors ids to consider. If None, the detectors in the station object will be used.
station –
sapphire.clusters.Station
object.
- Returns:
average density over the chosen detectors.
- sapphire.analysis.event_utils.detector_densities(event, detector_ids=None, station=None)¶
Get particle density in station detectors
- Parameters:
event – Processed event row.
detector_ids – list of detectors ids for which to get particle densities.
station –
sapphire.clusters.Station
object.
- Returns:
density in each chosen detector.
- sapphire.analysis.event_utils.detector_density(event, detector_id, station=None)¶
Get particle density in station detector
- Parameters:
event – Processed event row.
detector_id – detector id for which to get particle density.
station –
sapphire.clusters.Station
object, used to determine the detector size.
- Returns:
density in the chosen detector.
- sapphire.analysis.event_utils.station_arrival_time(event, reference_ext_timestamp, detector_ids=None, offsets=[0.0, 0.0, 0.0, 0.0], station=None)¶
Get station arrival time, i.e. first detector hit
Arrival time of first detector hit in the station. The returned time is relative to reference_ext_timestamp, because floats do not have enough precision to represent large timestamps in nanoseconds.
- Parameters:
event – Processed event row.
reference_ext_timestamp – reference extended timestamp (in ns). The returned station arrival time will be relative to this timestamp. Often best to use the timestamp of the first event in a coincidence.
detector_ids – list of detectors ids for which to consider.
offsets – list of detector time offsets.
station –
sapphire.clusters.Station
object, used to determine the number of detectors.
- Returns:
shower arrival time of the station relative to the reference timestamp.
- sapphire.analysis.event_utils.relative_detector_arrival_times(event, reference_ext_timestamp, detector_ids=None, offsets=[0.0, 0.0, 0.0, 0.0], station=None)¶
Get relative arrival times for all detectors
- Parameters:
event – Processed event row.
reference_ext_timestamp – reference extended timestamp (in ns). The returned station arrival time will be relative to this timestamp. Often best to use the timestamp of the first event in a coincidence.
detector_ids – list of detectors ids for which to get arrival times.
offsets – list of detector time offsets.
station –
sapphire.clusters.Station
object, used to determine the number of detectors.
- Returns:
list of shower arrival times relative to the given reference.
- sapphire.analysis.event_utils.detector_arrival_times(event, detector_ids=None, offsets=[0.0, 0.0, 0.0, 0.0], station=None)¶
Get corrected arrival times for all detectors
- Parameters:
event – Processed event row.
detector_ids – list of detectors ids for which to get arrival times.
offsets – list of detector time offsets.
station –
sapphire.clusters.Station
object, used to determine the number of detectors.
- Returns:
list of shower arrival times relative to the start of the trace.
- sapphire.analysis.event_utils.detector_arrival_time(event, detector_id, offsets=[0.0, 0.0, 0.0, 0.0])¶
Get corrected arrival time for a detector
- Parameters:
event – Event row.
detector_id – detector id for which to get arrival times.
offsets – list of detector time offsets.
- Returns:
arrival time corrected by the offset.
- sapphire.analysis.event_utils.get_detector_ids(station=None, event=None)¶
Determine the detector ids based on the station object or event data
Returns a list of detectors that should be present.
Note: Event based determination might not work for simulated data, since it currently does not simulate pulseheights.
- Parameters:
event – Event row.
station –
sapphire.clusters.Station
object.
- Returns:
list of detector_ids.