Skip to content

Commit 840b015

Browse files
committed
Reduce task members
1 parent 946d0d8 commit 840b015

1 file changed

Lines changed: 56 additions & 57 deletions

File tree

PWGCF/TwoParticleCorrelations/Tasks/twoParticleCorrelationsMpi.cxx

Lines changed: 56 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -99,24 +99,23 @@ struct TwoParticleCorrelationsMpi {
9999
SliceCache cache;
100100

101101
// Configuration
102-
Configurable<float> cfgCutVertex{"cfgCutVertex", 7.0f, "Accepted z-vertex range"};
103-
Configurable<float> cfgCutPt{"cfgCutPt", 0.5f, "Minimal pT for tracks"};
104-
Configurable<float> cfgCutEta{"cfgCutEta", 0.8f, "Eta range for tracks"};
105-
Configurable<std::pair<float, float>> cfgFlowPtRef{"cfgFlowPtRef", {0.5f, 3.0f}, "Minimum and maximum pT for reference flow particles"};
106-
Configurable<std::pair<float, float>> cfgFlowPtPOI{"cfgFlowPtPOI", {0.5f, 10.0f}, "Minimum and maximum pT for particles of interest in flow correlations"};
107-
108-
Configurable<int> cfgPtOrder{"cfgPtOrder", 1, "Only consider pairs for which pT,1 < pT,2 (0 = OFF, 1 = ON)"};
109-
Configurable<int> cfgTriggerCharge{"cfgTriggerCharge", 0, "Select on charge of trigger particle: 0 = all; 1 = positive; -1 = negative"};
110-
Configurable<int> cfgAssociatedCharge{"cfgAssociatedCharge", 0, "Select on charge of associated particle: 0 = all charged; 1 = positive; -1 = negative"};
111-
Configurable<int> cfgPairCharge{"cfgPairCharge", 0, "Select on charge of particle pair: 0 = all; 1 = like sign; -1 = unlike sign"};
112-
Configurable<int> cfgCorrelationMethod{"cfgCorrelationMethod", 0, "Correlation method, 0 = all, 1 = dd, 2 = ddbar"};
113-
114-
Configurable<float> cfgTwoTrackCut{"cfgTwoTrackCut", -1, "Two track cut: -1 = off; >0 otherwise distance value (suggested: 0.02)"};
115-
Configurable<float> cfgTwoTrackCutMinRadius{"cfgTwoTrackCutMinRadius", 0.8f, "Two track cut: radius in m from which two track cuts are applied"};
116-
;
117-
Configurable<int> cfgLocalEfficiency{"cfgLocalEfficiency", 0, "0 = OFF and 1 = ON for local efficiency"};
118-
Configurable<bool> cfgDropStepRECO{"cfgDropStepRECO", false, "choice to drop step RECO if efficiency correction is used"};
119-
Configurable<int> cfgCentBinsForMC{"cfgCentBinsForMC", 0, "0 = generated multiplicity; 1 = reconstructed multiplicity and all associated collisions"};
102+
struct : ConfigurableGroup {
103+
Configurable<float> cfgCutVertex{"cfgCutVertex", 7.0f, "Accepted z-vertex range"};
104+
Configurable<float> cfgCutPt{"cfgCutPt", 0.5f, "Minimal pT for tracks"};
105+
Configurable<float> cfgCutEta{"cfgCutEta", 0.8f, "Eta range for tracks"};
106+
Configurable<std::pair<float, float>> cfgFlowPtRef{"cfgFlowPtRef", {0.5f, 3.0f}, "Minimum and maximum pT for reference flow particles"};
107+
Configurable<std::pair<float, float>> cfgFlowPtPOI{"cfgFlowPtPOI", {0.5f, 10.0f}, "Minimum and maximum pT for particles of interest in flow correlations"};
108+
Configurable<int> cfgPtOrder{"cfgPtOrder", 1, "Only consider pairs for which pT,1 < pT,2 (0 = OFF, 1 = ON)"};
109+
Configurable<int> cfgTriggerCharge{"cfgTriggerCharge", 0, "Select on charge of trigger particle: 0 = all; 1 = positive; -1 = negative"};
110+
Configurable<int> cfgAssociatedCharge{"cfgAssociatedCharge", 0, "Select on charge of associated particle: 0 = all charged; 1 = positive; -1 = negative"};
111+
Configurable<int> cfgPairCharge{"cfgPairCharge", 0, "Select on charge of particle pair: 0 = all; 1 = like sign; -1 = unlike sign"};
112+
Configurable<int> cfgCorrelationMethod{"cfgCorrelationMethod", 0, "Correlation method, 0 = all, 1 = dd, 2 = ddbar"};
113+
Configurable<float> cfgTwoTrackCut{"cfgTwoTrackCut", -1, "Two track cut: -1 = off; >0 otherwise distance value (suggested: 0.02)"};
114+
Configurable<float> cfgTwoTrackCutMinRadius{"cfgTwoTrackCutMinRadius", 0.8f, "Two track cut: radius in m from which two track cuts are applied"};
115+
Configurable<int> cfgLocalEfficiency{"cfgLocalEfficiency", 0, "0 = OFF and 1 = ON for local efficiency"};
116+
Configurable<bool> cfgDropStepRECO{"cfgDropStepRECO", false, "choice to drop step RECO if efficiency correction is used"};
117+
Configurable<int> cfgCentBinsForMC{"cfgCentBinsForMC", 0, "0 = generated multiplicity; 1 = reconstructed multiplicity and all associated collisions"};
118+
} cfgGeneral;
120119
Configurable<uint16_t> cfgTrackBitMask{"cfgTrackBitMask", 0, "BitMask for track selection systematics; refer to the enum TrackSelectionCuts in filtering task"};
121120
Configurable<uint16_t> cfgMultCorrelationsMask{"cfgMultCorrelationsMask", 0, "Selection bitmask for the multiplicity correlations. This should match the filter selection cfgEstimatorBitMask."};
122121
Configurable<std::string> cfgMultCutFormula{"cfgMultCutFormula", "", "Multiplicity correlations cut formula. A result greater than zero results in accepted event. Parameters: [cFT0C] FT0C centrality, [mFV0A] V0A multiplicity, [mGlob] global track multiplicity, [mPV] PV track multiplicity, [cFT0M] FT0M centrality"};
@@ -178,18 +177,18 @@ struct TwoParticleCorrelationsMpi {
178177
} cfgEventWeight;
179178

180179
// This filter is applied to AOD and derived data (column names are identical)
181-
Filter collisionZVtxFilter = nabs(aod::collision::posZ) < cfgCutVertex;
180+
Filter collisionZVtxFilter = nabs(aod::collision::posZ) < cfgGeneral.cfgCutVertex;
182181
// This filter is only applied to AOD
183182
Filter collisionVertexTypeFilter = (aod::collision::flags & static_cast<uint16_t>(aod::collision::CollisionFlagsRun2::Run2VertexerTracks)) == static_cast<uint16_t>(aod::collision::CollisionFlagsRun2::Run2VertexerTracks);
184183

185184
// Track filters
186-
Filter trackFilter = (nabs(aod::track::eta) < cfgCutEta) && (aod::track::pt > cfgCutPt) && ((requireGlobalTrackInFilter()) || (aod::track::isGlobalTrackSDD == (uint8_t)true));
187-
Filter cfTrackFilter = (nabs(aod::cftrack::eta) < cfgCutEta) && (aod::cftrack::pt > cfgCutPt) && ncheckbit(aod::track::trackType, as<uint8_t>(cfgTrackBitMask));
185+
Filter trackFilter = (nabs(aod::track::eta) < cfgGeneral.cfgCutEta) && (aod::track::pt > cfgGeneral.cfgCutPt) && ((requireGlobalTrackInFilter()) || (aod::track::isGlobalTrackSDD == (uint8_t)true));
186+
Filter cfTrackFilter = (nabs(aod::cftrack::eta) < cfgGeneral.cfgCutEta) && (aod::cftrack::pt > cfgGeneral.cfgCutPt) && ncheckbit(aod::track::trackType, as<uint8_t>(cfgTrackBitMask));
188187

189188
// MC filters
190-
Filter cfMCCollisionFilter = nabs(aod::mccollision::posZ) < cfgCutVertex;
191-
Filter cfMCParticleFilter = (nabs(aod::cfmcparticle::eta) < cfgCutEta) && (aod::cfmcparticle::pt > cfgCutPt); // && (aod::cfmcparticle::sign != 0); //check the sign manually, some specials may be neutral
192-
Filter mcParticleFilter = (nabs(aod::mcparticle::eta) < cfgCutEta) && (aod::mcparticle::pt > cfgCutPt);
189+
Filter cfMCCollisionFilter = nabs(aod::mccollision::posZ) < cfgGeneral.cfgCutVertex;
190+
Filter cfMCParticleFilter = (nabs(aod::cfmcparticle::eta) < cfgGeneral.cfgCutEta) && (aod::cfmcparticle::pt > cfgGeneral.cfgCutPt); // && (aod::cfmcparticle::sign != 0); //check the sign manually, some specials may be neutral
191+
Filter mcParticleFilter = (nabs(aod::mcparticle::eta) < cfgGeneral.cfgCutEta) && (aod::mcparticle::pt > cfgGeneral.cfgCutPt);
193192

194193
// Output definitions
195194
OutputObj<CorrelationContainer> same{"sameEvent"};
@@ -340,8 +339,8 @@ struct TwoParticleCorrelationsMpi {
340339
if (cfgUserAxis < NoUserAxis || cfgUserAxis > EventSeedAxis) {
341340
LOGF(fatal, "Unsupported cfgUserAxis=%d; use 0 (off), 1 (invariant mass), or 2 (event seed)", cfgUserAxis.value);
342341
}
343-
if (cfgCentBinsForMC < 0 || cfgCentBinsForMC > 1) {
344-
LOGF(fatal, "Unsupported cfgCentBinsForMC=%d; use 0 (generated multiplicity), 1 (reconstructed multiplicity and all associated collisions)", cfgCentBinsForMC.value);
342+
if (cfgGeneral.cfgCentBinsForMC < 0 || cfgGeneral.cfgCentBinsForMC > 1) {
343+
LOGF(fatal, "Unsupported cfgCentBinsForMC=%d; use 0 (generated multiplicity), 1 (reconstructed multiplicity and all associated collisions)", cfgGeneral.cfgCentBinsForMC.value);
345344
}
346345
const int enabledDerivedSameProcesses = static_cast<int>(doprocessSameDerived) + static_cast<int>(doprocessSameDerivedCorrected) + static_cast<int>(doprocessSameDerivedMultSet) + static_cast<int>(doprocessSameDerivedMultSetCorrected);
347346
if (enabledDerivedSameProcesses > 1) {
@@ -526,7 +525,7 @@ struct TwoParticleCorrelationsMpi {
526525
registry.add("trackcount_mixed", "bin", {HistType::kTH3F, {{maxMixBin + 2, -2.5, -0.5 + maxMixBin, "bin"}, {10, -0.5, 9.5}, {10, -0.5, 9.5}}});
527526
if (cfgFillAcceptanceWeights && !cfgAcceptanceRunByRun) {
528527
AxisSpec phiAxis{cfgAcceptancePhiBins, 0., o2::constants::math::TwoPI, "#varphi"};
529-
AxisSpec etaAxis{cfgAcceptanceEtaBins, -cfgCutEta.value, cfgCutEta.value, "#eta"};
528+
AxisSpec etaAxis{cfgAcceptanceEtaBins, -cfgGeneral.cfgCutEta.value, cfgGeneral.cfgCutEta.value, "#eta"};
530529
mAcceptanceWeights = registry.add<TH3>("phi_eta_vtxz_ref", "Reference-track acceptance;#varphi;#eta;z_{vtx} (cm)", {HistType::kTH3D, {phiAxis, etaAxis, axisVertex}});
531530
}
532531

@@ -541,8 +540,8 @@ struct TwoParticleCorrelationsMpi {
541540
cfg.mPairCuts = true;
542541
}
543542

544-
if (cfgTwoTrackCut > 0) {
545-
mPairCuts.SetTwoTrackCuts(cfgTwoTrackCut, cfgTwoTrackCutMinRadius);
543+
if (cfgGeneral.cfgTwoTrackCut > 0) {
544+
mPairCuts.SetTwoTrackCuts(cfgGeneral.cfgTwoTrackCut, cfgGeneral.cfgTwoTrackCutMinRadius);
546545
}
547546

548547
// --- OBJECT INIT ---
@@ -592,8 +591,8 @@ struct TwoParticleCorrelationsMpi {
592591
same.setObject(new CorrelationContainer("sameEvent", "sameEvent", corrAxis, effAxis, userAxis));
593592
mixed.setObject(new CorrelationContainer("mixedEvent", "mixedEvent", corrAxis, effAxis, userMixingAxis));
594593

595-
same->setTrackEtaCut(cfgCutEta);
596-
mixed->setTrackEtaCut(cfgCutEta);
594+
same->setTrackEtaCut(cfgGeneral.cfgCutEta);
595+
mixed->setTrackEtaCut(cfgGeneral.cfgCutEta);
597596

598597
if (!cfgEfficiencyAssociated.value.empty()) {
599598
efficiencyAssociatedCache.reserve(512);
@@ -619,8 +618,8 @@ struct TwoParticleCorrelationsMpi {
619618
name, range.first, range.second, ptAxisSpec.binEdges.front(), ptAxisSpec.binEdges.back());
620619
}
621620
};
622-
validateFlowPtRange(cfgFlowPtRef.value, "cfgFlowPtRef");
623-
validateFlowPtRange(cfgFlowPtPOI.value, "cfgFlowPtPOI");
621+
validateFlowPtRange(cfgGeneral.cfgFlowPtRef.value, "cfgFlowPtRef");
622+
validateFlowPtRange(cfgGeneral.cfgFlowPtPOI.value, "cfgFlowPtPOI");
624623
const int nPtBins = static_cast<int>(ptAxisSpec.binEdges.size()) - 1;
625624
fPtAxis = std::make_unique<TAxis>(nPtBins, ptAxisSpec.binEdges.data());
626625
if (cfgRegions->GetSize() < 0) {
@@ -806,7 +805,7 @@ struct TwoParticleCorrelationsMpi {
806805
}
807806

808807
// Fill the nominal sums
809-
if (std::abs(track.eta()) < cfgCutEta) {
808+
if (std::abs(track.eta()) < cfgGeneral.cfgCutEta) {
810809
flowPtContainer->fill(weff, track.pt());
811810
}
812811

@@ -842,7 +841,7 @@ struct TwoParticleCorrelationsMpi {
842841
}
843842

844843
AxisSpec phiAxis{cfgAcceptancePhiBins, 0., o2::constants::math::TwoPI, "#varphi"};
845-
AxisSpec etaAxis{cfgAcceptanceEtaBins, -cfgCutEta.value, cfgCutEta.value, "#eta"};
844+
AxisSpec etaAxis{cfgAcceptanceEtaBins, -cfgGeneral.cfgCutEta.value, cfgGeneral.cfgCutEta.value, "#eta"};
846845
const std::string histogramName = Form("%d/phi_eta_vtxz_ref", runNumber);
847846
const auto histogram = registry.add<TH3>(histogramName.c_str(), "Reference-track acceptance;#varphi;#eta;z_{vtx} (cm)", {HistType::kTH3D, {phiAxis, etaAxis, axisVertex}});
848847
mAcceptanceWeightsByRun.emplace(runNumber, histogram);
@@ -862,8 +861,8 @@ struct TwoParticleCorrelationsMpi {
862861
template <DataType dt, typename TTrack>
863862
inline void fillGFW(const TTrack& track, const float& centMult, const double& posZ)
864863
{
865-
const bool withinPtRef = track.pt() > cfgFlowPtRef->first && track.pt() < cfgFlowPtRef->second;
866-
const bool withinPtPOI = track.pt() > cfgFlowPtPOI->first && track.pt() < cfgFlowPtPOI->second;
864+
const bool withinPtRef = track.pt() > cfgGeneral.cfgFlowPtRef->first && track.pt() < cfgGeneral.cfgFlowPtRef->second;
865+
const bool withinPtPOI = track.pt() > cfgGeneral.cfgFlowPtPOI->first && track.pt() < cfgGeneral.cfgFlowPtPOI->second;
867866
if (!withinPtRef && !withinPtPOI) {
868867
return;
869868
}
@@ -1727,8 +1726,8 @@ struct TwoParticleCorrelationsMpi {
17271726
}
17281727
} else { // otherwise check the sign against the configuration
17291728
const int sign = getParticleSign(track1);
1730-
if (cfgTriggerCharge != 0) {
1731-
if (cfgTriggerCharge * sign < 0) {
1729+
if (cfgGeneral.cfgTriggerCharge != 0) {
1730+
if (cfgGeneral.cfgTriggerCharge * sign < 0) {
17321731
continue;
17331732
}
17341733
} else if (sign == 0) {
@@ -1737,7 +1736,7 @@ struct TwoParticleCorrelationsMpi {
17371736
}
17381737
} else if constexpr (std::experimental::is_detected<HasSign, typename TTracks1::iterator>::value) {
17391738
// Check reco objects that have the sign attribute. There are no neutrals to deal with.
1740-
if (cfgTriggerCharge != 0 && cfgTriggerCharge * track1.sign() < 0) {
1739+
if (cfgGeneral.cfgTriggerCharge != 0 && cfgGeneral.cfgTriggerCharge * track1.sign() < 0) {
17411740
continue;
17421741
}
17431742
}
@@ -1837,22 +1836,22 @@ struct TwoParticleCorrelationsMpi {
18371836
}
18381837

18391838
if constexpr (std::experimental::is_detected<HasDecay, typename TTracks1::iterator>::value && std::experimental::is_detected<HasDecay, typename TTracks2::iterator>::value) {
1840-
if (cfgCorrelationMethod == CorrelationMethod::Dd && track1.decay() != track2.decay()) {
1839+
if (cfgGeneral.cfgCorrelationMethod == CorrelationMethod::Dd && track1.decay() != track2.decay()) {
18411840
continue;
18421841
}
1843-
if (cfgCorrelationMethod == CorrelationMethod::Ddbar && track1.decay() == track2.decay()) {
1842+
if (cfgGeneral.cfgCorrelationMethod == CorrelationMethod::Ddbar && track1.decay() == track2.decay()) {
18441843
continue;
18451844
}
18461845
}
18471846

1848-
if (cfgPtOrder != 0 && track2.pt() >= track1.pt()) {
1847+
if (cfgGeneral.cfgPtOrder != 0 && track2.pt() >= track1.pt()) {
18491848
continue;
18501849
}
18511850

18521851
if constexpr (std::experimental::is_detected<HasSign, typename TTracks2::iterator>::value || std::experimental::is_detected<HasPDGCode, typename TTracks2::iterator>::value) {
18531852
const int associatedSign = getParticleSign(track2);
1854-
if (cfgAssociatedCharge != 0) {
1855-
if (cfgAssociatedCharge * associatedSign < 0) {
1853+
if (cfgGeneral.cfgAssociatedCharge != 0) {
1854+
if (cfgGeneral.cfgAssociatedCharge * associatedSign < 0) {
18561855
continue;
18571856
}
18581857
} else if (associatedSign == 0) { // mc particles come in neutrals, need to check explicitly
@@ -1862,7 +1861,7 @@ struct TwoParticleCorrelationsMpi {
18621861

18631862
if constexpr ((std::experimental::is_detected<HasSign, typename TTracks1::iterator>::value || std::experimental::is_detected<HasPDGCode, typename TTracks1::iterator>::value) &&
18641863
(std::experimental::is_detected<HasSign, typename TTracks2::iterator>::value || std::experimental::is_detected<HasPDGCode, typename TTracks2::iterator>::value)) {
1865-
if (cfgPairCharge != 0 && cfgPairCharge * getParticleSign(track1) * getParticleSign(track2) < 0) {
1864+
if (cfgGeneral.cfgPairCharge != 0 && cfgGeneral.cfgPairCharge * getParticleSign(track1) * getParticleSign(track2) < 0) {
18661865
continue;
18671866
}
18681867
}
@@ -1873,7 +1872,7 @@ struct TwoParticleCorrelationsMpi {
18731872
if (cfg.mPairCuts && mPairCuts.conversionCuts(track1, track2)) {
18741873
continue;
18751874
}
1876-
if (cfgTwoTrackCut > 0 && mPairCuts.twoTrackCut(track1, track2, magField)) {
1875+
if (cfgGeneral.cfgTwoTrackCut > 0 && mPairCuts.twoTrackCut(track1, track2, magField)) {
18771876
continue;
18781877
}
18791878
}
@@ -1927,7 +1926,7 @@ struct TwoParticleCorrelationsMpi {
19271926
return;
19281927
}
19291928
if (!cfgEfficiencyTrigger.value.empty()) {
1930-
if (cfgLocalEfficiency > 0) {
1929+
if (cfgGeneral.cfgLocalEfficiency > 0) {
19311930
TFile* fEfficiencyTrigger = TFile::Open(cfgEfficiencyTrigger.value.c_str(), "READ");
19321931
cfg.mEfficiencyTrigger = dynamic_cast<THn*>(fEfficiencyTrigger->Get("ccdb_object"));
19331932
} else {
@@ -1939,7 +1938,7 @@ struct TwoParticleCorrelationsMpi {
19391938
LOGF(info, "Loaded efficiency histogram for trigger particles from %s", cfgEfficiencyTrigger.value.c_str());
19401939
}
19411940
if (!cfgEfficiencyAssociated.value.empty()) {
1942-
if (cfgLocalEfficiency > 0) {
1941+
if (cfgGeneral.cfgLocalEfficiency > 0) {
19431942
TFile* fEfficiencyAssociated = TFile::Open(cfgEfficiencyAssociated.value.c_str(), "READ");
19441943
cfg.mEfficiencyAssociated = dynamic_cast<THn*>(fEfficiencyAssociated->Get("ccdb_object"));
19451944
} else {
@@ -2095,7 +2094,7 @@ struct TwoParticleCorrelationsMpi {
20952094
loadCcdbYieldTemplates(collision.timestamp());
20962095

20972096
int field = 0;
2098-
if (cfgTwoTrackCut > 0) {
2097+
if (cfgGeneral.cfgTwoTrackCut > 0) {
20992098
field = getMagneticField(collision.timestamp());
21002099
}
21012100

@@ -2116,7 +2115,7 @@ struct TwoParticleCorrelationsMpi {
21162115
}
21172116

21182117
const bool hasEfficiency = (cfg.mEfficiencyAssociated != nullptr || cfg.mEfficiencyTrigger != nullptr);
2119-
const bool fillReco = !(cfgDropStepRECO && hasEfficiency);
2118+
const bool fillReco = !(cfgGeneral.cfgDropStepRECO && hasEfficiency);
21202119
EventSeedEstimate seedEstimate;
21212120

21222121
if (cfgUserAxis == EventSeedAxis) {
@@ -2275,7 +2274,7 @@ struct TwoParticleCorrelationsMpi {
22752274
int bin = configurableBinningDerived.getBin(std::tuple(collision1.posZ(), multiplicity));
22762275
float eventWeight = 1.0f / it.currentWindowNeighbours();
22772276
int field = 0;
2278-
if (cfgTwoTrackCut > 0) {
2277+
if (cfgGeneral.cfgTwoTrackCut > 0) {
22792278
field = getMagneticField(collision1.timestamp());
22802279
}
22812280

@@ -2284,12 +2283,12 @@ struct TwoParticleCorrelationsMpi {
22842283
}
22852284

22862285
bool hasEfficiencyMixed = (cfg.mEfficiencyAssociated != nullptr || cfg.mEfficiencyTrigger != nullptr);
2287-
bool fillRecoMixed = !(cfgDropStepRECO && hasEfficiencyMixed);
2286+
bool fillRecoMixed = !(cfgGeneral.cfgDropStepRECO && hasEfficiencyMixed);
22882287

22892288
if (it.isNewWindow()) {
22902289
loadEfficiency(collision1.timestamp());
22912290
hasEfficiencyMixed = (cfg.mEfficiencyAssociated != nullptr || cfg.mEfficiencyTrigger != nullptr);
2292-
fillRecoMixed = !(cfgDropStepRECO && hasEfficiencyMixed);
2291+
fillRecoMixed = !(cfgGeneral.cfgDropStepRECO && hasEfficiencyMixed);
22932292

22942293
if (cfgUserAxis == EventSeedAxis) {
22952294
loadCcdbYieldTemplates(collision1.timestamp());
@@ -2357,7 +2356,7 @@ struct TwoParticleCorrelationsMpi {
23572356
}
23582357

23592358
auto multiplicity = mcCollision.multiplicity();
2360-
if (cfgCentBinsForMC > 0) {
2359+
if (cfgGeneral.cfgCentBinsForMC > 0) {
23612360
if (collisions.size() == 0) {
23622361
return;
23632362
}
@@ -2381,7 +2380,7 @@ struct TwoParticleCorrelationsMpi {
23812380
continue;
23822381
}
23832382
const int sign = getParticleSign(mcParticle);
2384-
if (sign == 0 || (cfgAssociatedCharge != 0 && cfgAssociatedCharge * sign < 0)) {
2383+
if (sign == 0 || (cfgGeneral.cfgAssociatedCharge != 0 && cfgGeneral.cfgAssociatedCharge * sign < 0)) {
23852384
continue;
23862385
}
23872386
if (!cfgMcTriggerPDGs->empty() && std::find(cfgMcTriggerPDGs->begin(), cfgMcTriggerPDGs->end(), mcParticle.pdgCode()) != cfgMcTriggerPDGs->end()) {
@@ -2432,7 +2431,7 @@ struct TwoParticleCorrelationsMpi {
24322431
template <typename... ParticleTypes>
24332432
void processMCMixedDerivedT(soa::Filtered<aod::CFMcCollisions> const& mcCollisions, soa::Filtered<aod::CFCollisionsWithLabel> const& collisions, ParticleTypes&&... particles)
24342433
{
2435-
bool useMCMultiplicity = (cfgCentBinsForMC == 0);
2434+
bool useMCMultiplicity = (cfgGeneral.cfgCentBinsForMC == 0);
24362435
auto getMultiplicity =
24372436
[&collisions, &useMCMultiplicity, this](auto& col) {
24382437
if (useMCMultiplicity) {

0 commit comments

Comments
 (0)