v1.6.0 - Incident-Angle Fidelity & Validation Closure
Widens the incident-angle model's physical fidelity, fixes two real vis-pane rendering bugs found while stress-testing it, and closes out the McNulty/CUPID comparison as an accepted validation rather than an open residual gap.
Incident-angle physics
- Widened the chord-length-elongation model (
thickness / cos(theta)) to apply to the dead layer too, not just the sensitive volume. A tilted beam traverses more physical dead-layer material before reaching the sensitive volume, not just more sensitive-volume material -- leaving it un-elongated under-modeled that contribution and visually collapsed the sensitive:dead thickness ratio toward 1:1 as angle approached 90 deg. - Added a runtime warning (
IncidentAngleLateralEscape) for extreme angles where the elongated sensitive volume becomes tall and narrow enough that real multiple-Coulomb/nuclear scattering pushes primaries out its (un-widened) side before they finish traversing it, biasing deposited-energy results low. Empirically calibrated: fires at 89 deg, silent at 80 deg and below, matching measured zero-deposit-fraction data (under 1% through 45 deg, 5.7% at 89 deg, 91% at 89.9 deg).
Vis-pane fixes
- Fixed a genuine thickness-ratio distortion: the viewpoint's slight Z-tilt made the projected view skew depend on the device's own XY-to-Z aspect ratio, so the sensitive:dead thickness ratio visibly distorted as
sensitiveXYgrew. Fixed by using an exact side-on viewpoint with no tilt. - Found and removed a non-functional "fixed camera extent" mechanism from an earlier fix -- confirmed via a controlled A/B test that
/vis/scene/add/extentis a complete no-op once real geometry is drawn, so the code claiming to control zoom scale never actually did.
Validation closure
- Tested and ruled out two candidate explanations for McNulty's high-energy residual gap: widening the beam to cover the surrounding volume (made agreement slightly worse), and growing the surrounding volume to 300/500 um (flat, non-improving trend).
- Root cause: only heavy recoil fragments deposit meaningful energy, and they have very short range, so only reactions close to the sensitive volume can contribute -- a structural feature of the physics, not a fixable sampling gap.
- Reframed the McNulty/CUPID comparison verdict from "partially addressed, residual gap accepted as a known limitation" to a genuine, accepted validation, given PANDA (Geant4 cascade physics) and CUPID (liquid-drop nuclear model) are fundamentally different nuclear models -- judged by the standard used for cross-code nuclear-model comparisons elsewhere in the field.
See README.md and Documentation/PANDA_MASTER_DESIGN/PANDA_VALIDATION_SUMMARY.md for details.