Simulating lead burger scintillator solid angle acceptance

Please fill out the following information to help in answering your question, and also see tips for posting code snippets. If you don’t provide this information it will take more time to help with your problem!

_Geant4 Version: 4-11.2
_Operating System: Windows 11
_Compiler/Version: Visual Studio 17.9
_CMake Version: 3.29.2


I am brand new to using GEANT4 and am quite overwhelmed at the amount of information one needs to learn to properly utilize it. I am currently running a muon detection experiment in a new shallow underground research facility and need to simulate the detector in GEANT4 in order to properly understand the effective solid angle cone of muon acceptance. The physical geometry is a smaller 12.5cm W x 14.5cm L x 4.0cm H plastic scintillator on top of a 16.0cm W x 20.0cm L x 2.0cm H sheet of lead, which then sits on top of a much larger 30.0cm W x 48.0cm L x 4.0cm H plastic scintillator. A muon passing through the top AND bottom scintillator would produce a coincidence detection and be recorded as a count.
The detector does not need to be simulated underground, I just need to understand the solid angle acceptance of this setup. I can’t seem to find an example similar to this, if anyone could assist me an example or where to start, I would greatly appreciate it, thank you.

This is mostly just a math problem in solid geometry and integration. Doing it analytically would be quite non-trivial, so you can use a simple simulation instead.

  1. Instead of real muons, use the artificial “geantino” particle instead. Give them any energy you like – geantinos don’t interact or scatter, they just do “ray tracing.”

  2. Throw uniformly inward from a hemisphere (solid angle = 2 pi radians), with your detector placed so the lower face of the bottom scintillator is centered on the center of the sphere.

  3. Attach a sensitive detector to each of your scintillators, and record when a track enters it (step status = fGeomBoundary for the preStepPoint).

Record all those hits to an N-tuple (position, direction vector, event number, track number), and in your offline analysis you can pick out which tracks in the same event hit both scintillators. If you throw uniformly, then the fraction of coincidences is equal to the solid acceptance/2pi.

Once you’ve got that, then you can start making it more realistic:

  • use muons instead of geantinos
  • throw with a sec(theta) distribution as a simple version of cosmic rays
  • throw with an energy spectrum so you can see how the steel gives you a energy cutoff

and so on.

Thank you for your response, I will try this approach!