@@ -60,15 +60,19 @@ struct JetShapeTask {
6060 HistogramRegistry registry{" registry" ,
6161 {{" tpcTofPi" , " tpcTofPi" , {HistType::kTHnSparseD , {{35 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}, {nBinsDistance, 0 , distanceMax}}}},
6262 {" tpcTofPr" , " tpcTofPr" , {HistType::kTHnSparseD , {{35 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}, {nBinsDistance, 0 , distanceMax}}}},
63+ {" tpcTofPiOutOfJet" , " tpcTofPiOutOfJet" , {HistType::kTH2F , {{35 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
64+ {" tpcTofPrOutOfJet" , " tpcTofPrOutOfJet" , {HistType::kTH2F , {{35 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6365 {" tpcPi" , " tpcPi" , {HistType::kTH2F , {{70 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6466 {" tofPi" , " tofPi" , {HistType::kTH2F , {{50 , 0 , ptMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6567 {" tpcPr" , " tpcPr" , {HistType::kTH2F , {{70 , 0 , pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6668 {" tofPr" , " tofPr" , {HistType::kTH2F , {{50 , 0 , ptMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6769 {" tpcDedx" , " tpcDedx" , {HistType::kTHnSparseD , {{nBinsPForDedx, 0 , pMax}, {nBinsTpcDedx, 0 , 1000 }, {nBinsDistance, 0 , distanceMax}}}},
6870 {" tpcDedxOutOfJet" , " tpcDedxOutOfJet" , {HistType::kTH2F , {{nBinsPForDedx, 0 , pMax}, {nBinsTpcDedx, 0 , 1000 }}}},
69- {" tofBeta" , " tofBeta" , {HistType::kTHnSparseD , {{nBinsPForBeta, 0 , pMax}, {nBinsTofBeta, 0.4 , 1.1 }, {nBinsDistance, 0 , distanceMax}}}},
70- {" pVsPtForProton" , " pVsPtForProton" , {HistType::kTHnSparseD , {{70 , 0 , pMax}, {50 , 0 , ptMax}, {nBinsDistance, 0 , distanceMax}}}},
71- {" pVsPtForPion" , " pVsPtPion" , {HistType::kTHnSparseD , {{70 , 0 , pMax}, {50 , 0 , ptMax}, {nBinsDistance, 0 , distanceMax}}}},
71+ {" tofBeta" , " tofBeta" , {HistType::kTH2F , {{nBinsPForBeta, 0 , pMax}, {nBinsTofBeta, 0.4 , 1.1 }}}},
72+ {" pVsPtForPr" , " pVsPtForPr" , {HistType::kTHnSparseD , {{70 , 0 , pMax}, {50 , 0 , ptMax}, {nBinsDistance, 0 , distanceMax}}}},
73+ {" pVsPtForPi" , " pVsPtPi" , {HistType::kTHnSparseD , {{70 , 0 , pMax}, {50 , 0 , ptMax}, {nBinsDistance, 0 , distanceMax}}}},
74+ {" pVsPtForPrOutOfJet" , " pVsPtForPrOutOfJet" , {HistType::kTH2F , {{70 , 0 , pMax}, {50 , 0 , ptMax}}}},
75+ {" pVsPtForPiOutOfJet" , " pVsPtPionOutOfJet" , {HistType::kTH2F , {{70 , 0 , pMax}, {50 , 0 , ptMax}}}},
7276 {" tofMass" , " tofMass" , {HistType::kTH1F , {{300 , 0 , 3 }}}},
7377 {" trackPhi" , " trackPhi" , {HistType::kTH1F , {{80 , -1 , 7 }}}},
7478 {" trackEta" , " trackEta" , {HistType::kTH1F , {{100 , -1 , 1 }}}},
@@ -298,8 +302,6 @@ struct JetShapeTask {
298302
299303 // PID check
300304 registry.fill (HIST (" tofMass" ), track.mass ());
301-
302- // for calculate purity
303305 registry.fill (HIST (" tpcPi" ), track.p (), track.tpcNSigmaPi ());
304306 registry.fill (HIST (" tofPi" ), track.pt (), track.tofNSigmaPi ());
305307 registry.fill (HIST (" tpcPr" ), track.p (), track.tpcNSigmaPr ());
@@ -324,30 +326,42 @@ struct JetShapeTask {
324326 float deltaPhiBg2 = RecoDecay::constrainAngle (preDeltaPhiBg2, -o2::constants::math::PI);
325327
326328 // Calculate distance to background cone axes
327- // Note: deltaEta is the same for all cones at the same eta
328329 float distanceBg1 = std::sqrt (deltaEta * deltaEta + deltaPhiBg1 * deltaPhiBg1);
329330 float distanceBg2 = std::sqrt (deltaEta * deltaEta + deltaPhiBg2 * deltaPhiBg2);
330331
331332 // Fill histogram if track is inside one of the perpendicular cones
332333 if (distanceBg1 < jetR || distanceBg2 < jetR) {
333334 registry.fill (HIST (" tpcDedxOutOfJet" ), track.p (), track.tpcSignal ());
335+
336+ if (std::abs (track.tofNSigmaPi ()) < nSigmaTofCut) {
337+ registry.fill (HIST (" tpcTofPiOutOfJet" ), track.p (), track.tpcNSigmaPi ());
338+ if (track.tpcNSigmaPi () > tpcNSigmaPiMin && track.tpcNSigmaPi () < tpcNSigmaPiMax) {
339+ registry.fill (HIST (" pVsPtForPiOutOfJet" ), track.p (), track.pt ());
340+ }
341+ }
342+ if (std::abs (track.tofNSigmaPr ()) < nSigmaTofCut) {
343+ registry.fill (HIST (" tpcTofPrOutOfJet" ), track.p (), track.tpcNSigmaPr ());
344+ if (track.tpcNSigmaPr () > tpcNSigmaPrMin && track.tpcNSigmaPr () < tpcNSigmaPrMax) {
345+ registry.fill (HIST (" pVsPtForPrOutOfJet" ), track.p (), track.pt ());
346+ }
347+ }
334348 }
335349
336350 registry.fill (HIST (" distanceVsTrackpt" ), distance, track.pt ());
337351 registry.fill (HIST (" tpcDedx" ), track.p (), track.tpcSignal (), distance);
338- registry.fill (HIST (" tofBeta" ), track.p (), track.beta (), distance );
352+ registry.fill (HIST (" tofBeta" ), track.p (), track.beta ());
339353
340354 if (std::abs (track.tofNSigmaPr ()) < nSigmaTofCut) {
341355 registry.fill (HIST (" tpcTofPr" ), track.p (), track.tpcNSigmaPr (), distance);
342356 if (track.tpcNSigmaPr () > tpcNSigmaPrMin && track.tpcNSigmaPr () < tpcNSigmaPrMax) {
343- registry.fill (HIST (" pVsPtForProton " ), track.p (), track.pt (), distance);
357+ registry.fill (HIST (" pVsPtForPr " ), track.p (), track.pt (), distance);
344358 }
345359 }
346360
347361 if (std::abs (track.tofNSigmaPi ()) < nSigmaTofCut) {
348362 registry.fill (HIST (" tpcTofPi" ), track.p (), track.tpcNSigmaPi (), distance);
349363 if (track.tpcNSigmaPi () > tpcNSigmaPiMin && track.tpcNSigmaPi () < tpcNSigmaPiMax) {
350- registry.fill (HIST (" pVsPtForPion " ), track.p (), track.pt (), distance);
364+ registry.fill (HIST (" pVsPtForPi " ), track.p (), track.pt (), distance);
351365 }
352366 }
353367 }
0 commit comments