Skip to content

[PWGJE] Add missing event selection to processReco in jetShape task#14280

Merged
nzardosh merged 4 commits intoAliceO2Group:masterfrom
ynishida-style:master
Jan 15, 2026
Merged

[PWGJE] Add missing event selection to processReco in jetShape task#14280
nzardosh merged 4 commits intoAliceO2Group:masterfrom
ynishida-style:master

Conversation

@ynishida-style
Copy link
Copy Markdown
Contributor

Added missing event and track selections to the recently introduced process.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Dec 18, 2025

O2 linter results: ❌ 0 errors, ⚠️ 0 warnings, 🔕 0 disabled

@github-actions github-actions Bot changed the title Add missing event selection to processReco in jetShape task [PWGJE] Add missing event selection to processReco in jetShape task Dec 18, 2025
Comment thread PWGJE/Tasks/jetShape.cxx Outdated

float centrality = collision.centFT0M();
float rho = collision.rho();
// float rho = collision.rho();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

why is rho subtraction removed?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Thank you for the comment. This quantity is obtained for the detector efficiency correction. I had removed it once, assuming it was not necessary, but after reviewing it again, I realized that it is indeed needed, so I restored it. Thank you for pointing this out.

Comment thread PWGJE/Tasks/jetShape.cxx Outdated
void processInclusiveProductionRatio(soa::Filtered<soa::Join<aod::Collisions, aod::CentFT0Ms>>::iterator const& collision, soa::Join<aod::Tracks, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TracksExtra, aod::TracksDCA, aod::pidTOFbeta, aod::pidTOFmass> const& tracks)
void processInclusiveProductionRatio(soa::Filtered<soa::Join<aod::Collisions, aod::CentFT0Ms, aod::EvSels>>::iterator const& collision, soa::Join<aod::Tracks, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TracksExtra, aod::TracksDCA, aod::pidTOFbeta, aod::pidTOFmass, o2::aod::TrackSelection> const& tracks)
{
if (!collision.sel8())
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

why is sel8 hardcoded? I assume this should also use ?

if (!jetderiveddatautilities::selectCollision(collision, eventSelectionBits))

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

With the aod::Collisions table that was being used, it was not possible to implement this in the same way as in the other processes, which is why it was written in that manner.

In the latest commit, I changed the table to aod::JetCollisions and switched to the approach using jetderiveddatautilities~.

Comment thread PWGJE/Tasks/jetShape.cxx Outdated
registry.fill(HIST("trackEta"), track.eta());
registry.fill(HIST("trackPhi"), track.phi());

if (!track.isGlobalTrack()) {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

why is this hardcoded rather than using je track selection like for the other process functions?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

With the aod::track table that was being used, it was not possible to implement this in the same way as in the other processes, which is why it was written in that manner.

In the latest commit, I changed the table to aod::JetTrack and updated the implementation to follow the same approach.
(The same applies to the next comment as well.)

Comment thread PWGJE/Tasks/jetShape.cxx Outdated

for (const auto& track : tracks) {

if (!track.isGlobalTrack())
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

should probably not be hard coded

Comment thread PWGJE/Tasks/jetShape.cxx
for (const auto& jet : jets) {
registry.fill(HIST("jetPt"), jet.pt());

float mcdPtCorr = jet.pt() - rho * jet.area();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

same comment as above

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Related to the first comment, I have restored this.

@ynishida-style
Copy link
Copy Markdown
Contributor Author

@nzardosh
Could you please have a look at this when you have a moment?
Thank you very much.

Comment thread PWGJE/Tasks/jetShape.cxx Outdated
"production ratio around jets", false);

void processInclusiveProductionRatio(soa::Filtered<soa::Join<aod::Collisions, aod::CentFT0Ms>>::iterator const& collision, soa::Join<aod::Tracks, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TracksExtra, aod::TracksDCA, aod::pidTOFbeta, aod::pidTOFmass> const& tracks)
void processInclusiveProductionRatio(soa::Filtered<aod::JetCollisions>::iterator const& collision, soa::Join<aod::JetTracks, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TracksExtra, aod::TracksDCA, aod::pidTOFbeta, aod::pidTOFmass, o2::aod::TrackSelection> const& tracks)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hi Yuto. It is not clear why all these table subscriptions are needed? For example why do you need TracksExtra, tracksDCA and TrackSelection?
Also please seperate JetTracks and the pidTables into seperate calls and get the pid from track.tracks_as<>(). For this you will need to join JTrackPIs to JetTracks

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Dear Nima,

Thank you for the feedback.

The trackExtra and trackDCA are necessary to access track.dcaXY and track.tpcSignal for applying additional track cuts and QA.

As for the trackSelection table, keeping it was an oversight in the previous change.

I will proceed with separating the jetTracks and pid tables.

Comment thread PWGJE/Tasks/jetShape.cxx Outdated
PROCESS_SWITCH(JetShapeTask, processReco, "process reconstructed simulation information", true);

void processSim(soa::Join<aod::McCollisions, aod::McCentFT0Ms>::iterator const& mcCollision, aod::ChargedMCParticleLevelJets const& mcpjets, aod::McParticles const& mcParticles)
void processSim(soa::Join<aod::McCollisions, aod::McCentFT0Ms>::iterator const& mcCollision,
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

why are these not using the JE framework?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This appears as a change due to a line break, but I am simply using mcpjet here.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

But why not use JetMcCollisions and JetParticles too?

@nzardosh nzardosh enabled auto-merge (squash) January 15, 2026 17:06
@nzardosh nzardosh merged commit 44e31ff into AliceO2Group:master Jan 15, 2026
14 checks passed
FrancescaCasillo pushed a commit to FrancescaCasillo/O2Physics that referenced this pull request Jan 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants