JuliaPhysics / JuliaPhysics/SolidStateDetectors.jl
Cartesian get_active_volume ignores reflecting-boundary symmetry
- Dominant language
- Julia
- Stars
- 178
- Forks
- 59
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 4
Description
(Draft from the 2026-07 code review; posted on behalf of the review.)
When a Cartesian simulation exploits mirror symmetry via reflecting boundaries
(simulating half or a quarter of the detector), `get_active_volume` integrates
only over the simulated domain and reports half / a quarter of the physical
active volume.
The cylindrical version accounts for the equivalent situation (a reduced φ range
is scaled up to the full 2π volume), and the capacitance calculation multiplies
by the reflecting-boundary multiplicity for both grid types — so the Cartesian
active volume is the odd one out.
Proposal: multiply the Cartesian result by the same reflecting-boundary
multiplicity the capacitance code derives, so both grid types and both derived
quantities follow one convention ("physical detector, not simulated domain").
Configs that relied on the current behavior would see the reported active volume
change (the field solution itself is untouched).
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the Cartesian get_active_volume implementation, then compare it with the cylindrical version and the capacitance calculation that derives reflecting-boundary multiplicity. Update the Cartesian active-volume result to use that multiplicity, verify that the field solution remains unchanged, and run the relevant tests for active volume and capacitance behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100