Skip to content

Commit cccfd9b

Browse files
NucleiTask - Add mothers histo for MC
1 parent fbfa10a commit cccfd9b

File tree

1 file changed

+136
-42
lines changed

1 file changed

+136
-42
lines changed

PWGLF/Tasks/Nuspex/LFNucleiBATask.cxx

Lines changed: 136 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@
4242
#include "ReconstructionDataFormats/Track.h"
4343

4444
#include <TF1.h>
45-
// #include <TLorentzVector.h>
4645

46+
#include <gsl/span>
4747
#include <string>
4848

4949
using namespace o2;
@@ -221,12 +221,30 @@ struct LFNucleiBATask {
221221
static constexpr int PDGTriton = o2::constants::physics::Pdg::kTriton;
222222
static constexpr int PDGHelium = o2::constants::physics::Pdg::kHelium3;
223223
static constexpr int PDGAlpha = o2::constants::physics::Pdg::kAlpha;
224+
static constexpr int PDGHyperTriton = o2::constants::physics::Pdg::kHyperTriton;
224225
static constexpr float MassProtonVal = o2::constants::physics::MassProton;
225226
static constexpr float MassDeuteronVal = o2::constants::physics::MassDeuteron;
226227
static constexpr float MassTritonVal = o2::constants::physics::MassTriton;
227228
static constexpr float MassHeliumVal = o2::constants::physics::MassHelium3;
228229
static constexpr float MassAlphaVal = o2::constants::physics::MassAlpha;
229230

231+
// PDG of Mothers
232+
static constexpr int kPdgMotherlist[] = {
233+
PDGProton, // proton
234+
PDGPion, // pi+
235+
PDGKaon, // K+
236+
311, // K0
237+
PDGDeuteron, // deuteron
238+
PDGTriton, // triton
239+
PDGHelium, // He-3
240+
PDGAlpha, // Alpha
241+
1000130270, // Aluminium
242+
1000140280, // Silicon
243+
1000260560 // Iron
244+
};
245+
static constexpr int kNumMotherlist = sizeof(kPdgMotherlist) / sizeof(kPdgMotherlist[0]);
246+
static constexpr int kMaxNumMom = 4; // X: 0..4, overflow=5
247+
230248
template <typename TrackType>
231249
float averageClusterSizeTrk(const TrackType& track)
232250
{
@@ -825,24 +843,12 @@ struct LFNucleiBATask {
825843
histos.add<TH1>("tracks/triton/h1antiTritonSpectraTrueTransport", "#it{p}_{T} (#bar{t})", HistType::kTH1F, {ptAxis});
826844
}
827845
if (enableHe) {
828-
// histos.add<TH1>("tracks/helium/h1HeliumSpectraTrue", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
829-
// histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueWPID", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
830-
// histos.add<TH1>("tracks/helium/h1HeliumSpectraTruePrim", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
831-
// histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueSec", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
832-
// histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueTransport", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
833-
834846
histos.add<TH1>("tracks/helium/h1HeliumSpectraTrue_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
835847
histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueWPID_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
836848
histos.add<TH1>("tracks/helium/h1HeliumSpectraTruePrim_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
837849
histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueSec_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
838850
histos.add<TH1>("tracks/helium/h1HeliumSpectraTrueTransport_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
839851

840-
// histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrue", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
841-
// histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrueWPID", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
842-
// histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTruePrim", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
843-
// histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrueSec", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
844-
// histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrueTransport", "#it{p}_{T}/z (He)", HistType::kTH1F, {ptZHeAxis});
845-
846852
histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrue_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
847853
histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTrueWPID_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
848854
histos.add<TH1>("tracks/helium/h1antiHeliumSpectraTruePrim_Z2", "#it{p}_{T} (He)", HistType::kTH1F, {ptHeAxis});
@@ -1138,6 +1144,25 @@ struct LFNucleiBATask {
11381144
histos.add<TH2>("tracks/helium/dca/before/hDCAxyVsPtHeliumTruePrim", "DCAxy vs Pt (He); #it{p}_{T} (GeV/#it{c}); DCAxy (cm)", HistType::kTH2F, {{ptZHeAxis}, {dcaxyAxis}});
11391145
histos.add<TH2>("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueSec", "DCAxy vs Pt (He); #it{p}_{T} (GeV/#it{c}); DCAxy (cm)", HistType::kTH2F, {{ptZHeAxis}, {dcaxyAxis}});
11401146
histos.add<TH2>("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueMaterial", "DCAxy vs Pt (He); #it{p}_{T} (GeV/#it{c}); DCAxy (cm)", HistType::kTH2F, {{ptZHeAxis}, {dcaxyAxis}});
1147+
1148+
histos.add<TH2>("tracks/helium/dca/before/hMomTrueMaterial", "MC mothers;mother index;mother PDG", HistType::kTH2I, {{kMaxNumMom + 2, -0.5, (double)kMaxNumMom + 1.5}, {kNumMotherlist + 2, -1.5, (double)kNumMotherlist + 0.5}});
1149+
1150+
// Fix for getting TH2 pointer
1151+
std::shared_ptr<TH2> hTemp = histos.get<TH2>(HIST("tracks/helium/dca/before/hMomTrueMaterial"));
1152+
TH2* hPDG = hTemp.get();
1153+
1154+
TAxis* axPDG = hPDG->GetXaxis();
1155+
for (int i = 0; i <= kMaxNumMom; ++i) {
1156+
axPDG->SetBinLabel(i + 1, Form("%d", i));
1157+
}
1158+
axPDG->SetBinLabel(kMaxNumMom + 2, ">=5");
1159+
TAxis* ayPDG = hPDG->GetYaxis();
1160+
ayPDG->SetBinLabel(1, "-1"); // undefined
1161+
ayPDG->SetBinLabel(2, "0"); // other
1162+
for (int i = 0; i < kNumMotherlist; ++i) {
1163+
ayPDG->SetBinLabel(i + 3, Form("%d", kPdgMotherlist[i]));
1164+
}
1165+
11411166
histos.add<TH2>("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueTransport", "DCAxy vs Pt (He); #it{p}_{T} (GeV/#it{c}); DCAxy (cm)", HistType::kTH2F, {{ptZHeAxis}, {dcaxyAxis}});
11421167

11431168
histos.add<TH2>("tracks/helium/dca/before/hDCAxyVsPtantiHeliumTrue", "DCAxy vs Pt (#bar{He}); #it{p}_{T} (GeV/#it{c}); DCAxy (cm)", HistType::kTH2F, {{ptZHeAxis}, {dcaxyAxis}});
@@ -2099,7 +2124,7 @@ struct LFNucleiBATask {
20992124
template <bool IsMC, bool IsFilteredData, typename CollisionType, typename TracksType, typename ParticleType>
21002125
void fillHistograms(const CollisionType& event,
21012126
const TracksType& tracks,
2102-
const ParticleType& /*particles*/)
2127+
const ParticleType& particles)
21032128
{
21042129
histos.fill(HIST("event/eventSkimming"), 0.5);
21052130
// Apply skimming
@@ -2219,14 +2244,13 @@ struct LFNucleiBATask {
22192244
histos.fill(HIST("tracks/avgClusterSizePerCoslInvVsITSlayers"), track.p(), averageClusterSizePerCoslInv(track), track.itsNCls());
22202245
}
22212246

2222-
if (track.itsNCls() < trkqcOptions.cfgCutITSClusters)
2223-
continue;
2224-
if (track.tpcNClsCrossedRows() < trkqcOptions.cfgCutTPCXRows)
2225-
continue;
2226-
if (track.tpcNClsFound() < trkqcOptions.cfgCutTPCClusters)
2227-
continue;
2228-
if (track.tpcCrossedRowsOverFindableCls() < trkqcOptions.cfgCutTPCCROFnd)
2247+
if (track.itsNCls() < trkqcOptions.cfgCutITSClusters ||
2248+
track.tpcNClsCrossedRows() < trkqcOptions.cfgCutTPCXRows ||
2249+
track.tpcNClsFound() < trkqcOptions.cfgCutTPCClusters ||
2250+
track.tpcCrossedRowsOverFindableCls() < trkqcOptions.cfgCutTPCCROFnd) {
22292251
continue;
2252+
}
2253+
22302254
auto tpcChi2NclRange = (std::vector<float>)trkqcOptions.tpcChi2NclCuts;
22312255
if ((track.tpcChi2NCl() < tpcChi2NclRange[0]) || (track.tpcChi2NCl() > tpcChi2NclRange[1]))
22322256
continue;
@@ -2252,21 +2276,27 @@ struct LFNucleiBATask {
22522276
float shiftPtNeg = 0.f;
22532277

22542278
if (enablePtShiftHe && !fShiftPtHe) {
2279+
// NOLINTNEXTLINE(cppcoreguidelines-owning-memory, modernize-make-unique)
22552280
fShiftPtHe = new TF1("fShiftPtHe", "[0] * TMath::Exp([1] + [2] * x) + [3] + [4] * x", 0.f, 8.f);
2256-
auto par = (std::vector<float>)parShiftPtHe;
2257-
fShiftPtHe->SetParameters(par[0], par[1], par[2], par[3], par[4]);
2281+
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-cstyle-cast)
2282+
auto parHe = (std::vector<float>)parShiftPtHe;
2283+
fShiftPtHe->SetParameters(parHe[0], parHe[1], parHe[2], parHe[3], parHe[4]);
22582284
}
22592285

22602286
if (enablePtShiftHe && !fShiftPtantiHe) {
2287+
// NOLINTNEXTLINE(cppcoreguidelines-owning-memory, modernize-make-unique)
22612288
fShiftPtantiHe = new TF1("fShiftPtantiHe", "[0] * TMath::Exp([1] + [2] * x) + [3] + [4] * x", 0.f, 8.f);
2262-
auto par = (std::vector<float>)parShiftPtAntiHe;
2263-
fShiftPtantiHe->SetParameters(par[0], par[1], par[2], par[3], par[4]);
2289+
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-cstyle-cast)
2290+
auto parAntiHe = (std::vector<float>)parShiftPtAntiHe;
2291+
fShiftPtantiHe->SetParameters(parAntiHe[0], parAntiHe[1], parAntiHe[2], parAntiHe[3], parAntiHe[4]);
22642292
}
22652293

22662294
if (enablePtShiftAntiD && !fShiftAntiD) {
2295+
// NOLINTNEXTLINE(cppcoreguidelines-owning-memory, modernize-make-unique)
22672296
fShiftAntiD = new TF1("fShiftAntiD", "[0] * TMath::Exp([1] + [2] * x) + [3] + [4] * x", 0.f, 8.f);
2268-
auto par = (std::vector<float>)parShiftPtAntiD;
2269-
fShiftAntiD->SetParameters(par[0], par[1], par[2], par[3], par[4]);
2297+
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-cstyle-cast)
2298+
auto parAntiD = (std::vector<float>)parShiftPtAntiD;
2299+
fShiftAntiD->SetParameters(parAntiD[0], parAntiD[1], parAntiD[2], parAntiD[3], parAntiD[4]);
22702300
}
22712301

22722302
switch (unableAntiDPtShift) {
@@ -2282,9 +2312,11 @@ struct LFNucleiBATask {
22822312
}
22832313

22842314
if (enablePtShiftD && !fShiftD) {
2315+
// NOLINTNEXTLINE(cppcoreguidelines-owning-memory, modernize-make-unique)
22852316
fShiftD = new TF1("fShiftD", "[0] * TMath::Exp([1] + [2] * x) + [3] + [4] * x", 0.f, 8.f);
2286-
auto par = (std::vector<float>)parShiftPtD;
2287-
fShiftD->SetParameters(par[0], par[1], par[2], par[3], par[4]);
2317+
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-cstyle-cast)
2318+
auto parD = (std::vector<float>)parShiftPtD;
2319+
fShiftD->SetParameters(parD[0], parD[1], parD[2], parD[3], parD[4]);
22882320
}
22892321

22902322
switch (unableDPtShift) {
@@ -2475,11 +2507,16 @@ struct LFNucleiBATask {
24752507
}
24762508

24772509
// Rapidity cuts
2478-
prRapCut = track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Proton)) > kinemOptions.cfgRapidityCutLow && track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Proton)) < kinemOptions.cfgRapidityCutHigh;
2479-
deRapCut = track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Deuteron)) > kinemOptions.cfgRapidityCutLow && track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Deuteron)) < kinemOptions.cfgRapidityCutHigh;
2480-
trRapCut = track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Triton)) > kinemOptions.cfgRapidityCutLow && track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Triton)) < kinemOptions.cfgRapidityCutHigh;
2481-
heRapCut = track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)) > kinemOptions.cfgRapidityCutLow && track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)) < kinemOptions.cfgRapidityCutHigh;
2482-
alRapCut = track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Alpha)) > kinemOptions.cfgRapidityCutLow && track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Alpha)) < kinemOptions.cfgRapidityCutHigh;
2510+
auto rapCheck = [&](float m2z) {
2511+
const float rap = track.rapidity(m2z);
2512+
return (rap > kinemOptions.cfgRapidityCutLow) && (rap < kinemOptions.cfgRapidityCutHigh);
2513+
};
2514+
2515+
prRapCut = rapCheck(MassProtonVal);
2516+
deRapCut = rapCheck(MassDeuteronVal);
2517+
trRapCut = rapCheck(MassTritonVal);
2518+
heRapCut = rapCheck(MassHeliumVal / 2.0);
2519+
alRapCut = rapCheck(MassAlphaVal / 2.0);
24832520

