Skip to content

Conversation

@ruse-traveler
Copy link
Contributor

@ruse-traveler ruse-traveler commented Nov 14, 2025

Briefly, what does this PR introduce?

This PR adds DD4hep DetType flags to all sensitive detectors and to beampipes. An example of how to extract these flags from calorimeter and tracker hits (where the latter includes PID output) is provided in snippets here.

Note that since only FORWARD is defined as a flag, I opted to label the FF/FB elements as ENDCAP. Then, following what was done in the central tracker, only detectors and beampipes are labeled; support and other structures are not.

What kind of change does this PR introduce?

Please check if this PR fulfills the following:

  • Tests for the changes have been added
  • Documentation has been added / updated
  • Changes have been communicated to collaborators

Does this PR introduce breaking changes? What changes might users need to make to their code?

No.

Does this PR change default behavior?

No.

@github-actions github-actions bot added topic: barrel Mid-rapidity detectors topic: forward Positive-rapidity detectors (hadron-going side) topic: backward Negative-rapidity detectors (electron-going side) topic: calorimetry topic: PID Particle identification topic: far-forward Deterctors for small-angle particles topic: far-backward labels Nov 14, 2025
@veprbl
Copy link
Member

veprbl commented Nov 17, 2025

Have you tested querying these values? I don't think this works without explicit calls to dd4hep::xml::setDetectorTypeFlag() in each constructor.

@ruse-traveler
Copy link
Contributor Author

Have you tested querying these values? I don't think this works without explicit calls to dd4hep::xml::setDetectorTypeFlag() in each constructor.

Oof! I haven't tried it out yet, but I'll report back when I do! If need be, I'll do a pass to add explicit calls where needed...

@ruse-traveler
Copy link
Contributor Author

Have you tested querying these values? I don't think this works without explicit calls to dd4hep::xml::setDetectorTypeFlag() in each constructor.

Confirmed: you do indeed need an explicit call in each constructor. I just pushed a round of commits to add these calls to all sensitive detectors.

I also now have a working example of how to extract the type flags during reconstruction/analysis. I'll do a pass with it to make sure I've haven't missed/messed up anything, and then post here and add the example to either snippets or benchmarks...

@ruse-traveler
Copy link
Contributor Author

It took a minute to work through it, but it looks like things are working mostly as expected! For some reason, the type flags don't seem to be propagated for the DIRC, pfRICH, FHCal insert, and far backward detectors. I haven't figured out why yet...

detRegionRxEta epic994 py8ncdis18x275minq1Knevt1K d5m12y2025 detTypeRxEta epic994 py8ncdis18x275minq1Knevt1K d5m12y2025 detRegionRxZ epic994 py8ncdis18x275minq1Knevt1K d5m12y2025 detTypeRxZ epic994 py8ncdis18x275minq1Knevt1K d5m12y2025

@wdconinc
Copy link
Contributor

wdconinc commented Dec 6, 2025

Note that since only FORWARD is defined as a flag

Can you consider if it makes sense to upstream an addition to dd4hep? Symmetric colliders have forward in both directions, so this is EIC-inspired but in some sense of broader relevance too (for all those other asymmetric colliders in development.......).

@ruse-traveler
Copy link
Contributor Author

Note that since only FORWARD is defined as a flag

Can you consider if it makes sense to upstream an addition to dd4hep? Symmetric colliders have forward in both directions, so this is EIC-inspired but in some sense of broader relevance too (for all those other asymmetric colliders in development.......).

Yeah! I definitely think it makes sense upstream it to dd4hep! I suppose the FCC-eh proposal (or LHeC) might some other big use cases 🤷

(Though I also read a fun paper about running a muon collider with asymmetric beam energies a little bit ago...)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

topic: backward Negative-rapidity detectors (electron-going side) topic: barrel Mid-rapidity detectors topic: calorimetry topic: far-backward topic: far-forward Deterctors for small-angle particles topic: forward Positive-rapidity detectors (hadron-going side) topic: PID Particle identification topic: tracking

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants