Skip to content

[ALICE 3] Fix sensitive volumes definition for FT3 #15397

Merged
njacazio merged 2 commits into
AliceO2Group:devfrom
scannito:ft3
May 13, 2026
Merged

[ALICE 3] Fix sensitive volumes definition for FT3 #15397
njacazio merged 2 commits into
AliceO2Group:devfrom
scannito:ft3

Conversation

@scannito
Copy link
Copy Markdown
Contributor

@scannito scannito commented May 13, 2026

Sensitive volume names depend on FT3Base.layoutFT3 and were not correctly fetched for newly introduced layout options.

Additional checks are needed to retrieve the correct sensor ID for digitization.

@scannito scannito marked this pull request as ready for review May 13, 2026 15:00
@scannito scannito requested a review from mconcas as a code owner May 13, 2026 15:00
Copilot AI review requested due to automatic review settings May 13, 2026 15:00
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates FT3 simulation sensitive-volume registration so that sensor volumes are discovered correctly across newly introduced layoutFT3 naming schemes, and adds a volume-id → sensor-id lookup for ProcessHits().

Changes:

  • Replace the previous mLayerID-based sensitive-volume identification with an mActiveSensorMap lookup keyed by MC volume ID.
  • Redefine defineSensitiveVolumes() to discover sensitive FT3 sensor volumes by iterating over all TGeo volumes and matching known naming signatures for multiple layouts.
  • Update FT3 Detector ROOT class version to reflect the data member change.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.

File Description
Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx Reworks sensitive-volume discovery and ProcessHits() volume→sensor mapping.
Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h Replaces mLayerID with mActiveSensorMap and bumps ROOT class version.
Comments suppressed due to low confidence (1)

Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx:660

  • When a matching sensitive volume is found, the map stores mActiveSensorMap[volID] = iLayer, which is not sufficient to uniquely identify the sensor for digitization in the presence of multiple directions and/or multiple sensors per layer. Store a unique sensor/chip index here (e.g., include direction and, for segmented volumes, parse and include the sensor/stave indices from the volume name or hierarchy).
          AddSensitiveVolume(v);
          int volID = gMC ? TVirtualMC::GetMC()->VolId(vName.c_str()) : 0;
          if (volID > 0) {
            mActiveSensorMap[volID] = iLayer;
          }

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx
Comment thread Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx
Comment thread Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx
Comment thread Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx
@alibuild
Copy link
Copy Markdown
Collaborator

Error while checking build/O2/fullCI_slc9 for a8db0f0 at 2026-05-13 18:10:

## sw/BUILD/O2Physics-latest/log
c++: fatal error: Killed signal terminated program cc1plus
ninja: build stopped: subcommand failed.

Full log here.

@njacazio njacazio enabled auto-merge (squash) May 13, 2026 17:53
@njacazio njacazio disabled auto-merge May 13, 2026 17:54
@njacazio njacazio enabled auto-merge (squash) May 13, 2026 17:54
@njacazio njacazio merged commit aafbebf into AliceO2Group:dev May 13, 2026
15 of 17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants