[PWGJE] Add missing event selection to processReco in jetShape task#14280
[PWGJE] Add missing event selection to processReco in jetShape task#14280nzardosh merged 4 commits intoAliceO2Group:masterfrom
Conversation
|
O2 linter results: ❌ 0 errors, |
PWGJE/Tasks/jetShape.cxx
Outdated
|
|
||
| float centrality = collision.centFT0M(); | ||
| float rho = collision.rho(); | ||
| // float rho = collision.rho(); |
There was a problem hiding this comment.
why is rho subtraction removed?
There was a problem hiding this comment.
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.
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()) |
There was a problem hiding this comment.
why is sel8 hardcoded? I assume this should also use ?
if (!jetderiveddatautilities::selectCollision(collision, eventSelectionBits))There was a problem hiding this comment.
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~.
PWGJE/Tasks/jetShape.cxx
Outdated
| registry.fill(HIST("trackEta"), track.eta()); | ||
| registry.fill(HIST("trackPhi"), track.phi()); | ||
|
|
||
| if (!track.isGlobalTrack()) { |
There was a problem hiding this comment.
why is this hardcoded rather than using je track selection like for the other process functions?
There was a problem hiding this comment.
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.)
PWGJE/Tasks/jetShape.cxx
Outdated
|
|
||
| for (const auto& track : tracks) { | ||
|
|
||
| if (!track.isGlobalTrack()) |
There was a problem hiding this comment.
should probably not be hard coded
| for (const auto& jet : jets) { | ||
| registry.fill(HIST("jetPt"), jet.pt()); | ||
|
|
||
| float mcdPtCorr = jet.pt() - rho * jet.area(); |
There was a problem hiding this comment.
same comment as above
There was a problem hiding this comment.
Related to the first comment, I have restored this.
|
@nzardosh |
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) |
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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.
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, |
There was a problem hiding this comment.
why are these not using the JE framework?
There was a problem hiding this comment.
This appears as a change due to a line break, but I am simply using mcpjet here.
There was a problem hiding this comment.
But why not use JetMcCollisions and JetParticles too?
Added missing event and track selections to the recently introduced process.