@@ -71,9 +71,11 @@ class FemtoDreamParticleHisto
7171 mHistogramRegistry ->add ((folderName + folderSuffix + " /hpTInvMassAntiLambda" ).c_str (), " ; M_{#bar{#Lambda}}; Entries" , kTH2F , {pTAxis, InvMassAxis});
7272 mHistogramRegistry ->add ((folderName + folderSuffix + " /hInvMassLambdaAntiLambda" ).c_str (), " ; M_{#Lambda}; M_{#bar{#Lambda}}" , kTH2F , {InvMassAxis, InvMassAxis});
7373 }
74- if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade ) {
74+ if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade && mc == o2::aod::femtodreamMCparticle::MCType:: kRecon ) {
7575 mHistogramRegistry ->add ((folderName + folderSuffix + " /hInvMassCascade" ).c_str (), " ; M_{Cascade}; Entries" , kTH1F , {InvMassAxis});
7676 mHistogramRegistry ->add ((folderName + folderSuffix + " /hpTInvMassCascade" ).c_str (), " ; p_{T} (GeV/#it{c{}); M_{Cascade}" , kTH2F , {pTAxis, InvMassAxis});
77+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hInvMassCascadeV0Daugh" ).c_str (), " ; M_{Cascade}; Entries" , kTH1F , {InvMassAxis});
78+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hpTInvMassCascadeV0Daugh" ).c_str (), " ; p_{T} (GeV/#it{c{}); M_{Cascade}" , kTH2F , {pTAxis, InvMassAxis});
7779 }
7880 if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kReso ) {
7981 mHistogramRegistry ->add ((folderName + folderSuffix + " /hInvMassReso" ).c_str (), " ; M_{Reso}; Entries" , kTH1F , {InvMassAxis}); // added for Phi !!
@@ -271,7 +273,15 @@ class FemtoDreamParticleHisto
271273 // / to be implemented
272274 } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade ) {
273275 // / Cascade histograms
274- // / to be implemented
276+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Primary" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
277+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Secondary" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
278+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Material" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
279+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_WrongCollision" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
280+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Fake" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
281+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Else" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
282+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Secondary_OMEGAMinus" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
283+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Secondary_XIStar0" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
284+ mHistogramRegistry ->add ((folderName + folderSuffix + " /hCPA_Secondary_XIStarMinus" ).c_str (), " ; #it{p}_{T} (GeV/#it{c}); CPA" , kTH2F , {tempFitVarpTAxis, tempFitVarAxis});
275285 } else {
276286 LOG (fatal) << " FemtoDreamParticleHisto: Histogramming for requested object not defined - quitting!" ;
277287 }
@@ -360,11 +370,11 @@ class FemtoDreamParticleHisto
360370 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hpTInvMassAntiLambda" ), part.pt (), part.mAntiLambda ());
361371 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hInvMassLambdaAntiLambda" ), part.mLambda (), part.mAntiLambda ());
362372 }
363- if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade ) {
373+ if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade && mc == o2::aod::femtodreamMCparticle::MCType:: kRecon ) {
364374 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hInvMassCascade" ), part.mLambda ());
365375 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hpTInvMassCascade" ), part.pt (), part.mLambda ());
366- // mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST(o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST("/hInvMassCascade "), part.mLambda ());
367- // mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST(o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST("/hpTInvMassCascade "), part.pt(), part.mLambda ());
376+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hInvMassCascadeV0Daugh " ), part.mAntiLambda ());
377+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hpTInvMassCascadeV0Daugh " ), part.pt (), part.mAntiLambda ());
368378 }
369379 if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kReso ) {
370380 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (o2::aod::femtodreamMCparticle::MCTypeName[mc]) + HIST (" /hInvMassReso" ), part.mLambda ()); // currently no MC for Phi!!
@@ -564,7 +574,7 @@ class FemtoDreamParticleHisto
564574 if (std::abs (pdgcode) == mPDG ) { // fill this histogramm only for TRUE protons (independently of their origin) for the track purity estimation
565575 mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hPt_ReconNoFake" ), part.pt ());
566576 }
567- if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kTrack || mParticleType == o2::aod::femtodreamparticle::ParticleType::kV0Child ) {
577+ if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kTrack || mParticleType == o2::aod::femtodreamparticle::ParticleType::kV0Child || mParticleType == o2::aod::femtodreamparticle::ParticleType:: kCascadeV0Child || mParticleType == o2::aod::femtodreamparticle::ParticleType:: kCascadeBachelor ) {
568578 // / Track histograms
569579 if constexpr (isDebug) {
570580 switch (mctruthorigin) {
@@ -735,6 +745,47 @@ class FemtoDreamParticleHisto
735745 }
736746 }
737747 } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade ) {
748+ switch (mctruthorigin) {
749+ case (o2::aod::femtodreamMCparticle::kPrimary ):
750+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Primary" ),
751+ part.pt (), part.tempFitVar ());
752+ break ;
753+ case (o2::aod::femtodreamMCparticle::kSecondary ):
754+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Secondary" ),
755+ part.pt (), part.tempFitVar ());
756+ break ;
757+ case (o2::aod::femtodreamMCparticle::kMaterial ):
758+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Material" ),
759+ part.pt (), part.tempFitVar ());
760+ break ;
761+ case (o2::aod::femtodreamMCparticle::kWrongCollision ):
762+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_WrongCollision" ),
763+ part.pt (), part.tempFitVar ());
764+ break ;
765+ case (o2::aod::femtodreamMCparticle::kFake ):
766+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Fake" ),
767+ part.pt (), part.tempFitVar ());
768+ break ;
769+ case (o2::aod::femtodreamMCparticle::kElse ):
770+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Else" ),
771+ part.pt (), part.tempFitVar ());
772+ break ;
773+ case (o2::aod::femtodreamMCparticle::kSecondaryDaughterOmegaMinus ):
774+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Secondary_OMEGAMinus" ),
775+ part.pt (), part.tempFitVar ());
776+ break ;
777+ case (o2::aod::femtodreamMCparticle::kSecondaryDaughterXistar0 ):
778+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Secondary_XIStar0" ),
779+ part.pt (), part.tempFitVar ());
780+ break ;
781+ case (o2::aod::femtodreamMCparticle::kSecondaryDaughterXistarMinus ):
782+ mHistogramRegistry ->fill (HIST (o2::aod::femtodreamparticle::ParticleTypeName[mParticleType ]) + HIST (mFolderSuffix [mFolderSuffixType ]) + HIST (" _MC/hCPA_Secondary_XIStarMinus" ),
783+ part.pt (), part.tempFitVar ());
784+ break ;
785+ default :
786+ LOG (fatal) << " femtodreamparticleMC: not known value for ParticleOriginMCTruth - please check. Quitting!" ;
787+ }
788+
738789 // / Cascade histograms
739790 } else {
740791 LOG (fatal) << " FemtoDreamParticleHisto: Histogramming for requested object not defined - quitting!" ;
0 commit comments