Skip to content

Commit 1c9f91c

Browse files
authored
[PWGCF] Fixes in femto framework (#18026)
1 parent c9cae50 commit 1c9f91c

17 files changed

Lines changed: 127 additions & 100 deletions

‎PWGCF/Femto/Core/cascadeBuilder.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -669,7 +669,7 @@ class CascadeBuilder
669669
}
670670

671671
template <typename T1, typename T2, typename T3, typename T4>
672-
void fillCascade(T1& collisionBuilder, T2& cascadeProducts, T3 const& cascade, T4 const& col, int bachelorIndex, int posDaughterIndex, int negDaughterIndex)
672+
void fillCascade(T1& collisionBuilder, T2& cascadeProducts, T3 const& cascade, T4 const& col, int64_t bachelorIndex, int64_t posDaughterIndex, int64_t negDaughterIndex)
673673
{
674674
float strangeTofBachelor = 0.f;
675675
float strangeTofPosDau = 0.f;

‎PWGCF/Femto/Core/cascadeHistManager.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -475,7 +475,7 @@ class CascadeHistManager
475475
this->fillAnalysis(cascadeCandidate);
476476
}
477477
if constexpr (modes::isFlagSet(mode, modes::Mode::kQa)) {
478-
this->fillQa(cascadeCandidate, bachelor, negDaughter, posDaughter);
478+
this->fillQa(cascadeCandidate, bachelor, posDaughter, negDaughter);
479479
}
480480
if constexpr (modes::isFlagSet(mode, modes::Mode::kMc)) {
481481
this->template fillMc<mode>(cascadeCandidate, col, mcParticles, mcMothers, mcPartonicMothers);

‎PWGCF/Femto/Core/collisionBuilder.h‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -669,6 +669,9 @@ class CollisionBuilder
669669
template <modes::System system, typename T1, typename T2, typename T3, typename T4, typename T5>
670670
void initCollision(T1 const& bc, T2 const& col, T3 const& tracks, T4& ccdb, T5& histRegistry)
671671
{
672+
if (!mFillAnyTable) {
673+
return; // selection object was never configured (no collision table requested), applying selections would use an unset registry
674+
}
672675
if (mRunNumber != bc.runNumber()) {
673676
mRunNumber = bc.runNumber();
674677
if (mMagFieldForced == 0) {

‎PWGCF/Femto/Core/mcBuilder.h‎

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -149,18 +149,18 @@ class McBuilder
149149
mProduceMcParticles = utils::enableTable("FMcParticles_001", table.produceMcParticles.value, initContext);
150150
mProduceMcMothers = utils::enableTable("FMcMothers_001", table.produceMcMothers.value, initContext);
151151
mProduceMcPartonicMothers = utils::enableTable("FMcPartMoths_001", table.produceMcPartonicMothers.value, initContext);
152-
mProduceMcMotherLabels = utils::enableTable("FMcMotherLabels", table.producedMcMotherLabels.value, initContext);
153-
154-
mProduceCollisionLabels = utils::enableTable("FColLabels", table.producedCollisionLabels.value, initContext);
155-
mProduceTrackLabels = utils::enableTable("FTrackLabels", table.producedTrackLabels.value, initContext);
156-
mProduceLambdaLabels = utils::enableTable("FLambdaLabels", table.producedLambdaLabels.value, initContext);
157-
mProduceK0shortLabels = utils::enableTable("FK0shortLabels", table.producedK0shortLabels.value, initContext);
158-
mProduceD0Labels = utils::enableTable("FD0Labels", table.producedD0Labels.value, initContext);
159-
mProduceLcLabels = utils::enableTable("FLcLabels", table.producedLcLabels.value, initContext);
160-
mProduceSigmaLabels = utils::enableTable("FSigmaLabels", table.producedSigmaLabels.value, initContext);
161-
mProduceSigmaPlusLabels = utils::enableTable("FSigmaPlusLabels", table.producedSigmaPlusLabels.value, initContext);
162-
mProduceXiLabels = utils::enableTable("FXiLabels", table.producedXiLabels.value, initContext);
163-
mProduceOmegaLabels = utils::enableTable("FOmegaLabels", table.producedOmegaLabels.value, initContext);
152+
mProduceMcMotherLabels = utils::enableTable("FMcMotherLabels_001", table.producedMcMotherLabels.value, initContext);
153+
154+
mProduceCollisionLabels = utils::enableTable("FColLabels_001", table.producedCollisionLabels.value, initContext);
155+
mProduceTrackLabels = utils::enableTable("FTrackLabels_001", table.producedTrackLabels.value, initContext);
156+
mProduceLambdaLabels = utils::enableTable("FLambdaLabels_001", table.producedLambdaLabels.value, initContext);
157+
mProduceK0shortLabels = utils::enableTable("FK0shortLabels_001", table.producedK0shortLabels.value, initContext);
158+
mProduceD0Labels = utils::enableTable("FD0Labels_001", table.producedD0Labels.value, initContext);
159+
mProduceLcLabels = utils::enableTable("FLcLabels_001", table.producedLcLabels.value, initContext);
160+
mProduceSigmaLabels = utils::enableTable("FSigmaLabels_001", table.producedSigmaLabels.value, initContext);
161+
mProduceSigmaPlusLabels = utils::enableTable("FSigmaPlusLabels_001", table.producedSigmaPlusLabels.value, initContext);
162+
mProduceXiLabels = utils::enableTable("FXiLabels_001", table.producedXiLabels.value, initContext);
163+
mProduceOmegaLabels = utils::enableTable("FOmegaLabels_001", table.producedOmegaLabels.value, initContext);
164164

165165
if (mProduceMcCollisions || mProduceCollisionLabels ||
166166
mProduceMcParticles || mProduceMcMotherLabels ||

‎PWGCF/Femto/Core/pairBuilder.h‎

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -398,14 +398,6 @@ class PairV0V0Builder
398398
<< "). Overriding sameSpecies to false.";
399399
mSameSpecies = false;
400400
}
401-
} else {
402-
// same v0 species: both values are legitimate (e.g. lambda-lambda vs lambda-antilambda),
403-
// but running as different species only makes sense if the two selections are disjoint
404-
if (!mSameSpecies && confV0Selection1.sign.value == confV0Selection2.sign.value) {
405-
LOG(warn) << "sameSpecies=false for identical v0 species with identical sign ("
406-
<< confV0Selection1.sign.value << "). If both selections match the same "
407-
<< "candidates, this produces self-pairs and double counting.";
408-
}
409401
}
410402

411403
mColHistManager.template init<modeSe>(registry, colHistSpec, confCollisionBinning);
@@ -1910,17 +1902,17 @@ class PairTrackCascadeBuilder
19101902
}
19111903

19121904
template <modes::Mode mode, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
1913-
void processMixedEvent(T1 const& cols, T2& trackTable, T3& trackPartition, T4& v0Partition, T5& cache, T6& binsVtxMult, T7& binsVtxCent, T8& binsVtxMultCent)
1905+
void processMixedEvent(T1 const& cols, T2& trackTable, T3& trackPartition, T4& cascadePartition, T5& cache, T6& binsVtxMult, T7& binsVtxCent, T8& binsVtxMultCent)
19141906
{
19151907
switch (mMixingPolicy) {
19161908
case static_cast<int>(pairhistmanager::kVtxMult):
1917-
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, v0Partition, trackTable, cache, binsVtxMult, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
1909+
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, cascadePartition, trackTable, cache, binsVtxMult, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
19181910
break;
19191911
case static_cast<int>(pairhistmanager::kVtxCent):
1920-
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, v0Partition, trackTable, cache, binsVtxCent, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
1912+
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, cascadePartition, trackTable, cache, binsVtxCent, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
19211913
break;
19221914
case static_cast<int>(pairhistmanager::kVtxMultCent):
1923-
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, v0Partition, trackTable, cache, binsVtxMultCent, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
1915+
pairprocesshelpers::processMixedEvent<mode>(cols, trackPartition, cascadePartition, trackTable, cache, binsVtxMultCent, mMixingDepth, mPairHistManagerMe, mCprMe, mPcMe);
19241916
break;
19251917
default:
19261918
LOG(fatal) << "Invalid binning policiy specifed. Breaking...";
@@ -2067,7 +2059,7 @@ class PairMcParticleMcParticleBuilder
20672059
bool processSameEvent(T1 const& col, T2 const& mcParticles, T3 const& mcMothers, T4 const& mcPartonicMothers, T5& partition1, T6& partition2, T7& cache)
20682060
{
20692061
if (mSameSpecies) {
2070-
auto mcParticleSlice = partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
2062+
auto mcParticleSlice = partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
20712063

20722064
if (mcParticleSlice.size() < nLimitPartitionIdenticalParticles) {
20732065
return false;
@@ -2080,8 +2072,8 @@ class PairMcParticleMcParticleBuilder
20802072
return pairprocesshelpers::processSameEvent<mode>(mcParticleSlice, mcParticles, mcMothers, mcPartonicMothers, col, mMcParticleHistManager1, mPairHistManagerSe, mMcParticleCleaner1, mCprSe, mPcSe, pairOrder);
20812073
}
20822074

2083-
auto mcParticleSlice1 = partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
2084-
auto mcParticleSlice2 = partition2->sliceByCached(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
2075+
auto mcParticleSlice1 = partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
2076+
auto mcParticleSlice2 = partition2->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, col.globalIndex(), cache);
20852077
if (mcParticleSlice1.size() < nLimitPartitionParticles || mcParticleSlice2.size() < nLimitPartitionParticles) {
20862078
return false;
20872079
}

‎PWGCF/Femto/Core/pairProcessHelpers.h‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ void processMixedEvent(T1 const& Collisions,
667667
int windowSizeRaw = 0;
668668
int windowSizeEffective = 0;
669669

670-
std::optional<decltype(Partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle1;
670+
std::optional<decltype(Partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle1;
671671

672672
for (auto const& [collision1, collision2] : o2::soa::selfCombinations(policy, depth, -1, Collisions, Collisions)) {
673673

@@ -678,12 +678,12 @@ void processMixedEvent(T1 const& Collisions,
678678
windowSizeRaw = 0;
679679
windowSizeEffective = 0;
680680
lastCollisionIndex = collision1.globalIndex();
681-
sliceParticle1.emplace(Partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, collision1.globalIndex(), cache));
681+
sliceParticle1.emplace(Partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, collision1.globalIndex(), cache));
682682
}
683683

684684
++windowSizeRaw;
685685

686-
auto sliceParticle2 = Partition2->sliceByCached(o2::aod::femtomcparticle::fMcColId, collision2.globalIndex(), cache);
686+
auto sliceParticle2 = Partition2->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, collision2.globalIndex(), cache);
687687

688688
PairHistManager.resetTrackedParticlesPerEvent();
689689

‎PWGCF/Femto/Core/tripletBuilder.h‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1076,7 +1076,7 @@ class TripletMcParticleMcParticleMcParticleBuilder
10761076
tripletprocesshelpers::TripletOrder tripletOrder = tripletprocesshelpers::kOrder123;
10771077

10781078
if (mParticle1Particle2Particle3AreSameSpecies) {
1079-
auto mcParticleSlice1 = partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1079+
auto mcParticleSlice1 = partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
10801080
if (mcParticleSlice1.size() < nLimitPartitionIdenticalParticles123) {
10811081
return false;
10821082
}
@@ -1088,8 +1088,8 @@ class TripletMcParticleMcParticleMcParticleBuilder
10881088
}
10891089

10901090
if (mParticle1Particle2AreSameSpecies) {
1091-
auto mcParticleSlice1 = partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1092-
auto mcParticleSlice3 = partition3->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1091+
auto mcParticleSlice1 = partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1092+
auto mcParticleSlice3 = partition3->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
10931093
if (mcParticleSlice1.size() < nLimitPartitionIdenticalParticles12 || mcParticleSlice3.size() < nLimitPartitionParticles) {
10941094
return false;
10951095
}
@@ -1100,9 +1100,9 @@ class TripletMcParticleMcParticleMcParticleBuilder
11001100
return tripletprocesshelpers::processSameEventMcTruth<mode>(mcParticleSlice1, mcParticleSlice3, mcParticles, mcMothers, mcPartonicMothers, mcCol, mMcParticleHistManager1, mMcParticleHistManager3, mTripletHistManagerSe, mMcParticleCleaner1, mMcParticleCleaner3, mCtrSe, mTcSe, tripletOrder);
11011101
}
11021102

1103-
auto mcParticleSlice1 = partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1104-
auto mcParticleSlice2 = partition2->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1105-
auto mcParticleSlice3 = partition3->sliceByCached(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1103+
auto mcParticleSlice1 = partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1104+
auto mcParticleSlice2 = partition2->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
1105+
auto mcParticleSlice3 = partition3->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, mcCol.globalIndex(), cache);
11061106
if (mcParticleSlice1.size() < nLimitPartitionParticles || mcParticleSlice2.size() < nLimitPartitionParticles || mcParticleSlice3.size() < nLimitPartitionParticles) {
11071107
return false;
11081108
}

‎PWGCF/Femto/Core/tripletProcessHelpers.h‎

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ enum TripletOrder : uint8_t {
3535
kOrder123, // no swap
3636
kOrder213, // swap 1&2: for the case that particle 1 & 2 are the same species, particle 3 is something else
3737
kOrder132, // swap 2&3
38-
kOrder321, // reverse: swap 1&3
38+
kOrder231, // swap 1&2 & 1&3
39+
kOrder312, // swap 2&3 & 1&3
40+
kOrder321, // swap 1&3
3941
};
4042

4143
// process same event for identical 3 particles
@@ -76,6 +78,12 @@ bool processSameEvent(T1 const& SliceParticle,
7678
case kOrder132:
7779
TripletHistManager.setTriplet(p1, p3, p2, Collision);
7880
break;
81+
case kOrder231:
82+
TripletHistManager.setTriplet(p2, p3, p1, Collision);
83+
break;
84+
case kOrder312:
85+
TripletHistManager.setTriplet(p3, p1, p2, Collision);
86+
break;
7987
case kOrder321:
8088
TripletHistManager.setTriplet(p3, p2, p1, Collision);
8189
break;
@@ -291,6 +299,12 @@ bool processSameEvent(T1 const& SliceParticle,
291299
case kOrder132:
292300
TripletHistManager.setTripletMc(p1, p3, p2, mcParticles, Collision, mcCollisions);
293301
break;
302+
case kOrder231:
303+
TripletHistManager.setTripletMc(p2, p3, p1, mcParticles, Collision, mcCollisions);
304+
break;
305+
case kOrder312:
306+
TripletHistManager.setTripletMc(p3, p1, p2, mcParticles, Collision, mcCollisions);
307+
break;
294308
case kOrder321:
295309
TripletHistManager.setTripletMc(p3, p2, p1, mcParticles, Collision, mcCollisions);
296310
break;
@@ -403,7 +417,6 @@ bool processSameEvent(T1 const& SliceParticle1,
403417
}
404418

405419
// process same event for 3 different particles with mc information
406-
// NOTE: added `Cleaner1`, `Cleaner2`, `Cleaner3` (one per species)
407420
template <modes::Mode mode,
408421
typename T1,
409422
typename T2,
@@ -498,13 +511,6 @@ bool processSameEvent(T1 const& SliceParticle1,
498511
}
499512

500513
// --- mc truth only (kMc without kReco): triplets of generated particles ---------------------------
501-
// These are named processSameEventMcTruth (not processSameEvent) on purpose: several of the reco
502-
// overloads have the same number of arguments and every parameter is a template type, so the call
503-
// would be ambiguous.
504-
// The particles ARE the truth, so there is no track table, no reco counterpart and no charge rescaling.
505-
// The close triplet rejection and the triplet cleaner take the table of mc particles where the reco
506-
// helpers take the track table; both ignore it in the track-track-track case.
507-
508514
// process same event for identical 3 mc particles
509515
template <modes::Mode mode,
510516
typename T1,
@@ -548,16 +554,24 @@ bool processSameEventMcTruth(T1 const& SliceParticle,
548554

549555
// Randomize triplet order if enabled, then compute the kinematic (Q3) for this triplet
550556
switch (tripletOrder) {
557+
case kOrder123:
558+
TripletHistManager.setTripletMcTruth(p1, p2, p3, Collision);
559+
break;
551560
case kOrder213:
552561
TripletHistManager.setTripletMcTruth(p2, p1, p3, Collision);
553562
break;
554563
case kOrder132:
555564
TripletHistManager.setTripletMcTruth(p1, p3, p2, Collision);
556565
break;
566+
case kOrder231:
567+
TripletHistManager.setTripletMcTruth(p2, p3, p1, Collision);
568+
break;
569+
case kOrder312:
570+
TripletHistManager.setTripletMcTruth(p3, p1, p2, Collision);
571+
break;
557572
case kOrder321:
558573
TripletHistManager.setTripletMcTruth(p3, p2, p1, Collision);
559574
break;
560-
case kOrder123:
561575
default:
562576
TripletHistManager.setTripletMcTruth(p1, p2, p3, Collision);
563577
break;
@@ -729,7 +743,6 @@ bool processSameEventMcTruth(T1 const& SliceParticle1,
729743
}
730744

731745
// process mixed event
732-
// (no cleaner here — ParticleCleaner only operates on MC info, see the mc overload below)
733746
template <modes::Mode mode,
734747
typename T1,
735748
typename T2,
@@ -843,8 +856,6 @@ void processMixedEvent(T1 const& Collisions,
843856
}
844857

845858
// process mixed event in mc
846-
// NOTE: added `mcMothers`, `mcPartonicMothers` (missing in the original — mixed-event mc triplets
847-
// were never mc-cleaned via TcManager) plus `Cleaner1`, `Cleaner2`, `Cleaner3`
848859
template <modes::Mode mode,
849860
typename T1,
850861
typename T2,
@@ -1005,8 +1016,8 @@ void processMixedEventMcTruth(T1 const& McCollisions,
10051016
int windowSizeRaw = 0;
10061017
int windowSizeEffective = 0;
10071018

1008-
std::optional<decltype(Partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle1;
1009-
std::optional<decltype(Partition2->sliceByCached(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle2;
1019+
std::optional<decltype(Partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle1;
1020+
std::optional<decltype(Partition2->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, 0, cache))> sliceParticle2;
10101021

10111022
for (auto const& [collision1, collision2, collision3] : o2::soa::selfCombinations(policy, depth, -1, McCollisions, McCollisions, McCollisions)) {
10121023

@@ -1019,18 +1030,18 @@ void processMixedEventMcTruth(T1 const& McCollisions,
10191030
windowSizeEffective = 0;
10201031
lastCollisionIndex1 = collision1.globalIndex();
10211032
lastCollisionIndex2 = -1; // force sliceParticle2 to refresh below
1022-
sliceParticle1.emplace(Partition1->sliceByCached(o2::aod::femtomcparticle::fMcColId, collision1.globalIndex(), cache));
1033+
sliceParticle1.emplace(Partition1->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, collision1.globalIndex(), cache));
10231034
}
10241035

10251036
// inner sub-window
10261037
if (collision2.globalIndex() != lastCollisionIndex2) {
10271038
lastCollisionIndex2 = collision2.globalIndex();
1028-
sliceParticle2.emplace(Partition2->sliceByCached(o2::aod::femtomcparticle::fMcColId, collision2.globalIndex(), cache));
1039+
sliceParticle2.emplace(Partition2->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, collision2.globalIndex(), cache));
10291040
}
10301041

10311042
++windowSizeRaw;
10321043

1033-
auto sliceParticle3 = Partition3->sliceByCached(o2::aod::femtomcparticle::fMcColId, collision3.globalIndex(), cache);
1044+
auto sliceParticle3 = Partition3->sliceByCachedUnsorted(o2::aod::femtomcparticle::fMcColId, collision3.globalIndex(), cache);
10341045

10351046
TripletHistManager.resetTrackedParticlesPerEvent();
10361047

‎PWGCF/Femto/Core/twoTrackResonanceHistManager.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -216,8 +216,8 @@ class TwoTrackResonanceHistManager
216216
negDauPdgCodeAbs = std::abs(PDG_t::kPiMinus);
217217
} else {
218218
mPdgCode = -1 * mPdgCode;
219-
posDauPdgCodeAbs = std::abs(PDG_t::kKMinus);
220-
negDauPdgCodeAbs = std::abs(PDG_t::kPiPlus);
219+
posDauPdgCodeAbs = std::abs(PDG_t::kPiPlus);
220+
negDauPdgCodeAbs = std::abs(PDG_t::kKMinus);
221221
}
222222
} else {
223223
LOG(fatal) << "PDG code for TwoTrackResonance has to be either Rho, Phi or K^0*(892)";

‎PWGCF/Femto/Core/v0HistManager.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -618,7 +618,7 @@ class V0HistManager
618618
massLambda = v0candidate.massLambda();
619619
massAntiLambda = v0candidate.massAntiLambda();
620620
tofPosDau = posDau.tofNSigmaPi();
621-
tofNegDau = posDau.tofNSigmaPi();
621+
tofNegDau = negDau.tofNSigmaPi();
622622
}
623623

624624
mHistogramRegistry->fill(HIST(v0Prefix) + HIST(QaDir) + HIST(getHistName(kMassLambda, HistTable)), massLambda);

0 commit comments

Comments
 (0)