Polyplopia¶
- Release Notes
- main
- Oct. 24, 2024 don la dieu (nega at icecube.umd.edu)
- June 18, 2024 don la dieu (nega at icecube.umd.edu)
- Feb. 20, 2024 don la dieu (nega at icecube.umd.edu)
- Dec. 14, 2023 don la dieu (nega at icecube.umd.edu)
- June 22, 2023 don la dieu (nega at icecube.umd.edu)
- Apr. 05, 2023 don la dieu (nega AT icecube.umd.edu)
- Jul. 29, 2022 don la dieu (nega AT icecube.umd.edu)
- Feb. 22, 2022 don la dieu (nega AT icecube.umd.edu)
- Feb. 5, 2020 Alex Olivas (aolivas@umd.edu)
- Dec. 20, 2019 Alex Olivas (aolivas@umd.edu)
- Dec 19, 2019 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- June 20, 2018 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- Nov 22, 2017 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- Nov 8, 2017 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- March 24, 2017 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- July 28, 2016 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- March 28, 2016 Juan Carlos Diaz Velez (juancarlos@icecube.umd.edu)
- November 24, 2014 Alex Olivas (olivas@icecube.umd.edu)
- October 21, 2014 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- August 11, 2014 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- June 30, 2014 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- September 10, 2012 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- August 23, 2012 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- June 27, 2012 Juan Carlos Diaz Velez (juancarlos@icecube.wisc.edu)
- October 10, 2011 Alex Olivas (olivas@icecube.umd.edu)
- PoissonMerger
- I3PolyplopiaExp
- MPHitFilter
Overview¶
This project contains tools for generating Monte Carlo IceCube events consisting of multiple primaries (and secondaries) that generate coincident detector hits. These types of events are often misreconstructed as upgoing muons and are difficult to distinguish from such.
At this time, the project consists of the following two modules:
I3PolyplopiaExp takes events from multiple frames and merges events of various multiplicities by sampling time intervals from an exponential distribution based on the rate of minimum-threshold events.
PoissonMerger injects background event read from a separate file ontop of primary events in the chain by sampling from a Poisson distribution. This C++ module replaces an older Python module and can merge events at the I3MCTree-level after generation. This is likely to become the prefered way since the combined MCTree can be processed through photon propagation at once instead of having to do this in separate tasks during production.
MPHitFilter removes events that don’t produce light in the detector and removes branches of I3MCTrees whose particles don’t produce enough PEs in the detector, making it much easier to read and reducing the storage requirements.
We inject this cosmic-ray background (read from a separate file) on top of primary or signal events in the main simulation chain by sampling from a Poisson distribution with a probability
where \(\lambda = R \Delta t\) is the average number of muons entering the detector volume within a time window \(\Delta t\), given a rate R, and k is the number of coincident showers in that same interval. Background showers are injected with a uniform time distribution over the interval \(\Delta t\). The default time window \(\Delta t\) is chosen to have a value of \(40~\mu s\) but can be made arbitrarily large given enough memory needed to store each shower element, CPU needed to propagate each background shower, and GPU to propagate the emitted photons. The background showers are assumed to be randomized in terms of energy and composition a priori.
This approach is used for injecting cosmic-ray muon background into both neutrino ‘’signal’’ events as well as weighted cosmic-ray shower events. In the case of the latter, a single weighted cosmic-ray shower is treated as a “signal” but in this case k in the equation above would be replace by k-1 in order to avoid over-counting.
An alternative to using full CORSIKA cosmic ray simulations is to replace the background shower file by a muon stream service implemented from the MuonGun generator described in Muongun provided it is configured to produce a muon spectrum and bundle multiplicity comparable to the one that results from the Polygonato cosmic-ray spectrum and mass composition. This approach, although less, accurate provides a much faster way to produce background coincidences and can produce muons on demand, thus saving a lot of computation time.
The C++ PoissonMerger module makes use of a CoincidentEventService that can be drop-in replaced with other event services such as a MuonGun-based service.