-
Notifications
You must be signed in to change notification settings - Fork 628
[PWGCF] Adding the option to reject half the FT0 #14925
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
[PWGCF] Adding the option to reject half the FT0 #14925
Conversation
Adding the option to reject half of the FT0 detectors to eta dependent correlations
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds configurable options to exclude specific FT0 (A/C) inner/outer ring channel ranges when building eta-dependent TPC–FT0 correlations, enabling studies that “reject half” of the FT0 acceptance.
Changes:
- Introduced new configurables to reject FT0A/FT0C inner or outer ring channels.
- Added FT0 channel-range constants for ring selection.
- Applied channel rejection during the FT0-channel loop when filling correlations.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| getChannel(ft0, iCh, chanelid, ampl, corType); | ||
| if (corType == kFT0C) { | ||
| if ((cfgRejectFT0CInside && (chanelid >= kFT0CInnerRingMin && chanelid <= kFT0CInnerRingMax)) || (cfgRejectFT0COutside && (chanelid >= kFT0COuterRingMin && chanelid <= kFT0COuterRingMax))) { | ||
| continue; | ||
| } | ||
| } else if (corType == kFT0A) { | ||
| if ((cfgRejectFT0AInside && (chanelid >= kFT0AInnerRingMin && chanelid <= kFT0AInnerRingMax)) || (cfgRejectFT0AOutside && (chanelid >= kFT0AOuterRingMin && chanelid <= kFT0AOuterRingMax))) { | ||
| continue; |
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Channel rejection is applied after getChannel(), but getChannel() already fills FT0Amp/FT0AmpCorrect QA histograms with the (non-rejected) amplitude. This makes the QA plots inconsistent with the actual correlations when any cfgRejectFT0* option is enabled. Consider applying the rejection before calling getChannel(), or move the rejection logic into getChannel() (e.g., set ampl=0 / skip fills for rejected channel IDs) so QA and correlation filling are consistent.
| int chanelid = 0; | ||
| float ampl = 0.; | ||
| getChannel(ft0, iCh, chanelid, ampl, corType); | ||
| if (corType == kFT0C) { | ||
| if ((cfgRejectFT0CInside && (chanelid >= kFT0CInnerRingMin && chanelid <= kFT0CInnerRingMax)) || (cfgRejectFT0COutside && (chanelid >= kFT0COuterRingMin && chanelid <= kFT0COuterRingMax))) { |
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Local variable name chanelid appears to be a typo and reduces readability, especially now that it’s used in the new rejection logic. Consider renaming it to channelId (and updating uses in this loop) to avoid confusion.
Adding the option to reject half of the FT0 detectors to eta dependent correlations