Skip to content

Commit 3e676fc

Browse files
authored
[PWGLF] modified definition of ITS-TPC matching eff (#10265)
1 parent fe46cc4 commit 3e676fc

File tree

1 file changed

+20
-8
lines changed

1 file changed

+20
-8
lines changed

PWGLF/Tasks/QC/lfITSTPCMatchingSecondaryTracksQA.cxx

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ struct LfITSTPCMatchingSecondaryTracksQA {
6161
Configurable<double> zVtx{"zVtx", 10.0, "Maximum zVertex"};
6262

6363
// Track Parameters
64-
Configurable<float> minITSnCls{"minITSnCls", 3.0f, "min number of ITS clusters"};
64+
Configurable<float> minITSnCls{"minITSnCls", 1.0f, "min number of ITS clusters"};
6565
Configurable<float> minNCrossedRowsTPC{"minNCrossedRowsTPC", 80.0f, "min number of TPC crossed rows"};
6666
Configurable<float> minNCrossedRowsOverFindable{"minNCrossedRowsOverFindable", 0.8f, "min number of TPC crossed rows/findable"};
6767
Configurable<float> maxChi2TPC{"maxChi2TPC", 4.0f, "max chi2 per cluster TPC"};
@@ -211,15 +211,27 @@ struct LfITSTPCMatchingSecondaryTracksQA {
211211
template <typename ItsTrack>
212212
bool passedTrackSelectionIts(const ItsTrack& track)
213213
{
214+
/*
214215
if (!track.hasITS())
215216
return false;
216217
if (track.itsNCls() < minITSnCls)
217218
return false;
218219
if (track.itsChi2NCl() > maxChi2ITS)
219220
return false;
221+
*/
220222

221-
auto requiredItsHit = static_cast<std::vector<float>>(requiredHit);
223+
if (track.itsNCls() < minITSnCls)
224+
return false;
222225

226+
bool hasHitOnAnyLayer = false;
227+
for (int i = 0; i < 7; i++) {
228+
if (hasHitOnITSlayer(track.itsClusterMap(), i))
229+
hasHitOnAnyLayer = true;
230+
}
231+
if (!hasHitOnAnyLayer)
232+
return false;
233+
234+
auto requiredItsHit = static_cast<std::vector<float>>(requiredHit);
223235
if (requireItsHits) {
224236
for (int i = 0; i < 7; i++) {
225237
if (requiredItsHit[i] > 0 && !hasHitOnITSlayer(track.itsClusterMap(), i)) {
@@ -250,7 +262,7 @@ struct LfITSTPCMatchingSecondaryTracksQA {
250262
// Secondary Tracks
251263
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track))
252264
registryData.fill(HIST("secPionTPC"), track.pt(), track.eta(), TVector2::Phi_0_2pi(track.phi()));
253-
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track) && track.hasITS())
265+
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track) && passedTrackSelectionIts(track))
254266
registryData.fill(HIST("secPionTPC_ITS"), track.pt(), track.eta(), TVector2::Phi_0_2pi(track.phi()));
255267
}
256268

@@ -265,9 +277,9 @@ struct LfITSTPCMatchingSecondaryTracksQA {
265277
registryData.fill(HIST("secPionV0TPC"), posTrack.pt(), posTrack.eta(), TVector2::Phi_0_2pi(posTrack.phi()));
266278
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack))
267279
registryData.fill(HIST("secPionV0TPC"), negTrack.pt(), negTrack.eta(), TVector2::Phi_0_2pi(negTrack.phi()));
268-
if (passedTrackSelectionV0daughTPC(posTrack) && passedPionSelection(posTrack) && posTrack.hasITS())
280+
if (passedTrackSelectionV0daughTPC(posTrack) && passedPionSelection(posTrack) && passedTrackSelectionIts(posTrack))
269281
registryData.fill(HIST("secPionV0TPC_ITS"), posTrack.pt(), posTrack.eta(), TVector2::Phi_0_2pi(posTrack.phi()));
270-
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack) && negTrack.hasITS())
282+
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack) && passedTrackSelectionIts(negTrack))
271283
registryData.fill(HIST("secPionV0TPC_ITS"), negTrack.pt(), negTrack.eta(), TVector2::Phi_0_2pi(negTrack.phi()));
272284
}
273285
}
@@ -299,7 +311,7 @@ struct LfITSTPCMatchingSecondaryTracksQA {
299311
// Secondary Tracks
300312
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track))
301313
registryMC.fill(HIST("secPionTPC_MC"), track.pt(), track.eta(), TVector2::Phi_0_2pi(track.phi()));
302-
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track) && track.hasITS())
314+
if (passedTrackSelectionTpcSecondary(track) && passedPionSelection(track) && passedTrackSelectionIts(track))
303315
registryMC.fill(HIST("secPionTPC_ITS_MC"), track.pt(), track.eta(), TVector2::Phi_0_2pi(track.phi()));
304316
}
305317

@@ -314,9 +326,9 @@ struct LfITSTPCMatchingSecondaryTracksQA {
314326
registryMC.fill(HIST("secPionV0TPC_MC"), posTrack.pt(), posTrack.eta(), TVector2::Phi_0_2pi(posTrack.phi()));
315327
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack))
316328
registryMC.fill(HIST("secPionV0TPC_MC"), negTrack.pt(), negTrack.eta(), TVector2::Phi_0_2pi(negTrack.phi()));
317-
if (passedTrackSelectionV0daughTPC(posTrack) && passedPionSelection(posTrack) && posTrack.hasITS())
329+
if (passedTrackSelectionV0daughTPC(posTrack) && passedPionSelection(posTrack) && passedTrackSelectionIts(posTrack))
318330
registryMC.fill(HIST("secPionV0TPC_ITS_MC"), posTrack.pt(), posTrack.eta(), TVector2::Phi_0_2pi(posTrack.phi()));
319-
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack) && negTrack.hasITS())
331+
if (passedTrackSelectionV0daughTPC(negTrack) && passedPionSelection(negTrack) && passedTrackSelectionIts(negTrack))
320332
registryMC.fill(HIST("secPionV0TPC_ITS_MC"), negTrack.pt(), negTrack.eta(), TVector2::Phi_0_2pi(negTrack.phi()));
321333
}
322334
}

0 commit comments

Comments
 (0)