Skip to content

Commit 5f60e07

Browse files
authored
[PWGCF] fix bugs about MCGen hLocalDensity
1 parent ad73e61 commit 5f60e07

File tree

1 file changed

+31
-15
lines changed

1 file changed

+31
-15
lines changed

PWGCF/Flow/Tasks/flowGfwOmegaXi.cxx

Lines changed: 31 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1113,21 +1113,25 @@ struct FlowGfwOmegaXi {
11131113
if (mcParticle.has_tracks()) {
11141114
auto const& tracks = mcParticle.tracks_as<AodTracks>();
11151115
for (const auto& track : tracks) {
1116-
if (track.pt() < cfgCutPtPOIMin || track.pt() > cfgCutPtPOIMax)
1116+
if (track.pt() < cfgCutPtPOIMin || track.pt() > cfgCutPtPOIMax) {
11171117
continue;
1118-
if (std::fabs(track.eta()) > 0.8)
1118+
}
1119+
if (std::fabs(track.eta()) > 0.8) {
11191120
continue;
1120-
if (!(track.hasTPC() && track.hasITS()))
1121+
}
1122+
if (!(track.isGlobalTrack())) {
11211123
continue;
1122-
if (track.tpcChi2NCl() > cfgCutChi2prTPCcls)
1124+
}
1125+
if (track.tpcChi2NCl() > cfgCutChi2prTPCcls) {
11231126
continue;
1124-
int ptbin = fPtAxis->FindBin(track.pt()) - 1;
1125-
if ((track.pt() > cfgCutPtMin) && (track.pt() < cfgCutPtMax)) {
1126-
fGFW->Fill(track.eta(), ptbin, track.phi(), 1, 64); //(eta, ptbin, phi, wacc*weff, bitmask)
11271127
}
1128-
if ((track.pt() > cfgCutPtPOIMin) && (track.pt() < cfgCutPtPOIMax)) {
1129-
hLocalDensity->Fill(track.phi(), 1);
1130-
hLocalDensity->Fill(RecoDecay::constrainAngle(track.phi(), -constants::math::TwoPI), 1);
1128+
int ptbin = fPtAxis->FindBin(mcParticle.pt()) - 1;
1129+
if ((mcParticle.pt() > cfgCutPtMin) && (mcParticle.pt() < cfgCutPtMax)) {
1130+
fGFW->Fill(mcParticle.eta(), ptbin, mcParticle.phi(), 1, 64); //(eta, ptbin, phi, wacc*weff, bitmask)
1131+
}
1132+
if ((mcParticle.pt() > cfgCutPtPOIMin) && (mcParticle.pt() < cfgCutPtPOIMax)) {
1133+
hLocalDensity->Fill(mcParticle.phi(), 1);
1134+
hLocalDensity->Fill(RecoDecay::constrainAngle(mcParticle.phi(), -constants::math::TwoPI), 1);
11311135
nch++;
11321136
}
11331137
}
@@ -1192,7 +1196,7 @@ struct FlowGfwOmegaXi {
11921196
}
11931197
PROCESS_SWITCH(FlowGfwOmegaXi, processMCGen, "", true);
11941198

1195-
void processMCRec(AodCollisions::iterator const& collision, AodTracks const& tracks, aod::BCsWithTimestamps const&, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::CascDataExt, aod::McCascLabels> const& Cascades, DaughterTracks const&, aod::McParticles const&)
1199+
void processMCRec(AodCollisions::iterator const& collision, soa::Join<AodTracks, aod::McTrackLabels> const& tracks, aod::BCsWithTimestamps const&, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::CascDataExt, aod::McCascLabels> const& Cascades, DaughterTracks const&, aod::McParticles const&)
11961200
{
11971201
fGFW->Clear();
11981202
const auto cent = collision.centFT0C();
@@ -1213,6 +1217,17 @@ struct FlowGfwOmegaXi {
12131217
double nch = 0;
12141218

12151219
for (const auto& track : tracks) {
1220+
if (!track.has_mcParticle())
1221+
continue;
1222+
if (track.pt() < cfgCutPtPOIMin || track.pt() > cfgCutPtPOIMax)
1223+
continue;
1224+
if (std::fabs(track.eta()) > 0.8)
1225+
continue;
1226+
if (!(track.isGlobalTrack()))
1227+
continue;
1228+
if (track.tpcChi2NCl() > cfgCutChi2prTPCcls)
1229+
continue;
1230+
auto mcParticle = track.mcParticle_as<aod::McParticles>();
12161231
if (cfgDoAccEffCorr) {
12171232
if (!setCurrentParticleWeights(weff, wacc, track, vtxz, 0))
12181233
continue;
@@ -1229,12 +1244,13 @@ struct FlowGfwOmegaXi {
12291244
if ((track.pt() > cfgCutPtPOIMin) && (track.pt() < cfgCutPtPOIMax)) {
12301245
fGFW->Fill(track.eta(), ptbin, track.phi(), wacc * weff, 32);
12311246
if (cfgDoLocDenCorr) {
1232-
hLocalDensity->Fill(track.phi(), wacc * weff);
1233-
hLocalDensity->Fill(RecoDecay::constrainAngle(track.phi(), -constants::math::TwoPI), wacc * weff);
1247+
hLocalDensity->Fill(mcParticle.phi(), wacc * weff);
1248+
hLocalDensity->Fill(RecoDecay::constrainAngle(mcParticle.phi(), -constants::math::TwoPI), wacc * weff);
12341249
nch += wacc * weff;
12351250
}
12361251
}
12371252
}
1253+
12381254
if (cfgDoLocDenCorr) {
12391255
registry.fill(HIST("hCentvsNch"), cent, nch);
12401256
}
@@ -1293,8 +1309,8 @@ struct FlowGfwOmegaXi {
12931309
// Omega and antiOmega
12941310
int pdgCode{cascMC.pdgCode()};
12951311
double cascPt{cascMC.pt()};
1296-
double cascPhi{casc.phi()};
1297-
double cascEta{casc.eta()};
1312+
double cascPhi{cascMC.phi()};
1313+
double cascEta{cascMC.eta()};
12981314
if (std::abs(pdgCode) == kOmegaMinus) {
12991315
if (casc.sign() < 0 && (casc.mOmega() > 1.63) && (casc.mOmega() < 1.71) && std::fabs(casc.yOmega()) < cfgCasc_rapidity &&
13001316
(!cfgcheckDauTPC || (std::fabs(bachelor.tpcNSigmaKa()) < cfgNSigma[2] && std::fabs(posdau.tpcNSigmaPr()) < cfgNSigma[1] && std::fabs(negdau.tpcNSigmaPi()) < cfgNSigma[0]))) {

0 commit comments

Comments
 (0)