@@ -64,8 +64,8 @@ using namespace o2::ml;
6464using namespace o2 ::framework;
6565using namespace o2 ::framework::expressions;
6666
67- using MultiCharmTracksPID = soa::Join<aod::MCharmCores, aod::MCharmPID >;
68- using MultiCharmTracksFull = soa::Join<aod::MCharmCores, aod::MCharmPID , aod::MCharmExtra>;
67+ using MultiCharmTracksPID = soa::Join<aod::MCharmCores, aod::MCharmIndices >;
68+ using MultiCharmTracksFull = soa::Join<aod::MCharmCores, aod::MCharmIndices , aod::MCharmExtra>;
6969
7070struct Alice3Multicharm {
7171 HistogramRegistry histos{" histos" , {}, OutputObjHandlingPolicy::AnalysisObject};
@@ -179,44 +179,6 @@ struct Alice3Multicharm {
179179 hMCharmBuilding->GetXaxis ()->SetBinLabel (21 , " xiccMaxProperLength" );
180180 hMCharmBuilding->GetXaxis ()->SetBinLabel (22 , " xicMinDecayDistanceFromPV" );
181181
182- if (doprocessXiccPID || doprocessXiccExtra) {
183- auto hPdgCodes = histos.add <TH2>(" PIDQA/hPdgCodes" , " hPdgCodes" , kTH2D , {{3 , 0.5 , 3.5 }, {7 , 0.5 , 7.5 }});
184- hPdgCodes->GetXaxis ()->SetBinLabel (1 , " pi1c" );
185- hPdgCodes->GetXaxis ()->SetBinLabel (2 , " pi2c" );
186- hPdgCodes->GetXaxis ()->SetBinLabel (3 , " picc" );
187- hPdgCodes->GetYaxis ()->SetBinLabel (1 , " el" );
188- hPdgCodes->GetYaxis ()->SetBinLabel (2 , " mu" );
189- hPdgCodes->GetYaxis ()->SetBinLabel (3 , " pi" );
190- hPdgCodes->GetYaxis ()->SetBinLabel (4 , " ka" );
191- hPdgCodes->GetYaxis ()->SetBinLabel (5 , " pr" );
192- hPdgCodes->GetYaxis ()->SetBinLabel (6 , " xi" );
193- hPdgCodes->GetYaxis ()->SetBinLabel (7 , " other" );
194- pdgToBin.insert ({kElectron , 1 });
195- pdgToBin.insert ({kMuonMinus , 2 });
196- pdgToBin.insert ({kPiPlus , 3 });
197- pdgToBin.insert ({kKPlus , 4 });
198- pdgToBin.insert ({kProton , 5 });
199- pdgToBin.insert ({kXiMinus , 6 });
200-
201- histos.add (" PIDQA/hInnerTofTimeDeltaPi1c" , " hInnerTofTimeDeltaPi1c; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
202- histos.add (" PIDQA/hInnerTofTimeDeltaPi2c" , " hInnerTofTimeDeltaPi2c; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
203- histos.add (" PIDQA/hInnerTofTimeDeltaPicc" , " hInnerTofTimeDeltaPicc; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
204- histos.add (" PIDQA/hOuterTofTimeDeltaPi1c" , " hOuterTofTimeDeltaPi1c; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
205- histos.add (" PIDQA/hOuterTofTimeDeltaPi2c" , " hOuterTofTimeDeltaPi2c; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
206- histos.add (" PIDQA/hOuterTofTimeDeltaPicc" , " hOuterTofTimeDeltaPicc; Reco - expected pion (ps)" , kTH1D , {axisTofTrackDelta});
207-
208- histos.add (" PIDQA/hInnerTofNSigmaPi1c" , " hInnerTofNSigmaPi1c; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
209- histos.add (" PIDQA/hOuterTofNSigmaPi1c" , " hOuterTofNSigmaPi1c; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
210- histos.add (" PIDQA/hInnerTofNSigmaPi2c" , " hInnerTofNSigmaPi2c; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
211- histos.add (" PIDQA/hOuterTofNSigmaPi2c" , " hOuterTofNSigmaPi2c; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
212- histos.add (" PIDQA/hInnerTofNSigmaPicc" , " hInnerTofNSigmaPicc; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
213- histos.add (" PIDQA/hOuterTofNSigmaPicc" , " hOuterTofNSigmaPicc; TOF NSigma pion" , kTH2D , {axisPt, axisNSigma});
214-
215- histos.add (" PIDQA/hRichNSigmaPi1c" , " hRichNSigmaPi1c; RICH NSigma pion" , kTH2D , {axisPt, axisNSigma});
216- histos.add (" PIDQA/hRichNSigmaPi2c" , " hRichNSigmaPi2c; RICH NSigma pion" , kTH2D , {axisPt, axisNSigma});
217- histos.add (" PIDQA/hRichNSigmaPicc" , " hRichNSigmaPicc; RICH NSigma pion" , kTH2D , {axisPt, axisNSigma});
218- }
219-
220182 if (doprocessXiccExtra) {
221183 histos.add (" XiccProngs/h3dPos" , " h3dPos; Xicc pT (GeV/#it(c)); Pos pT (GeV/#it(c)); Pos #eta" , kTH3D , {axisPt, axisPt, axisEta});
222184 histos.add (" XiccProngs/h3dNeg" , " h3dNeg; Xicc pT (GeV/#it(c)); Neg pT (GeV/#it(c)); Neg #eta" , kTH3D , {axisPt, axisPt, axisEta});
@@ -282,12 +244,6 @@ struct Alice3Multicharm {
282244 }
283245 }
284246
285- int getBin (const std::map<int , int >& pdgToBin, int pdg)
286- {
287- auto it = pdgToBin.find (pdg);
288- return (it != pdgToBin.end ()) ? it->second : 7 ;
289- }
290-
291247 template <typename TMCharmCands>
292248 void genericProcessXicc (TMCharmCands const & xiccCands)
293249 {
@@ -502,34 +458,6 @@ struct Alice3Multicharm {
502458 histos.fill (HIST (" SelectionQA/hPi2cPt" ), xiccCand.pi2cPt ());
503459 histos.fill (HIST (" SelectionQA/hPiccPt" ), xiccCand.piccPt ());
504460
505- if constexpr (requires { xiccCand.pi1cTofDeltaInner (); }) { // if pid table
506- histos.fill (HIST (" PIDQA/hInnerTofTimeDeltaPi1c" ), xiccCand.pi1cTofDeltaInner ());
507- histos.fill (HIST (" PIDQA/hInnerTofTimeDeltaPi2c" ), xiccCand.pi2cTofDeltaInner ());
508- histos.fill (HIST (" PIDQA/hInnerTofTimeDeltaPicc" ), xiccCand.piccTofDeltaInner ());
509- histos.fill (HIST (" PIDQA/hOuterTofTimeDeltaPi1c" ), xiccCand.pi1cTofDeltaOuter ());
510- histos.fill (HIST (" PIDQA/hOuterTofTimeDeltaPi2c" ), xiccCand.pi2cTofDeltaOuter ());
511- histos.fill (HIST (" PIDQA/hOuterTofTimeDeltaPicc" ), xiccCand.piccTofDeltaOuter ());
512- histos.fill (HIST (" PIDQA/hInnerTofNSigmaPi1c" ), xiccCand.pi1cPt (), xiccCand.pi1cTofNSigmaInner ());
513- histos.fill (HIST (" PIDQA/hOuterTofNSigmaPi1c" ), xiccCand.pi1cPt (), xiccCand.pi1cTofNSigmaOuter ());
514- histos.fill (HIST (" PIDQA/hInnerTofNSigmaPi2c" ), xiccCand.pi2cPt (), xiccCand.pi2cTofNSigmaInner ());
515- histos.fill (HIST (" PIDQA/hOuterTofNSigmaPi2c" ), xiccCand.pi2cPt (), xiccCand.pi2cTofNSigmaOuter ());
516- histos.fill (HIST (" PIDQA/hInnerTofNSigmaPicc" ), xiccCand.piccPt (), xiccCand.piccTofNSigmaInner ());
517- histos.fill (HIST (" PIDQA/hOuterTofNSigmaPicc" ), xiccCand.piccPt (), xiccCand.piccTofNSigmaOuter ());
518- if (xiccCand.pi1cHasRichSignal ()) {
519- histos.fill (HIST (" PIDQA/hRichNSigmaPi1c" ), xiccCand.pi1cPt (), xiccCand.pi1cRichNSigma ());
520- }
521- if (xiccCand.pi2cHasRichSignal ()) {
522- histos.fill (HIST (" PIDQA/hRichNSigmaPi2c" ), xiccCand.pi2cPt (), xiccCand.pi2cRichNSigma ());
523- }
524- if (xiccCand.piccHasRichSignal ()) {
525- histos.fill (HIST (" PIDQA/hRichNSigmaPicc" ), xiccCand.piccPt (), xiccCand.piccRichNSigma ());
526- }
527-
528- histos.fill (HIST (" PIDQA/hPdgCodes" ), 1 , getBin (pdgToBin, std::abs (xiccCand.pi1cPdgCode ())));
529- histos.fill (HIST (" PIDQA/hPdgCodes" ), 2 , getBin (pdgToBin, std::abs (xiccCand.pi2cPdgCode ())));
530- histos.fill (HIST (" PIDQA/hPdgCodes" ), 3 , getBin (pdgToBin, std::abs (xiccCand.piccPdgCode ())));
531- }
532-
533461 if constexpr (requires { xiccCand.negPt (); }) { // if extra table
534462 histos.fill (HIST (" XiccProngs/h3dNeg" ), xiccCand.xiccPt (), xiccCand.negPt (), xiccCand.negEta ());
535463 histos.fill (HIST (" XiccProngs/h3dPos" ), xiccCand.xiccPt (), xiccCand.posPt (), xiccCand.posEta ());
@@ -552,18 +480,12 @@ struct Alice3Multicharm {
552480 genericProcessXicc (multiCharmTracks);
553481 }
554482
555- void processXiccPID (soa::Filtered<MultiCharmTracksPID> const & multiCharmTracks)
556- {
557- genericProcessXicc (multiCharmTracks);
558- }
559-
560483 void processXiccExtra (soa::Filtered<MultiCharmTracksFull> const & multiCharmTracks)
561484 {
562485 genericProcessXicc (multiCharmTracks);
563486 }
564487
565488 PROCESS_SWITCH (Alice3Multicharm, processXicc, " find Xicc baryons" , true );
566- PROCESS_SWITCH (Alice3Multicharm, processXiccPID, " find Xicc baryons with more QA from PID information" , false );
567489 PROCESS_SWITCH (Alice3Multicharm, processXiccExtra, " find Xicc baryons with all QA" , false );
568490};
569491
0 commit comments