Skip to content

Commit 2f9bba4

Browse files
mjkim525alibuild
andauthored
[PWGLF] Update on Xi1530 and Reso-init (#15668)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent f620c3e commit 2f9bba4

File tree

4 files changed

+89
-42
lines changed

4 files changed

+89
-42
lines changed

PWGLF/DataModel/LFResonanceTables.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,9 @@ DECLARE_SOA_COLUMN(DaughterTOFNSigmaNegPr10, daughterTOFNSigmaNegPr10, int8_t);
231231
DECLARE_SOA_COLUMN(DaughterTOFNSigmaBachPi10, daughterTOFNSigmaBachPi10, int8_t); //! TOF PID x10 of the bachelor daughter as Pion
232232
DECLARE_SOA_COLUMN(DaughterTOFNSigmaBachKa10, daughterTOFNSigmaBachKa10, int8_t); //! TOF PID x10 of the bachelor daughter as Kaon
233233
DECLARE_SOA_COLUMN(DaughterTOFNSigmaBachPr10, daughterTOFNSigmaBachPr10, int8_t); //! TOF PID x10 of the bachelor daughter as Proton
234+
DECLARE_SOA_COLUMN(NCrossedRowsPos, nCrossedRowsPos, uint8_t); //! Number of TPC crossed rows of the positive daughter
235+
DECLARE_SOA_COLUMN(NCrossedRowsNeg, nCrossedRowsNeg, uint8_t); //! Number of TPC crossed rows of the negative daughter
236+
DECLARE_SOA_COLUMN(NCrossedRowsBach, nCrossedRowsBach, uint8_t); //! Number of TPC crossed rows of the bachelor daughter
234237
// For MC
235238
DECLARE_SOA_INDEX_COLUMN(McParticle, mcParticle); //! Index of the corresponding MC particle
236239
DECLARE_SOA_COLUMN(IsPhysicalPrimary, isPhysicalPrimary, bool);
@@ -643,6 +646,8 @@ DECLARE_SOA_TABLE(ResoV0s, "AOD", "RESOV0",
643646
v0data::DCAPosToPV,
644647
v0data::DCANegToPV,
645648
v0data::DCAV0ToPV,
649+
resodaughter::NCrossedRowsPos,
650+
resodaughter::NCrossedRowsNeg,
646651
resodaughter::MLambda,
647652
resodaughter::MAntiLambda,
648653
resodaughter::MK0Short,
@@ -710,6 +715,9 @@ DECLARE_SOA_TABLE(ResoCascades, "AOD", "RESOCASCADE",
710715
cascdata::DCAXYCascToPV,
711716
cascdata::DCAZCascToPV,
712717
cascdata::Sign,
718+
resodaughter::NCrossedRowsPos,
719+
resodaughter::NCrossedRowsNeg,
720+
resodaughter::NCrossedRowsBach,
713721
resodaughter::MLambda,
714722
resodaughter::MXi,
715723
resodaughter::TransRadius,

PWGLF/TableProducer/Resonances/resonanceInitializer.cxx

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -796,6 +796,8 @@ struct ResonanceInitializer {
796796
v0.dcapostopv(),
797797
v0.dcanegtopv(),
798798
v0.dcav0topv(),
799+
static_cast<uint8_t>(v0.template posTrack_as<TrackType>().tpcNClsCrossedRows()),
800+
static_cast<uint8_t>(v0.template negTrack_as<TrackType>().tpcNClsCrossedRows()),
799801
v0.mLambda(),
800802
v0.mAntiLambda(),
801803
v0.mK0Short(),
@@ -858,6 +860,9 @@ struct ResonanceInitializer {
858860
casc.dcaXYCascToPV(),
859861
casc.dcaZCascToPV(),
860862
casc.sign(),
863+
static_cast<uint8_t>(casc.template posTrack_as<TrackType>().tpcNClsCrossedRows()),
864+
static_cast<uint8_t>(casc.template negTrack_as<TrackType>().tpcNClsCrossedRows()),
865+
static_cast<uint8_t>(casc.template bachelor_as<TrackType>().tpcNClsCrossedRows()),
861866
casc.mLambda(),
862867
casc.mXi(),
863868
casc.v0radius(), casc.cascradius(), casc.x(), casc.y(), casc.z());
@@ -1736,6 +1741,9 @@ struct ResonanceInitializer {
17361741
resoSpheroCollisions(computeSpherocity(tracks, trackSphMin, trackSphDef));
17371742
resoEvtPlCollisions(0, 0, 0, 0);
17381743
fillMCCollision<false>(collision, mcParticles);
1744+
// Loop over all MC particles
1745+
auto mcParts = selectedMCParticles->sliceBy(perMcCollision, collision.mcCollision().globalIndex());
1746+
fillMCParticles(mcParts, mcParticles);
17391747

17401748
// Loop over tracks
17411749
if (FilterForDerivedTables.cfgBypassNoPairV0s && (V0s.size() < 1)) {
@@ -1746,10 +1754,6 @@ struct ResonanceInitializer {
17461754
fillMicroTracks<true>(collision, tracks);
17471755
}
17481756
fillV0s<true>(collision, V0s, tracks);
1749-
1750-
// Loop over all MC particles
1751-
auto mcParts = selectedMCParticles->sliceBy(perMcCollision, collision.mcCollision().globalIndex());
1752-
fillMCParticles(mcParts, mcParticles);
17531757
}
17541758
PROCESS_SWITCH(ResonanceInitializer, processTrackV0MC, "Process for MC", false);
17551759

@@ -1825,6 +1829,9 @@ struct ResonanceInitializer {
18251829
mult = mcCollision.multMCNParticlesEta10();
18261830

18271831
fillMCCollision<false>(collision, mcParticles, impactpar, mult);
1832+
// Loop over all MC particles
1833+
auto mcParts = selectedMCParticles->sliceBy(perMcCollision, mcId);
1834+
fillMCParticles(mcParts, mcParticles);
18281835

18291836
// Loop over tracks
18301837
if (FilterForDerivedTables.cfgBypassNoPairV0s && (V0s.size() < 1)) {
@@ -1839,16 +1846,11 @@ struct ResonanceInitializer {
18391846
}
18401847
fillV0s<true>(collision, V0s, tracks);
18411848
fillCascades<true>(collision, Cascades, tracks);
1842-
1843-
// Loop over all MC particles
1844-
auto mcParts = selectedMCParticles->sliceBy(perMcCollision, mcId);
1845-
fillMCParticles(mcParts, mcParticles);
18461849
}
18471850
PROCESS_SWITCH(ResonanceInitializer, processTrackV0CascMC, "Process for MC", false);
18481851

18491852
// Following the discussions at the PAG meeting (https://indico.cern.ch/event/1583408/)
18501853
// we have introduced an auxiliary task that, when the resonanceInitializer.cxx is used,
1851-
// Only consider N_rec / N_gen i.e. not consider level of N_gen at least once
18521854
void processMCgen(soa::Join<aod::McCollisions, aod::McCentFT0Ms, aod::MultMCExtras>::iterator const& mcCollision,
18531855
aod::McParticles const& mcParticles,
18541856
const soa::SmallGroups<o2::soa::Join<ResoEvents001, aod::McCollisionLabels>>& collisions,

PWGLF/TableProducer/Resonances/resonanceModuleInitializer.cxx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1034,6 +1034,8 @@ struct ResonanceDaughterInitializer {
10341034
v0.dcapostopv(),
10351035
v0.dcanegtopv(),
10361036
v0.dcav0topv(),
1037+
0,
1038+
0,
10371039
v0.mLambda(),
10381040
v0.mAntiLambda(),
10391041
v0.mK0Short(),
@@ -1206,6 +1208,9 @@ struct ResonanceDaughterInitializer {
12061208
casc.dcaXYCascToPV(),
12071209
casc.dcaZCascToPV(),
12081210
casc.sign(),
1211+
0,
1212+
0,
1213+
0,
12091214
casc.mLambda(),
12101215
casc.mXi(),
12111216
casc.v0radius(), casc.cascradius(), casc.x(), casc.y(), casc.z());

0 commit comments

Comments
 (0)