@@ -90,6 +90,7 @@ struct HStrangeCorrelation {
9090 Configurable<int > mixingParameter{" mixingParameter" , 10 , " how many events are mixed" };
9191 Configurable<bool > doMCassociation{" doMCassociation" , false , " fill everything only for MC associated" };
9292 Configurable<bool > doTriggPhysicalPrimary{" doTriggPhysicalPrimary" , false , " require physical primary for trigger particles" };
93+ Configurable<bool > applyNewMCSelection{" applyNewMCSelection" , false , " apply new MC Generated selection" };
9394 } masterConfigurations;
9495
9596 // master analysis switches
@@ -2532,7 +2533,7 @@ struct HStrangeCorrelation {
25322533 }
25332534
25342535 // Perform basic event selection on both collisions
2535- if ((masterConfigurations.doPPAnalysis && (!isCollisionSelected (collision1) || !isCollisionSelected (collision2))) || (!masterConfigurations.doPPAnalysis && (!isCollisionSelectedPbPb (collision1, true ) || (!isCollisionSelectedPbPb (collision2, true ))))) {
2536+ if ((masterConfigurations.doPPAnalysis && (!isCollisionSelected (collision1) || !isCollisionSelected (collision2))) || (!masterConfigurations.doPPAnalysis && (!isCollisionSelectedPbPb (collision1, false ) || (!isCollisionSelectedPbPb (collision2, false ))))) {
25362537 continue ;
25372538 }
25382539 if (cent1 > axisRanges[5 ][1 ] || cent1 < axisRanges[5 ][0 ])
@@ -2588,7 +2589,7 @@ struct HStrangeCorrelation {
25882589 }
25892590
25902591 // Perform basic event selection on both collisions
2591- if ((masterConfigurations.doPPAnalysis && (!isCollisionSelected (collision1) || !isCollisionSelected (collision2))) || (!masterConfigurations.doPPAnalysis && (!isCollisionSelectedPbPb (collision1, true ) || (!isCollisionSelectedPbPb (collision2, true ))))) {
2592+ if ((masterConfigurations.doPPAnalysis && (!isCollisionSelected (collision1) || !isCollisionSelected (collision2))) || (!masterConfigurations.doPPAnalysis && (!isCollisionSelectedPbPb (collision1, false ) || (!isCollisionSelectedPbPb (collision2, false ))))) {
25922593 continue ;
25932594 }
25942595 if (cent1 > axisRanges[5 ][1 ] || cent1 < axisRanges[5 ][0 ])
@@ -2706,16 +2707,21 @@ struct HStrangeCorrelation {
27062707 float bestCollisionVtxZ = 0 .0f ;
27072708 bool bestCollisionSel8 = false ;
27082709 bool bestCollisionINELgtZERO = false ;
2710+ bool isCollisionSelect = false ;
27092711 uint32_t bestCollisionTriggerPresenceMap = 0 ;
27102712
27112713 for (auto const & collision : collisions) {
27122714 if (biggestNContribs < collision.numContrib ()) {
27132715 biggestNContribs = collision.numContrib ();
27142716 bestCollisionFT0Mpercentile = collision.centFT0M ();
27152717 bestCollisionFT0Cpercentile = collision.centFT0C ();
2716- bestCollisionSel8 = collision.sel8 ();
2717- bestCollisionVtxZ = collision.posZ ();
2718- bestCollisionINELgtZERO = collision.isInelGt0 ();
2718+ if (masterConfigurations.applyNewMCSelection ) {
2719+ isCollisionSelect = ((masterConfigurations.doPPAnalysis && isCollisionSelected (collision)) || (!masterConfigurations.doPPAnalysis && isCollisionSelectedPbPb (collision, false )));
2720+ } else {
2721+ bestCollisionSel8 = collision.sel8 ();
2722+ bestCollisionVtxZ = collision.posZ ();
2723+ bestCollisionINELgtZERO = collision.isInelGt0 ();
2724+ }
27192725 if (triggerPresenceMap.size () > 0 )
27202726 bestCollisionTriggerPresenceMap = triggerPresenceMap[collision.globalIndex ()];
27212727 }
@@ -2745,12 +2751,17 @@ struct HStrangeCorrelation {
27452751 if (triggerPresenceMap.size () > 0 && !TESTBIT (bestCollisionTriggerPresenceMap, triggerBinToSelect)) {
27462752 return ;
27472753 }
2748- if (!bestCollisionSel8)
2749- return ;
2750- if (std::abs (bestCollisionVtxZ) > masterConfigurations.zVertexCut )
2751- return ;
2752- if (!bestCollisionINELgtZERO)
2753- return ;
2754+ if (masterConfigurations.applyNewMCSelection ) {
2755+ if (!isCollisionSelect)
2756+ return ;
2757+ } else {
2758+ if (!bestCollisionSel8)
2759+ return ;
2760+ if (std::abs (bestCollisionVtxZ) > masterConfigurations.zVertexCut )
2761+ return ;
2762+ if (!bestCollisionINELgtZERO)
2763+ return ;
2764+ }
27542765
27552766 histos.fill (HIST (" hClosureTestEventCounter" ), 3 .5f );
27562767
0 commit comments