@@ -197,6 +197,7 @@ struct HeavyionMultiplicity {
197197 Configurable<bool > isApplyNoCollInRofStandard{" isApplyNoCollInRofStandard" , false , " Enable NoCollInRofStandard cut" };
198198 Configurable<bool > isApplyNoHighMultCollInPrevRof{" isApplyNoHighMultCollInPrevRof" , false , " Enable NoHighMultCollInPrevRof cut" };
199199 Configurable<bool > isApplyInelgt0{" isApplyInelgt0" , false , " Enable INEL > 0 condition" };
200+ Configurable<bool > isApplyVtxCut{" isApplyVtxCut" , false , " Enable vertex cut condition" };
200201 Configurable<bool > isApplyFT0CbasedOccupancy{" isApplyFT0CbasedOccupancy" , false , " Enable FT0CbasedOccupancy cut" };
201202 Configurable<bool > isApplyCentFT0C{" isApplyCentFT0C" , true , " Centrality based on FT0C" };
202203 Configurable<bool > isApplyCentFV0A{" isApplyCentFV0A" , false , " Centrality based on FV0A" };
@@ -207,6 +208,7 @@ struct HeavyionMultiplicity {
207208 Configurable<bool > isApplyCentMFT{" isApplyCentMFT" , false , " Centrality based on MFT tracks" };
208209 Configurable<bool > isApplyTVX{" isApplyTVX" , false , " Enable TVX trigger sel" };
209210 Configurable<bool > isApplyExtraPhiCut{" isApplyExtraPhiCut" , false , " Enable extra phi cut" };
211+ Configurable<bool > isApplyBestCollIndex{" isApplyBestCollIndex" , true , " " };
210212
211213 Configurable<bool > selectCollidingBCs{" selectCollidingBCs" , true , " BC analysis: select colliding BCs" };
212214 Configurable<bool > selectTVX{" selectTVX" , true , " BC analysis: select TVX" };
@@ -357,6 +359,7 @@ struct HeavyionMultiplicity {
357359 histos.add (" hRecMCvertexZ" , " hRecMCvertexZ" , kTH1D , {axisVtxZ}, false );
358360 histos.add (" hRecMCvtxzcent" , " hRecMCvtxzcent" , kTH3D , {axisVtxZ, centAxis, axisOccupancy}, false );
359361 histos.add (" hRecMCcentrality" , " hRecMCcentrality" , kTH1D , {axisCent}, false );
362+ histos.add (" MCCentrality_vs_FT0C" , " MCCentrality_vs_FT0C" , kTH2F , {axisCent, axisFt0cMult}, true );
360363 histos.add (" hRecMCphivseta" , " hRecMCphivseta" , kTH2D , {axisPhi2, axisEta}, false );
361364 histos.add (" hRecMCdndeta" , " hRecMCdndeta" , kTHnSparseD , {axisVtxZ, centAxis, axisOccupancy, axisEta, axisPhi, axisRecTrkType}, false );
362365 histos.add (" etaResolution" , " etaResolution" , kTH2D , {axisEta, axisDeltaEta});
@@ -415,6 +418,10 @@ struct HeavyionMultiplicity {
415418 return false ;
416419 }
417420 histos.fill (HIST (" EventHist" ), 10 );
421+ if (isApplyVtxCut && std::abs (col.posZ ()) >= vtxRange) {
422+ return false ;
423+ }
424+ histos.fill (HIST (" EventHist" ), 11 );
418425 return true ;
419426 }
420427
@@ -875,7 +882,7 @@ struct HeavyionMultiplicity {
875882 if (!isEventSelected (RecCol)) {
876883 continue ;
877884 }
878- if (RecCol.globalIndex () != mcCollision.bestCollisionIndex ()) {
885+ if (isApplyBestCollIndex && RecCol.globalIndex () != mcCollision.bestCollisionIndex ()) {
879886 continue ;
880887 }
881888 atLeastOne = true ;
@@ -928,11 +935,12 @@ struct HeavyionMultiplicity {
928935 if (!isEventSelected (RecCol)) {
929936 continue ;
930937 }
931- if (RecCol.globalIndex () != mcCollision.bestCollisionIndex ()) {
938+ if (isApplyBestCollIndex && RecCol.globalIndex () != mcCollision.bestCollisionIndex ()) {
932939 continue ;
933940 }
934941 histos.fill (HIST (" hRecMCvertexZ" ), RecCol.posZ ());
935942 histos.fill (HIST (" hRecMCcentrality" ), selColCent (RecCol));
943+ histos.fill (HIST (" MCCentrality_vs_FT0C" ), RecCol.centFT0C (), RecCol.multFT0C ());
936944 histos.fill (HIST (" hRecMCvtxzcent" ), RecCol.posZ (), selColCent (RecCol), selColOccu (RecCol));
937945
938946 auto recTracksPart = RecTracks.sliceBy (perCollision, RecCol.globalIndex ());
0 commit comments