Skip to content

Commit 5906aec

Browse files
authored
[PWGLF] Bug Fix in Mixing of HScorr Analysis (#13922)
1 parent 01222e3 commit 5906aec

File tree

2 files changed

+128
-108
lines changed

2 files changed

+128
-108
lines changed

PWGLF/TableProducer/Strangeness/hStrangeCorrelationFilter.cxx

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ struct HStrangeCorrelationFilter {
6565
Configurable<float> strangedEdxNSigma{"strangedEdxNSigma", 4, "Nsigmas for strange decay daughters"};
6666
Configurable<float> strangedEdxNSigmaTight{"strangedEdxNSigmaTight", 3, "Nsigmas for strange decay daughters"};
6767
Configurable<std::string> zorroMask{"zorroMask", "", "zorro trigger class to select on (empty: none)"};
68+
Configurable<float> nSigmaNearXiMassCenter{"nSigmaNearXiMassCenter", 0, "for Oemga analysis only, to check if candidate mass is around Xi"};
6869

6970
// used for event selections in Pb-Pb
7071
Configurable<int> cfgCutOccupancyHigh{"cfgCutOccupancyHigh", 3000, "High cut on TPC occupancy"};
@@ -515,9 +516,6 @@ struct HStrangeCorrelationFilter {
515516
// for real data processing
516517
void processTriggers(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::CentFT0Cs, aod::PVMults>::iterator const& collision, soa::Filtered<FullTracks> const& tracks, aod::BCsWithTimestamps const&)
517518
{
518-
// Load parameters for sideband subtraction
519-
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
520-
initParametersFromCCDB(bc);
521519
if (((doPPAnalysis && !isCollisionSelected(collision))) || (!doPPAnalysis && !isCollisionSelectedPbPb(collision))) {
522520
return;
523521
}
@@ -539,9 +537,6 @@ struct HStrangeCorrelationFilter {
539537
// for MC processing
540538
void processTriggersMC(soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::CentFT0Cs, aod::PVMults>::iterator const& collision, soa::Filtered<FullTracksMC> const& tracks, aod::McParticles const&, aod::BCsWithTimestamps const&)
541539
{
542-
// Load parameters for sideband subtraction
543-
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
544-
initParametersFromCCDB(bc);
545540
if (((doPPAnalysis && !isCollisionSelected(collision))) || (!doPPAnalysis && !isCollisionSelectedPbPb(collision))) {
546541
return;
547542
}
@@ -571,7 +566,6 @@ struct HStrangeCorrelationFilter {
571566
{
572567
// Load parameters for sideband subtraction
573568
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
574-
initParametersFromCCDB(bc);
575569
// Perform basic event selection
576570
if (!collision.sel8()) {
577571
return;
@@ -600,7 +594,6 @@ struct HStrangeCorrelationFilter {
600594
{
601595
// Load parameters for sideband subtraction
602596
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
603-
initParametersFromCCDB(bc);
604597
// Perform basic event selection
605598
if (!collision.sel8()) {
606599
return;
@@ -629,7 +622,6 @@ struct HStrangeCorrelationFilter {
629622
{
630623
// Load parameters for sideband subtraction
631624
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
632-
initParametersFromCCDB(bc);
633625
// Perform basic event selection
634626
if (!collision.sel8()) {
635627
return;
@@ -657,7 +649,6 @@ struct HStrangeCorrelationFilter {
657649
{
658650
// Load parameters for sideband subtraction
659651
auto bc = collision.bc_as<aod::BCsWithTimestamps>();
660-
initParametersFromCCDB(bc);
661652
// Perform basic event selection
662653
if (!collision.sel8()) {
663654
return;
@@ -1127,15 +1118,15 @@ struct HStrangeCorrelationFilter {
11271118
histos.fill(HIST("h3dMassXiMinus"), casc.pt(), casc.mXi(), cent);
11281119
if (compatibleXiPlus)
11291120
histos.fill(HIST("h3dMassXiPlus"), casc.pt(), casc.mXi(), cent);
1130-
if (compatibleOmegaMinus)
1121+
if (compatibleOmegaMinus && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)
11311122
histos.fill(HIST("h3dMassOmegaMinus"), casc.pt(), casc.mOmega(), cent);
1132-
if (compatibleOmegaPlus)
1123+
if (compatibleOmegaPlus && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)
11331124
histos.fill(HIST("h3dMassOmegaPlus"), casc.pt(), casc.mOmega(), cent);
11341125

11351126
if (!fillTableOnlyWithCompatible ||
11361127
( // start major condition check
11371128
((compatibleXiMinus > 0 || compatibleXiPlus > 0) && std::abs(massNSigmaXi) < maxMassNSigma) ||
1138-
((compatibleOmegaMinus > 0 || compatibleOmegaPlus > 0) && std::abs(massNSigmaOmega) < maxMassNSigma)) // end major condition check
1129+
((compatibleOmegaMinus > 0 || compatibleOmegaPlus > 0) && std::abs(massNSigmaOmega) < maxMassNSigma && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)) // end major condition check
11391130
) {
11401131
assocCascades(casc.collisionId(), casc.globalIndex(),
11411132
compatibleXiMinus, compatibleXiPlus, compatibleOmegaMinus, compatibleOmegaPlus,
@@ -1315,15 +1306,15 @@ struct HStrangeCorrelationFilter {
13151306
histos.fill(HIST("h3dMassXiMinus"), casc.pt(), casc.mXi(), cent);
13161307
if (compatibleXiPlus && (!doTrueSelectionInMass || (trueXiPlus && cascPhysicalPrimary)))
13171308
histos.fill(HIST("h3dMassXiPlus"), casc.pt(), casc.mXi(), cent);
1318-
if (compatibleOmegaMinus && (!doTrueSelectionInMass || (trueOmegaMinus && cascPhysicalPrimary)))
1309+
if (compatibleOmegaMinus && (!doTrueSelectionInMass || (trueOmegaMinus && cascPhysicalPrimary)) && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)
13191310
histos.fill(HIST("h3dMassOmegaMinus"), casc.pt(), casc.mOmega(), cent);
1320-
if (compatibleOmegaPlus && (!doTrueSelectionInMass || (trueOmegaPlus && cascPhysicalPrimary)))
1311+
if (compatibleOmegaPlus && (!doTrueSelectionInMass || (trueOmegaPlus && cascPhysicalPrimary)) && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)
13211312
histos.fill(HIST("h3dMassOmegaPlus"), casc.pt(), casc.mOmega(), cent);
13221313

13231314
if (!fillTableOnlyWithCompatible ||
13241315
( // start major condition check
13251316
((compatibleXiMinus > 0 || compatibleXiPlus > 0) && std::abs(massNSigmaXi) < maxMassNSigma) ||
1326-
((compatibleOmegaMinus > 0 || compatibleOmegaPlus > 0) && std::abs(massNSigmaOmega) < maxMassNSigma)) // end major condition check
1317+
((compatibleOmegaMinus > 0 || compatibleOmegaPlus > 0) && std::abs(massNSigmaOmega) < maxMassNSigma && std::abs(massNSigmaXi) > nSigmaNearXiMassCenter)) // end major condition check
13271318
) {
13281319
assocCascades(casc.collisionId(), casc.globalIndex(),
13291320
compatibleXiMinus, compatibleXiPlus, compatibleOmegaMinus, compatibleOmegaPlus,

0 commit comments

Comments
 (0)