24842521
isDeuteron = enableDe && deRapCut;
24852522
isHelium = enableHe && heRapCut;
@@ -2615,6 +2652,7 @@ struct LFNucleiBATask {
26152652
}
26162653

26172654
if constexpr (IsMC) {
2655+
// auto const& mcParticles = particles;
26182656
bool isPhysPrim = false;
26192657
bool isProdByGen = false;
26202658
bool isWeakDecay = false;
@@ -3037,6 +3075,8 @@ struct LFNucleiBATask {
30373075
break;
30383076
}
30393077
}
3078+
} else {
3079+
(void)particles;
30403080
}
30413081
// Tracks DCA histos fill
30423082
if (outFlagOptions.makeDCABeforeCutPlots) {
@@ -3114,15 +3154,23 @@ struct LFNucleiBATask {
31143154
}
31153155

31163156
if constexpr (IsMC) {
3157+
// auto const& mcParticles = particles;
31173158
bool isPhysPrim = false;
31183159
bool isProdByGen = false;
31193160
bool isWeakDecay = false;
31203161
bool hasFakeHit = false;
31213162

31223163
// PID
31233164
int pdgCode = 0;
3165+
int pdgMom = 0;
31243166
// gen Pt
31253167
float genPt = 0;
3168+
// Mothers variables
3169+
[[maybe_unused]] int firstMotherId = -1;
3170+
[[maybe_unused]] int firstMotherPdg = -1;
3171+
[[maybe_unused]] int pdgList[8];
3172+
[[maybe_unused]] int nSaved = 0;
3173+
31263174
if constexpr (IsFilteredData) {
31273175
isPhysPrim = track.isPhysicalPrimary();
31283176
isProdByGen = track.producedByGenerator();
@@ -3138,8 +3186,35 @@ struct LFNucleiBATask {
31383186
isProdByGen = track.mcParticle().producedByGenerator();
31393187
isWeakDecay = track.mcParticle().getProcess() == 4;
31403188
pdgCode = track.mcParticle().pdgCode();
3141-
genPt = track.mcParticle().pt();
31423189

3190+
// Access to MC particles mother
3191+
o2::aod::McParticles::iterator mc = particles.iteratorAt(track.mcParticleId());
3192+
gsl::span<const int> motherIds = mc.mothersIds();
3193+
const int nMothers = static_cast<int>(motherIds.size());
3194+
firstMotherId = -1;
3195+
firstMotherPdg = -1;
3196+
3197+
// int pdgList[8];
3198+
nSaved = 0;
3199+
3200+
for (int iMom = 0; iMom < nMothers; ++iMom) {
3201+
int motherId = motherIds[iMom];
3202+
if (motherId < 0 || motherId >= particles.size()) {
3203+
continue; // added check on mother
3204+
}
3205+
o2::aod::McParticles::iterator mother = particles.iteratorAt(motherId);
3206+
pdgMom = mother.pdgCode();
3207+
3208+
if (iMom == 0) {
3209+
firstMotherId = motherId;
3210+
firstMotherPdg = pdgMom;
3211+
}
3212+
if (nSaved < 8) {
3213+
pdgList[nSaved++] = pdgMom;
3214+
}
3215+
}
3216+
3217+
genPt = track.mcParticle().pt();
31433218
for (int i = 0; i < 10; i++) { // From ITS to TPC
31443219
if (track.mcMask() & 1 << i) {
31453220
hasFakeHit = true;
@@ -3402,8 +3477,28 @@ struct LFNucleiBATask {
34023477
histos.fill(HIST("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueTransport"), hePt, track.dcaXY());
34033478
if (isWeakDecay)
34043479
histos.fill(HIST("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueSec"), hePt, track.dcaXY());
3405-
else
3480+
else {
34063481
histos.fill(HIST("tracks/helium/dca/before/hDCAxyVsPtHeliumTrueMaterial"), hePt, track.dcaXY());
3482+
if (!IsFilteredData) {
3483+
if (nSaved > 0) {
3484+
for (int i = 0; i < nSaved; ++i) {
3485+
int idxComp = (i <= kMaxNumMom) ? i : (kMaxNumMom + 1);
3486+
int pdgMom = pdgList[i];
3487+
int yVal = -1;
3488+
if (pdgMom != -1) {
3489+
yVal = 0;
3490+
for (int j = 0; j < kNumMotherlist; ++j) {
3491+
if (kPdgMotherlist[j] == pdgMom) {
3492+
yVal = j + 1;
3493+
break;
3494+
}
3495+
}
3496+
}
3497+
histos.fill(HIST("tracks/helium/dca/before/hMomTrueMaterial"), idxComp, yVal);
3498+
}
3499+
}
3500+
}
3501+
}
34073502
if (track.hasTOF() && outFlagOptions.doTOFplots) {
34083503
histos.fill(HIST("tracks/helium/dca/before/TOF/hDCAxyVsPtHeliumTrueTransport"), hePt, track.dcaXY());
34093504
if (isWeakDecay)
@@ -3682,6 +3777,8 @@ struct LFNucleiBATask {
36823777
}
36833778
break;
36843779
}
3780+
} else {
3781+
(void)particles;
36853782
}
36863783

36873784
// DCA Cut
@@ -4553,11 +4650,8 @@ struct LFNucleiBATask {
45534650
histos.fill(HIST("tracks/eff/helium/hPtHe"), 2 * hePt);
45544651
histos.fill(HIST("tracks/eff/helium/h2pVsTPCmomentumHe"), heTPCmomentum, heP);
45554652
}
4556-
// histos.fill(HIST("tracks/helium/h1HeliumSpectra"), hePt);
45574653
histos.fill(HIST("tracks/helium/h1HeliumSpectra_Z2"), 2 * hePt);
4558-
// histos.fill(HIST("tracks/helium/h2HeliumYvsPt"), track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)), hePt);
45594654
histos.fill(HIST("tracks/helium/h2HeliumYvsPt_Z2"), track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)), 2 * hePt);
4560-
// histos.fill(HIST("tracks/helium/h2HeliumEtavsPt"), track.eta(), hePt);
45614655
histos.fill(HIST("tracks/helium/h2HeliumEtavsPt_Z2"), track.eta(), 2 * hePt);
45624656
if (outFlagOptions.enablePIDplot)
45634657
histos.fill(HIST("tracks/helium/h2TPCsignVsTPCmomentumHelium"), heTPCmomentum, track.tpcSignal());
@@ -4567,11 +4661,8 @@ struct LFNucleiBATask {
45674661
histos.fill(HIST("tracks/eff/helium/hPtantiHe"), 2 * antihePt);
45684662
histos.fill(HIST("tracks/eff/helium/h2pVsTPCmomentumantiHe"), antiheTPCmomentum, antiheP);
45694663
}
4570-
// histos.fill(HIST("tracks/helium/h1antiHeliumSpectra"), antihePt);
45714664
histos.fill(HIST("tracks/helium/h1antiHeliumSpectra_Z2"), 2 * antihePt);
4572-
// histos.fill(HIST("tracks/helium/h2antiHeliumYvsPt"), track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)), antihePt);
45734665
histos.fill(HIST("tracks/helium/h2antiHeliumYvsPt_Z2"), track.rapidity(o2::track::PID::getMass2Z(o2::track::PID::Helium3)), 2 * antihePt);
4574-
// histos.fill(HIST("tracks/helium/h2antiHeliumEtavsPt"), track.eta(), antihePt);
45754666
histos.fill(HIST("tracks/helium/h2antiHeliumEtavsPt_Z2"), track.eta(), 2 * antihePt);
45764667
if (outFlagOptions.enablePIDplot)
45774668
histos.fill(HIST("tracks/helium/h2TPCsignVsTPCmomentumantiHelium"), antiheTPCmomentum, track.tpcSignal());
@@ -4811,6 +4902,7 @@ struct LFNucleiBATask {
48114902
}
48124903

48134904
if constexpr (IsMC) {
4905+
// auto const& mcParticles = particles;
48144906
bool isPhysPrim = false;
48154907
bool isProdByGen = false;
48164908
bool isWeakDecay = false;
@@ -5733,6 +5825,8 @@ struct LFNucleiBATask {
57335825
default:
57345826
break;
57355827
}
5828+
} else {
5829+
(void)particles;
57365830
}
57375831
}
57385832
}

0 commit comments

Comments
 (0)