diff --git a/ALICE3/DataModel/ReducedTablesAlice3.h b/ALICE3/DataModel/ReducedTablesAlice3.h index f11becd0945..363ba50842f 100644 --- a/ALICE3/DataModel/ReducedTablesAlice3.h +++ b/ALICE3/DataModel/ReducedTablesAlice3.h @@ -39,9 +39,9 @@ namespace o2::aod namespace reducedeventalice3 { DECLARE_SOA_COLUMN(MultDensity, multDensity, float); -DECLARE_SOA_COLUMN(MCPosX, mcPosX, float); //! MC event position X -DECLARE_SOA_COLUMN(MCPosY, mcPosY, float); //! MC event position Y -DECLARE_SOA_COLUMN(MCPosZ, mcPosZ, float); //! MC event position Z +DECLARE_SOA_COLUMN(McPosX, mcPosX, float); //! MC event position X +DECLARE_SOA_COLUMN(McPosY, mcPosY, float); //! MC event position Y +DECLARE_SOA_COLUMN(McPosZ, mcPosZ, float); //! MC event position Z } // namespace reducedeventalice3 DECLARE_SOA_TABLE_STAGED(ReA3Events, "REA3EVENT", //! Main event information table @@ -63,7 +63,7 @@ DECLARE_SOA_TABLE(ReducedA3EventsInfo, "AOD", "REA3EVENTINFO", //! Main event DECLARE_SOA_TABLE(ReA3MCEvents, "AOD", "REA3MCEVENT", //! Event level MC truth information o2::soa::Index<>, - mccollision::GeneratorsID, reducedeventalice3::MCPosX, reducedeventalice3::MCPosY, reducedeventalice3::MCPosZ, + mccollision::GeneratorsID, reducedeventalice3::McPosX, reducedeventalice3::McPosY, reducedeventalice3::McPosZ, mccollision::T, mccollision::Weight, mccollision::ImpactParameter, mcmult_alice3::MultMC, mcmult_alice3::MultMC25, mcmult_alice3::MultMC125, mcmult_alice3::MultMC09); @@ -73,7 +73,7 @@ using ReA3Event = ReA3Events::iterator; namespace reducedtrackalice3 { // basic track information -DECLARE_SOA_INDEX_COLUMN(ReA3Event, rea3event); //! +DECLARE_SOA_INDEX_COLUMN(ReA3Event, reA3Event); //! DECLARE_SOA_INDEX_COLUMN(Track, track); //! // ---- flags reserved for storing various information during filtering DECLARE_SOA_BITMAP_COLUMN(FilteringFlags, filteringFlags, 64); //! @@ -124,7 +124,7 @@ DECLARE_SOA_TABLE(ReducedA3TracksBarrelCov, "AOD", "REA3BARRELCOV", //! track::CSnpSnp, track::CTglY, track::CTglZ, track::CTglSnp, track::CTglTgl, track::C1PtY, track::C1PtZ, track::C1PtSnp, track::C1PtTgl, track::C1Pt21Pt2); -namespace reducedA3trackMC +namespace reduceda3trackmc { DECLARE_SOA_INDEX_COLUMN(ReA3MCEvent, reA3MCEvent); //! DECLARE_SOA_COLUMN(McReducedFlags, mcReducedFlags, uint16_t); //! Flags to hold compressed MC selection information @@ -151,27 +151,26 @@ DECLARE_SOA_DYNAMIC_COLUMN(Y, y, //! Particle rapidity float pz = pt * std::sinh(eta); if ((e - pz) > static_cast(1e-7)) { return 0.5f * std::log((e + pz) / (e - pz)); - } else { - return -999.0f; } + return -999.0f; }); -} // namespace reducedA3trackMC +} // namespace reduceda3trackmc // NOTE: This table is nearly identical to the one from Framework (except that it points to the event ID, not the BC id) // This table contains all MC truth tracks (both barrel and muon) DECLARE_SOA_TABLE(ReA3MCTracks, "AOD", "REA3MCTRACK", //! MC track information (on disk) - o2::soa::Index<>, reducedA3trackMC::ReA3MCEventId, + o2::soa::Index<>, reduceda3trackmc::ReA3MCEventId, mcparticle::PdgCode, mcparticle::StatusCode, mcparticle::Flags, - reducedA3trackMC::MothersIds, reducedA3trackMC::DaughtersIdSlice, + reduceda3trackmc::MothersIds, reduceda3trackmc::DaughtersIdSlice, mcparticle::Weight, - reducedA3trackMC::Pt, reducedA3trackMC::Eta, reducedA3trackMC::Phi, reducedA3trackMC::E, + reduceda3trackmc::Pt, reduceda3trackmc::Eta, reduceda3trackmc::Phi, reduceda3trackmc::E, mcparticle::Vx, mcparticle::Vy, mcparticle::Vz, mcparticle::Vt, - reducedA3trackMC::McReducedFlags, - reducedA3trackMC::Px, - reducedA3trackMC::Py, - reducedA3trackMC::Pz, - reducedA3trackMC::P, - reducedA3trackMC::Y, + reduceda3trackmc::McReducedFlags, + reduceda3trackmc::Px, + reduceda3trackmc::Py, + reduceda3trackmc::Pz, + reduceda3trackmc::P, + reduceda3trackmc::Y, mcparticle::ProducedByGenerator, mcparticle::FromBackgroundEvent, mcparticle::GetGenStatusCode, @@ -190,7 +189,7 @@ DECLARE_SOA_COLUMN(McMask, mcMask, uint16_t); // NOTE: MC labels. This table has one entry for each reconstructed track (joinable with the track tables) // The McParticleId points to the position of the MC truth track from the ReducedTracksMC table DECLARE_SOA_TABLE(ReducedA3TracksBarrelLabels, "AOD", "REA3BARLA", //! - reduceda3barreltracklabel::ReA3MCTrackId, reduceda3barreltracklabel::McMask, reducedA3trackMC::McReducedFlags); + reduceda3barreltracklabel::ReA3MCTrackId, reduceda3barreltracklabel::McMask, reduceda3trackmc::McReducedFlags); using ReducedA3TrackBarrelLabel = ReducedA3TracksBarrelLabels::iterator; @@ -222,15 +221,15 @@ DECLARE_SOA_TABLE(ReducedA3MCEventLabels, "AOD", "REA3MCCOLLBL", //! Table joine using ReducedA3MCEventLabel = ReducedA3MCEventLabels::iterator; -namespace reducedA3track_association +namespace reduceda3trackassociation { -DECLARE_SOA_INDEX_COLUMN(ReA3Event, reA3event); //! ReducedEvent index -DECLARE_SOA_INDEX_COLUMN(ReA3Track, reA3track); //! ReducedTrack index -} // namespace reducedA3track_association +DECLARE_SOA_INDEX_COLUMN(ReA3Event, reA3Event); //! ReducedEvent index +DECLARE_SOA_INDEX_COLUMN(ReA3Track, reA3Track); //! ReducedTrack index +} // namespace reduceda3trackassociation DECLARE_SOA_TABLE(ReducedA3TracksAssoc, "AOD", "REA3ASSOC", //! Table for reducedtrack-to-reducedcollision association - reducedA3track_association::ReA3EventId, - reducedA3track_association::ReA3TrackId); + reduceda3trackassociation::ReA3EventId, + reduceda3trackassociation::ReA3TrackId); DECLARE_SOA_TABLE(ReducedA3PIDTOF, "AOD", "REA3PIDTOF", upgrade_tof::TOFEventTime, diff --git a/ALICE3/TableProducer/alice3DqTableMaker.cxx b/ALICE3/TableProducer/alice3DqTableMaker.cxx index 075873899e3..041fc71ebfe 100644 --- a/ALICE3/TableProducer/alice3DqTableMaker.cxx +++ b/ALICE3/TableProducer/alice3DqTableMaker.cxx @@ -28,7 +28,9 @@ #include "ALICE3/DataModel/collisionAlice3.h" #include "ALICE3/DataModel/tracksAlice3.h" #include "Common/CCDB/EventSelectionParams.h" +#include "Common/DataModel/Centrality.h" #include "Common/DataModel/CollisionAssociationTables.h" +#include "Common/DataModel/Multiplicity.h" #include "Common/DataModel/TrackSelectionTables.h" #include @@ -141,8 +143,9 @@ struct Alice3DqTableMaker { { bool isProcessSkimmingEnabled = context.mOptions.get("processSkimming"); - if (!isProcessSkimmingEnabled) + if (!isProcessSkimmingEnabled) { LOG(fatal) << "No process function was enabled ALICE 3 TableMaker"; + } VarManager::SetDefaultVarNames(); // Important that this is called before defineCuts() !!! @@ -310,7 +313,7 @@ struct Alice3DqTableMaker { fStatsList->Add(histEvents); // Track statistics: one bin for each track selection and 5 bins for V0 tags (gamma, K0s, Lambda, anti-Lambda, Omega) - TH1I* histTracks = new TH1I("TrackStats", "Track statistics", fTrackCuts.size() + 5.0, -0.5, fTrackCuts.size() - 0.5 + 5.0); + TH1I* histTracks = new TH1I("TrackStats", "Track statistics", static_cast(fTrackCuts.size() + 5.0), -0.5, fTrackCuts.size() - 0.5 + 5.0); ibX = 1; for (auto cut = fTrackCuts.begin(); cut != fTrackCuts.end(); cut++, ibX++) { histTracks->GetXaxis()->SetBinLabel(ibX, (*cut)->GetName()); @@ -623,8 +626,9 @@ struct Alice3DqTableMaker { skimCollisions(collisions); - if (fCollIndexMap.empty()) + if (fCollIndexMap.empty()) { return; + } skimMCParticles(mcParticles, mcCollisions); diff --git a/ALICE3/Tasks/alice3DqEfficiency.cxx b/ALICE3/Tasks/alice3DqEfficiency.cxx index f276a8803b5..5d6929b6927 100644 --- a/ALICE3/Tasks/alice3DqEfficiency.cxx +++ b/ALICE3/Tasks/alice3DqEfficiency.cxx @@ -303,7 +303,7 @@ struct Alice3DqEfficiencyAnalysisTrackSelection { Configurable cfgTrackMCsignalsJSON{"cfgTrackMCsignalsJSON", "", "Additional list of MC signals via JSON"}; HistogramManager* fHistMan = nullptr; - std::vector fTrackCuts; + std::vector fTrackCuts; std::vector fMCSignals; // list of signals to be checked std::vector fHistNamesReco; std::vector fHistNamesMCMatched; @@ -330,7 +330,7 @@ struct Alice3DqEfficiencyAnalysisTrackSelection { if (addTrackCutsStr != "") { std::vector addTrackCuts = dqcuts::GetCutsFromJSON(addTrackCutsStr.Data()); for (const auto& t : addTrackCuts) { - fTrackCuts.push_back(static_cast(t)); + fTrackCuts.push_back(t); } } VarManager::SetUseVars(AnalysisCut::fgUsedVars); // provide the list of required variables so that VarManager knows what to fill @@ -401,7 +401,7 @@ struct Alice3DqEfficiencyAnalysisTrackSelection { // Loop over associations for (const auto& assoc : assocs) { - auto event = assoc.template reA3event_as(); + auto event = assoc.template reA3Event_as(); if (!event.isEventSelected_bit(0)) { trackSel(0); continue; @@ -414,7 +414,7 @@ struct Alice3DqEfficiencyAnalysisTrackSelection { VarManager::FillEventAlice3(event.reA3MCEvent()); } - auto track = assoc.template reA3track_as(); + auto track = assoc.template reA3Track_as(); VarManager::FillTrackAlice3(track); // compute quantities which depend on the associated collision, such as DCA VarManager::FillTrackCollision(track, event); @@ -563,7 +563,7 @@ struct Alice3DqEfficiencyAnalysisPrefilterSelection { uint32_t fPrefilterMask = 0; int fPrefilterCutBit = -1; - PresliceUnsorted trackAssocsPerCollision = aod::reducedA3track_association::reA3eventId; + PresliceUnsorted trackAssocsPerCollision = aod::reduceda3trackassociation::reA3EventId; void init(o2::framework::InitContext& context) { @@ -650,8 +650,8 @@ struct Alice3DqEfficiencyAnalysisPrefilterSelection { } for (const auto& [assoc1, assoc2] : o2::soa::combinations(assocs, assocs)) { - auto track1 = assoc1.template reA3track_as(); - auto track2 = assoc2.template reA3track_as(); + auto track1 = assoc1.template reA3Track_as(); + auto track2 = assoc2.template reA3Track_as(); // NOTE: here we restrict to just pairs of opposite sign (conversions), but in principle this can be made // a configurable and check also same-sign pairs (track splitting) @@ -707,7 +707,7 @@ struct Alice3DqEfficiencyAnalysisPrefilterSelection { } else { for (const auto& assoc : assocs) { // TODO: just use the index from the assoc (no need to cast the whole track) - auto track = assoc.template reA3track_as(); + auto track = assoc.template reA3Track_as(); mymap = -1; if (!fPrefilterMap.contains(track.globalIndex())) { // NOTE: publish the bitwise negated bits (~), so there will be zeroes for cuts that failed the prefiltering and 1 everywhere else @@ -735,12 +735,6 @@ struct Alice3DqEfficiencyAnalysisPrefilterSelection { // The task implements also process functions for running event mixing struct Alice3DqEfficiencyAnalysisSameEventPairing { - Produces dielectronList; - Produces dielectronsExtraList; - Produces dielectronAllList; - Produces mcTruthTableEffi; - - o2::base::MatLayerCylSet* fLUT = nullptr; OutputObj fOutputList{"output"}; struct : ConfigurableGroup { @@ -794,7 +788,7 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { bool fEnableBarrelHistos = false; - PresliceUnsorted trackAssocsPerCollision = aod::reducedA3track_association::reA3eventId; + PresliceUnsorted trackAssocsPerCollision = aod::reduceda3trackassociation::reA3EventId; void init(o2::framework::InitContext& context) { @@ -1020,27 +1014,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { bool isCorrectAssocLeg1 = false; bool isCorrectAssocLeg2 = false; - int64_t reserveSize = 0; - for (auto const& event : events) { - if (event.isEventSelected_bit(0)) { - auto groupedAssocs = assocs.sliceBy(preslice, event.globalIndex()); - size_t nGood = 0; - for (auto const& t : groupedAssocs) { - if (t.isBarrelSelected_raw() > 0u) { - nGood++; - } - } - reserveSize += nGood * (nGood - 1) / 2; - } - } - - dielectronList.reserve(reserveSize); - dielectronsExtraList.reserve(reserveSize); - - if (fConfigOptions.cfgFlatTables.value) { - dielectronAllList.reserve(reserveSize); - } - for (const auto& event : events) { if (!event.isEventSelected_bit(0)) { continue; @@ -1063,8 +1036,8 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { continue; } - auto t1 = a1.template reA3track_as(); - auto t2 = a2.template reA3track_as(); + auto t1 = a1.template reA3Track_as(); + auto t2 = a2.template reA3Track_as(); sign1 = t1.sign(); sign2 = t2.sign(); // store the ambiguity number of the two dilepton legs in the last 4 digits of the two-track filter @@ -1102,11 +1075,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { } VarManager::FillPairVertexingAlice3(event, t1, t2, fConfigOptions.cfgPropToPCA); - if (!fConfigMC.cfgSkimSignalOnly || mcDecision > 0) { - dielectronList(event.globalIndex(), VarManager::fgValues[VarManager::kMass], - VarManager::fgValues[VarManager::kPt], VarManager::fgValues[VarManager::kEta], VarManager::fgValues[VarManager::kPhi], - t1.sign() + t2.sign(), twoTrackFilter, mcDecision); - } // Fill histograms bool isAmbiInBunch = false; @@ -1208,7 +1176,7 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { } // end loop over events } - PresliceUnsorted perReducedMcEvent = aod::reducedA3trackMC::reA3MCEventId; + PresliceUnsorted perReducedMcEvent = aod::reduceda3trackmc::reA3MCEventId; void runMCGenWithGrouping(MyEventsVtxCovSelected const& events, ReA3MCEvents const& /*mcEvents*/, ReA3MCTracks const& mcTracks) { @@ -1253,7 +1221,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { for (const auto& sig : fGenMCSignals) { if (sig->CheckSignal(true, trackRaw)) { fHistMan->FillHistClass(Form("MCTruthGenSel_%s", sig->GetName()), dqefficiency_helpers::varValues()); - mcTruthTableEffi(VarManager::fgValues[VarManager::kMCPt], VarManager::fgValues[VarManager::kMCEta], VarManager::fgValues[VarManager::kMCY], VarManager::fgValues[VarManager::kMCPhi], VarManager::fgValues[VarManager::kMCVz], VarManager::fgValues[VarManager::kMCVtxZ], VarManager::fgValues[VarManager::kMultFT0A], VarManager::fgValues[VarManager::kMultFT0C], VarManager::fgValues[VarManager::kCentFT0M], VarManager::fgValues[VarManager::kVtxNcontribReal]); } } } @@ -1324,7 +1291,7 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { runMCGenWithGrouping(events, mcEvents, mcTracks); } - PresliceUnsorted perReducedMcGenEvent = aod::reducedA3trackMC::reA3MCEventId; + PresliceUnsorted perReducedMcGenEvent = aod::reduceda3trackmc::reA3MCEventId; void processMCGen(soa::Filtered const& events, ReA3MCEvents const& /*mcEvents*/, ReA3MCTracks const& mcTracks) { @@ -1360,7 +1327,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { for (const auto& sig : fGenMCSignals) { if (sig->CheckSignal(true, trackRaw)) { fHistMan->FillHistClass(Form("MCTruthGenSel_%s", sig->GetName()), dqefficiency_helpers::varValues()); - mcTruthTableEffi(VarManager::fgValues[VarManager::kMCPt], VarManager::fgValues[VarManager::kMCEta], VarManager::fgValues[VarManager::kMCY], VarManager::fgValues[VarManager::kMCPhi], VarManager::fgValues[VarManager::kMCVz], VarManager::fgValues[VarManager::kMCVtxZ], VarManager::fgValues[VarManager::kMultFT0A], VarManager::fgValues[VarManager::kMultFT0C], VarManager::fgValues[VarManager::kCentFT0M], VarManager::fgValues[VarManager::kVtxNcontribReal]); } } } @@ -1446,7 +1412,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { for (const auto& sig : fGenMCSignals) { if (sig->CheckSignal(true, trackRaw)) { fHistMan->FillHistClass(Form("MCTruthGenSel_%s", sig->GetName()), dqefficiency_helpers::varValues()); - mcTruthTableEffi(VarManager::fgValues[VarManager::kMCPt], VarManager::fgValues[VarManager::kMCEta], VarManager::fgValues[VarManager::kMCY], VarManager::fgValues[VarManager::kMCPhi], VarManager::fgValues[VarManager::kMCVz], VarManager::fgValues[VarManager::kMCVtxZ], VarManager::fgValues[VarManager::kMultFT0A], VarManager::fgValues[VarManager::kMultFT0C], VarManager::fgValues[VarManager::kCentFT0M], VarManager::fgValues[VarManager::kVtxNcontribReal]); } } } @@ -1509,9 +1474,6 @@ struct Alice3DqEfficiencyAnalysisSameEventPairing { struct Alice3DqEfficiencyAnalysisAsymmetricPairing { - Produces ditrackList; - Produces ditrackExtraList; - // Output objects OutputObj fOutputList{"output"}; @@ -1538,7 +1500,7 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { HistogramManager* fHistMan = nullptr; - std::vector fPairCuts; + std::vector fPairCuts; int fNPairHistPrefixes = 0; std::vector fRecMCSignals; @@ -1568,8 +1530,8 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { Filter eventFilter = aod::dqanalysisflags::isEventSelected > static_cast(0); - PresliceUnsorted trackAssocsPerCollision = aod::reducedA3track_association::reA3eventId; - // PresliceUnsorted trackAssocsPerCollision = aod::reducedA3track_association::reA3eventId; + PresliceUnsorted trackAssocsPerCollision = aod::reduceda3trackassociation::reA3EventId; + // PresliceUnsorted trackAssocsPerCollision = aod::reduceda3trackassociation::reA3EventId; // Partitions for triplets and asymmetric pairs Partition legACandidateAssocs = (o2::aod::dqanalysisflags::isBarrelSelected & cfgLegAFilterMask) > static_cast(0); @@ -1609,7 +1571,7 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { if (addPairCutsStr != "") { std::vector addPairCuts = dqcuts::GetCutsFromJSON(addPairCutsStr.Data()); for (const auto& t : addPairCuts) { - fPairCuts.push_back(static_cast(t)); + fPairCuts.push_back(t); pairCutNamesStr += Form(",%s", t->GetName()); } } @@ -1920,7 +1882,7 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { } // Function to run same event pairing with asymmetric pairs (e.g. kaon-pion) - void runAsymmetricPairing(MyEventsVtxCovSelected const& events, PresliceUnsorted& preslice, MyBarrelAssocs const& assocs, MyBarrelTracksWithCovWithAmbiguities const& /*tracks*/, ReA3MCEvents const& /*mcEvents*/, ReA3MCTracks const& /*mcTracks*/) + void runAsymmetricPairing(MyEventsVtxCovSelected const& events, PresliceUnsorted& preslice, MyBarrelAssocs const& /*assocs*/, MyBarrelTracksWithCovWithAmbiguities const& /*tracks*/, ReA3MCEvents const& /*mcEvents*/, ReA3MCTracks const& /*mcTracks*/) { fPairCount.clear(); @@ -1928,23 +1890,6 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { int sign2 = 0; uint32_t mcDecision = 0; - int64_t reserveSize = 0; - for (auto const& event : events) { - if (event.isEventSelected_bit(0)) { - auto groupedAssocs = assocs.sliceBy(preslice, event.globalIndex()); - size_t nGood = 0; - for (auto const& t : groupedAssocs) { - if (t.isBarrelSelected_raw() > 0u) { - nGood++; - } - } - reserveSize += nGood * (nGood - 1) / 2; - } - } - - ditrackList.reserve(reserveSize); - ditrackExtraList.reserve(reserveSize); - for (const auto& event : events) { if (!event.isEventSelected_bit(0)) { continue; @@ -1965,8 +1910,8 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { for (const auto& [a1, a2] : combinations(soa::CombinationsFullIndexPolicy(groupedLegAAssocs, groupedLegBAssocs))) { uint32_t twoTrackFilter = 0; uint32_t twoTrackCommonFilter = 0; - uint32_t pairFilter = 0; bool isPairIdWrong = false; + for (int icut = 0; icut < fNLegCuts; ++icut) { // Find leg pair definitions both candidates participate in if (((a1.isBarrelSelected_raw() & fConstructedLegAFilterMasksMap[icut]) != 0u) && ((a2.isBarrelSelected_raw() & fConstructedLegBFilterMasksMap[icut]) != 0u)) { @@ -1987,8 +1932,8 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { // Find common track cuts both candidates pass twoTrackCommonFilter |= a1.isBarrelSelected_raw() & a2.isBarrelSelected_raw() & fCommonTrackCutMask; - auto t1 = a1.template reA3track_as(); - auto t2 = a2.template reA3track_as(); + auto t1 = a1.template reA3Track_as(); + auto t2 = a2.template reA3Track_as(); // Avoid self-pairs if (t1.globalIndex() == t2.globalIndex()) { @@ -2117,7 +2062,6 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { if (!((*cut)->IsSelected(dqefficiency_helpers::varValues()))) { // apply pair cuts continue; } - pairFilter |= (static_cast(1) << iPairCut); // Histograms with pair cuts if (sign1 * sign2 < 0) { fHistMan->FillHistClass(Form("PairsBarrelSEPM_%s_%s", fLegCutNames[icut].Data(), fPairCutNames[iPairCut].Data()), dqefficiency_helpers::varValues()); @@ -2171,9 +2115,6 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { } // end loop (pair cuts) } } // end loop (cuts) - ditrackList(event.globalIndex(), VarManager::fgValues[VarManager::kMass], - VarManager::fgValues[VarManager::kPt], VarManager::fgValues[VarManager::kEta], VarManager::fgValues[VarManager::kPhi], - t1.sign() + t2.sign(), twoTrackFilter, pairFilter, twoTrackCommonFilter); } // end inner assoc loop (leg A) } // end event loop } @@ -2256,9 +2197,9 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { // Find common track cuts all candidates pass threeTrackCommonFilter |= a1.isBarrelSelected_raw() & a2.isBarrelSelected_raw() & a3.isBarrelSelected_raw() & fCommonTrackCutMask; - auto t1 = a1.template reA3track_as(); - auto t2 = a2.template reA3track_as(); - auto t3 = a3.template reA3track_as(); + auto t1 = a1.template reA3Track_as(); + auto t2 = a2.template reA3Track_as(); + auto t3 = a3.template reA3Track_as(); // Avoid self-pairs if (t1 == t2 || t1 == t3 || t2 == t3) { @@ -2383,7 +2324,7 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { { // loop over mc stack and fill histograms for pure MC truth signals // group all the MC tracks which belong to the MC event corresponding to the current reconstructed event - // auto groupedMCTracks = tracksMC.sliceBy(aod::reducedA3trackMC::reA3MCEventId, event.reducedMCevent().globalIndex()); + // auto groupedMCTracks = tracksMC.sliceBy(aod::reduceda3trackmc::reA3MCEventId, event.reducedMCevent().globalIndex()); for (const auto& mctrack : mcTracks) { VarManager::FillTrackMC(mcTracks, mctrack); @@ -2398,7 +2339,7 @@ struct Alice3DqEfficiencyAnalysisAsymmetricPairing { } } - PresliceUnsorted perReducedMcEvent = aod::reducedA3trackMC::reA3MCEventId; + PresliceUnsorted perReducedMcEvent = aod::reduceda3trackmc::reA3MCEventId; void processMCGenWithEventSelection(soa::Filtered const& events, ReA3MCEvents const& /*mcEvents*/, ReA3MCTracks const& mcTracks)