Add WavePID simulation study with photon origin tracking#23
Add WavePID simulation study with photon origin tracking#23seulig wants to merge 3 commits intoicecube:masterfrom
Conversation
…val time distributions used in the WavePID publication
…etector_type 3 --threads 1 --simple_PMT -v) which didnt properly show the particles before; removed double init, added GPS particle setup
|
Thanks for putting this together! I've taken a look through the implementation and just have some notes to help tidy things up, mostly focusing on documentation structure, parameter handling, and a few things I noticed during brief testing. Let me know if you have any questions on these! (And also let me know if you really don't want to spend time on documentation.) We will run some more checks in the next days, but I don't expect much more that needs to be fixed. 1. Macro Files (
|
…, docs, notebook
Thanks a lot for your comments and spending your time to review it! You caught
some interesting points which I fixed, and I also added the Jupyter notebook
for documentation.
Fixes:
- Fix --detector_type flag being ignored: was always placing a DOM regardless
of selection; replaced with switch statement supporting all module types
(single PMT, mDOM, DOM, LOM16, LOM18, D-Egg, pDOM HQE)
- Fix --environment flag being ignored: world material was hardcoded to
IceCubeICE_SPICE; now uses m_data->getMaterial("argWorld") which respects
the flag (air / IceCubeICE / IceCubeICE_SPICE)
- Fix multithreading crash: OMSimTrackingAction singleton pattern is
incompatible with Geant4 MT (Build() called once per thread); fixed by
making the instance pointer thread_local - each worker owns its maps
independently, no mutex needed
- Fix -r/--impact_parameter short flag conflict with --radius used in other
OMSim simulations; renamed to -d (distance)
- Remove deprecated --dom_event_spacing parameter
Macros:
- Reduce from three vis macros to one (vis_wavepid.mac); delete vis_muon.mac
and vis_minimal.mac
Visualization scale: Regarding the large world volume and the zoomed-out
viewpoint - for the energy range and parameter space of interest (1-100 GeV,
impact parameters up to ~50 m), a 30 m radius sphere was chosen as a
repeatable design that captures the full cascades and long enough segments of
the muon track to reveal the photon arrival time distributions we wanted to
study in WavePID. The viewpoint distance follows from this world size.
Documentation:
- Add documentation/extra_doc/33_wavepid.md with full parameter reference,
photon origin classification table, usage examples, output schema,
efficiency_cut and multithreading notes, architecture overview
- Add WavePID entry to root README.md Available Studies section
- Slim down simulations/wavepid/README.md to quick-start only
- Clarify that study was applied and tested solely with --detector_type 3
(standard DOM); --efficiency_cut was not used (QE die roll affects all
origins equally); world volume (30m sphere) covers the full cascade and
a sufficient muon track segment for the 1-100 GeV target energy range
Notebook:
- Add documentation/notebooks/wavepid/wavepid_analysis.ipynb with paper
Figs 3 and 4: stacked tier histogram of time residuals and PDF/cumulative
charge overlay
- Add example ROOT file (10 events, 30 GeV mu-, d=5m, DOM in SPICE ice)
so reviewers can run the notebook without a Geant4 build
|
Many thanks, Markus, really appreciate your help and you taking your time. I just sent a new PR which addresses your feedback. Let me know if anything else comes up :) |
Motivation
The existing OMSim framework simulates photon detection efficiently, but does not record where each detected photon originated. For the WavePID publication, we needed to understand how the photon arrival time distribution (PATD) differs between injected electrons and muons at similar impact parameters, ice parametrization, and DOM orientation — and what the underlying microphysics driving those differences are.
The core question is whether the different emission geometry of tracks (muons) versus cascades (electrons) produces a measurably different light profile over time, and how that looks at the DOM level. This simulation provides the photon-level data needed to answer that.
What this PR adds
A new simulation study
simulations/wavepid/that extends OMSim with per-photon origin tracking:common/— all new code lives insimulations/wavepid/Usage
The study was developed for muons and electrons on pDOMs, but any other particle type or detector geometry implemented in OMSim can be used as input, which may also be interesting for exploring future detector setups.