@@ -426,6 +426,8 @@ struct CascadeCorrelations {
426426 {" MixedEvents/hMEDeltaPhiSS" , " hMEDeltaPhiSS" , {HistType::kTH1F , {deltaPhiAxis}}},
427427 {" MixedEvents/hMEDeltaPhiOS" , " hMEDeltaPhiOS" , {HistType::kTH1F , {deltaPhiAxis}}},
428428 {" MixedEvents/hMEQA" , " hMEQA" , {HistType::kTH1I , {{2 , 0 , 2 , " QA for exceptions in ME (this histogram should have 0 entries!)" }}}},
429+ {" MixedEvents/hMEAutoCorrelation" , " hMEAutoCorrelation" , {HistType::kTH1I , {{4 , -0 .5f , 3 .5f , " Types of SS autocorrelation" }}}},
430+ {" MixedEvents/hMEAutoCorrelationOS" , " hMEAutoCorrelationOS" , {HistType::kTH1I , {{2 , -1 .f , 1 .f , " Charge of OS autocorrelated track" }}}},
429431
430432 {" MixedEvents/hMEXiXiOS" , " hMEXiXiOS" , {HistType::kTHnSparseF , {deltaPhiAxis, deltaYAxis, ptAxis, ptAxis, invMassAxis, invMassAxis, vertexAxis, multiplicityAxis}}, true },
431433 {" MixedEvents/hMEXiXiSS" , " hMEXiXiSS" , {HistType::kTHnSparseF , {deltaPhiAxis, deltaYAxis, ptAxis, ptAxis, invMassAxis, invMassAxis, vertexAxis, multiplicityAxis}}, true },
@@ -441,9 +443,15 @@ struct CascadeCorrelations {
441443 // cascade filter
442444 Filter cascadeSelector = aod::cascadeflags::isSelected > 0 ;
443445
446+ // Warning: it is not possible to use this axis as configurable due to a bug - however, default values are sensible.
444447 SliceCache cache;
445448 ConfigurableAxis axisVtxZ{" axisVtxZ" , {VARIABLE_WIDTH, -10 .0f , -8 .f , -6 .f , -4 .f , -2 .f , 0 .f , 2 .f , 4 .f , 6 .f , 8 .f , 10 .f }, " Mixing bins - z-vertex" };
446449 // ConfigurableAxis axisMult{"axisMult", {VARIABLE_WIDTH, 0, 5, 10, 20, 30, 40, 50, 100, 1000}, "Mixing bins - multiplicity"};
450+ // using BinningType = ColumnBinningPolicy<aod::collision::PosZ, aod::mult::MultFT0M<aod::mult::MultFT0A, aod::mult::MultFT0C>>;
451+ // BinningType colBinning{{axisVtxZ, axisMult}, true}; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
452+ using BinningType = ColumnBinningPolicy<aod::collision::PosZ>;
453+ BinningType colBinning{{axisVtxZ}, true }; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
454+ SameKindPair<MyCollisionsMult, MyCascades, BinningType> pair{colBinning, nMixedEvents, -1 , &cache};
447455
448456 void processSameEvent (MyCollisionsMult::iterator const & collision, MyCascades const & Cascades, aod::V0sLinked const &, aod::V0Datas const &, FullTracksExtIU const &, aod::BCsWithTimestamps const &)
449457 {
@@ -662,13 +670,6 @@ struct CascadeCorrelations {
662670 void processMixedEvent (MyCollisionsMult const & /* collisions*/ , MyCascades const & /* Cascades*/ ,
663671 aod::V0sLinked const &, aod::V0Datas const &, FullTracksExtIU const &)
664672 {
665- // mixed events
666- // using BinningType = ColumnBinningPolicy<aod::collision::PosZ, aod::mult::MultFT0M<aod::mult::MultFT0A, aod::mult::MultFT0C>>;
667- // BinningType colBinning{{axisVtxZ, axisMult}, true}; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
668- using BinningType = ColumnBinningPolicy<aod::collision::PosZ>;
669- BinningType colBinning{{axisVtxZ}, true }; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
670- SameKindPair<MyCollisionsMult, MyCascades, BinningType> pair{colBinning, nMixedEvents, -1 , &cache};
671-
672673 for (auto const & [col1, cascades1, col2, cascades2] : pair) {
673674 if (!col1.sel8 () || !col2.sel8 ())
674675 continue ;
@@ -719,24 +720,24 @@ struct CascadeCorrelations {
719720 if (trigger.isSelected () >= 2 ) {
720721 if (trigger.sign () > 0 && trigger.bachelorId () == posIdAssoc) {
721722 // K+ from trigger Omega is the same as proton from assoc lambda
722- registry.fill (HIST (" hAutoCorrelationOS " ), 1 );
723+ registry.fill (HIST (" hMEAutoCorrelationOS " ), 1 );
723724 continue ;
724725 }
725726 if (trigger.sign () < 0 && trigger.bachelorId () == negIdAssoc) {
726727 // K- from trigger Omega is the same as antiproton from assoc antilambda
727- registry.fill (HIST (" hAutoCorrelationOS " ), -1 );
728+ registry.fill (HIST (" hMEAutoCorrelationOS " ), -1 );
728729 continue ;
729730 }
730731 }
731732 if (assoc.isSelected () >= 2 ) {
732733 if (assoc.sign () > 0 && assoc.bachelorId () == posIdTrigg) {
733734 // K+ from assoc Omega is the same as proton from trigger lambda
734- registry.fill (HIST (" hAutoCorrelationOS " ), 1 );
735+ registry.fill (HIST (" hMEAutoCorrelationOS " ), 1 );
735736 continue ;
736737 }
737738 if (assoc.sign () < 0 && assoc.bachelorId () == negIdTrigg) {
738739 // K- from assoc Omega is the same as antiproton from trigger antilambda
739- registry.fill (HIST (" hAutoCorrelationOS " ), -1 );
740+ registry.fill (HIST (" hMEAutoCorrelationOS " ), -1 );
740741 continue ;
741742 }
742743 }
@@ -776,33 +777,33 @@ struct CascadeCorrelations {
776777 // make sure to check for autocorrelations - only possible in same-sign correlations (if PID is correct)
777778 if (posIdTrigg == posIdAssoc && negIdTrigg == negIdAssoc) {
778779 // LOGF(info, "same v0 in SS correlation! %d %d", v0dataTrigg.v0Id(), v0dataAssoc.v0Id());
779- registry.fill (HIST (" hAutoCorrelation " ), 0 );
780+ registry.fill (HIST (" hMEAutoCorrelation " ), 0 );
780781 continue ;
781782 }
782783 int bachIdTrigg = trigger.bachelorId ();
783784 int bachIdAssoc = assoc.bachelorId ();
784785
785786 if (bachIdTrigg == bachIdAssoc) {
786787 // LOGF(info, "same bachelor in SS correlation! %d %d", bachIdTrigg, bachIdAssoc);
787- registry.fill (HIST (" hAutoCorrelation " ), 1 );
788+ registry.fill (HIST (" hMEAutoCorrelation " ), 1 );
788789 continue ;
789790 }
790791 // check for same tracks in v0's of cascades
791792 if (negIdTrigg == negIdAssoc || posIdTrigg == posIdAssoc) {
792793 // LOGF(info, "cascades have a v0-track in common in SS correlation!");
793- registry.fill (HIST (" hAutoCorrelation " ), 2 );
794+ registry.fill (HIST (" hMEAutoCorrelation " ), 2 );
794795 continue ;
795796 }
796797 if (trigger.sign () < 0 ) { // neg cascade
797798 if (negIdTrigg == bachIdAssoc || negIdAssoc == bachIdTrigg) {
798799 // LOGF(info, "bach of casc == v0-pion of other casc in neg SS correlation!");
799- registry.fill (HIST (" hAutoCorrelation " ), 3 );
800+ registry.fill (HIST (" hMEAutoCorrelation " ), 3 );
800801 continue ;
801802 }
802803 } else { // pos cascade
803804 if (posIdTrigg == bachIdAssoc || posIdAssoc == bachIdTrigg) {
804805 // LOGF(info, "bach of casc == v0-pion of other casc in pos SS correlation!");
805- registry.fill (HIST (" hAutoCorrelation " ), 3 );
806+ registry.fill (HIST (" hMEAutoCorrelation " ), 3 );
806807 continue ;
807808 }
808809 }
@@ -840,7 +841,7 @@ struct CascadeCorrelations {
840841 } // same sign
841842 } // correlations
842843 } // collisions
843- } // process mixed events
844+ } // process mixed events
844845
845846 PROCESS_SWITCH (CascadeCorrelations, processSameEvent, " Process same events" , true );
846847 PROCESS_SWITCH (CascadeCorrelations, processMixedEvent, " Process mixed events" , true );
0 commit comments