Skip to content

Commit 07a2041

Browse files
authored
Add the TPC pid clusters to the analysis data model (#13617)
1 parent d3d07dd commit 07a2041

File tree

3 files changed

+38
-0
lines changed

3 files changed

+38
-0
lines changed

Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,7 @@ class AODProducerWorkflowDPL : public Task
374374
uint8_t itsClusterMap = 0;
375375
uint8_t tpcNClsFindable = 0;
376376
int8_t tpcNClsFindableMinusFound = 0;
377+
int8_t tpcNClsFindableMinusPID = 0;
377378
int8_t tpcNClsFindableMinusCrossedRows = 0;
378379
uint8_t tpcNClsShared = 0;
379380
uint8_t trdPattern = 0;

Detectors/AOD/src/AODProducerWorkflowSpec.cxx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,7 @@ void AODProducerWorkflowDPL::addToTracksExtraTable(TracksExtraCursorType& tracks
334334
extraInfoHolder.itsClusterSizes,
335335
extraInfoHolder.tpcNClsFindable,
336336
extraInfoHolder.tpcNClsFindableMinusFound,
337+
// extraInfoHolder.tpcNClsFindableMinusPID,
337338
extraInfoHolder.tpcNClsFindableMinusCrossedRows,
338339
extraInfoHolder.tpcNClsShared,
339340
extraInfoHolder.trdPattern,
@@ -2495,6 +2496,8 @@ AODProducerWorkflowDPL::TrackExtraInfo AODProducerWorkflowDPL::processBarrelTrac
24952496
extraInfoHolder.tpcNClsFindableMinusFound = tpcOrig.getNClusters() - tpcClData.found;
24962497
extraInfoHolder.tpcNClsFindableMinusCrossedRows = tpcOrig.getNClusters() - tpcClData.crossed;
24972498
extraInfoHolder.tpcNClsShared = tpcClData.shared;
2499+
uint32_t clsUsedForPID = tpcOrig.getdEdx().NHitsIROC + tpcOrig.getdEdx().NHitsOROC1 + tpcOrig.getdEdx().NHitsOROC2 + tpcOrig.getdEdx().NHitsOROC3;
2500+
extraInfoHolder.tpcNClsFindableMinusPID = tpcOrig.getNClusters() - clsUsedForPID;
24982501
if (src == GIndex::TPC) { // standalone TPC track should set its time from their timebins range
24992502
if (needBCSlice) {
25002503
double t = (tpcOrig.getTime0() + 0.5 * (tpcOrig.getDeltaTFwd() - tpcOrig.getDeltaTBwd())) * mTPCBinNS; // central value

Framework/Core/include/Framework/AnalysisDataModel.h

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,7 @@ DECLARE_SOA_COLUMN(ITSClusterSizes, itsClusterSizes, uint32_t);
243243
DECLARE_SOA_COLUMN(ITSClusterMap, itsClusterMap, uint8_t); //! Old cluster ITS cluster map, kept for version 0 compatibility
244244
DECLARE_SOA_COLUMN(TPCNClsFindable, tpcNClsFindable, uint8_t); //! Findable TPC clusters for this track geometry
245245
DECLARE_SOA_COLUMN(TPCNClsFindableMinusFound, tpcNClsFindableMinusFound, int8_t); //! TPC Clusters: Findable - Found
246+
DECLARE_SOA_COLUMN(TPCNClsFindableMinusPID, tpcNClsFindableMinusPID, int8_t); //! TPC Clusters: Findable - Found clusters used for PID
246247
DECLARE_SOA_COLUMN(TPCNClsFindableMinusCrossedRows, tpcNClsFindableMinusCrossedRows, int8_t); //! TPC Clusters: Findable - crossed rows
247248
DECLARE_SOA_COLUMN(TPCNClsShared, tpcNClsShared, uint8_t); //! Number of shared TPC clusters
248249
DECLARE_SOA_COLUMN(TRDPattern, trdPattern, uint8_t); //! Contributor to the track on TRD layer in bits 0-5, starting from the innermost, bit 6 indicates a potentially split tracklet, bit 7 if the track crossed a padrow
@@ -410,6 +411,8 @@ DECLARE_SOA_DYNAMIC_COLUMN(PIDForTracking, pidForTracking, //! PID hypothesis us
410411
[](uint32_t flags) -> uint32_t { return flags >> 28; });
411412
DECLARE_SOA_DYNAMIC_COLUMN(TPCNClsFound, tpcNClsFound, //! Number of found TPC clusters
412413
[](uint8_t tpcNClsFindable, int8_t tpcNClsFindableMinusFound) -> int16_t { return (int16_t)tpcNClsFindable - tpcNClsFindableMinusFound; });
414+
DECLARE_SOA_DYNAMIC_COLUMN(TPCNClsPID, tpcNClsPID, //! Number of found TPC clusters used for PID
415+
[](uint8_t tpcNClsFindable, int8_t tpcNClsFindableMinusPID) -> int16_t { return (int16_t)tpcNClsFindable - tpcNClsFindableMinusPID; });
413416
DECLARE_SOA_DYNAMIC_COLUMN(TPCNClsCrossedRows, tpcNClsCrossedRows, //! Number of crossed TPC Rows
414417
[](uint8_t tpcNClsFindable, int8_t TPCNClsFindableMinusCrossedRows) -> int16_t { return (int16_t)tpcNClsFindable - TPCNClsFindableMinusCrossedRows; });
415418
DECLARE_SOA_DYNAMIC_COLUMN(ITSNCls, itsNCls, //! Number of ITS clusters
@@ -600,10 +603,41 @@ DECLARE_SOA_TABLE_FULL_VERSIONED(StoredTracksExtra_001, "TracksExtra", "AOD", "T
600603
track::TPCFractionSharedCls<track::TPCNClsShared, track::TPCNClsFindable, track::TPCNClsFindableMinusFound>,
601604
track::TrackEtaEMCAL, track::TrackPhiEMCAL, track::TrackTime, track::TrackTimeRes);
602605

606+
DECLARE_SOA_TABLE_FULL_VERSIONED(StoredTracksExtra_002, "TracksExtra", "AOD", "TRACKEXTRA", 2, // On disk version of TracksExtra, version 2
607+
track::TPCInnerParam, track::Flags, track::ITSClusterSizes,
608+
track::TPCNClsFindable, track::TPCNClsFindableMinusFound, track::TPCNClsFindableMinusPID, track::TPCNClsFindableMinusCrossedRows,
609+
track::TPCNClsShared, track::v001::extensions::TPCDeltaTFwd<track::TrackTimeRes, track::Flags>, track::v001::extensions::TPCDeltaTBwd<track::TrackTimeRes, track::Flags>,
610+
track::TRDPattern, track::ITSChi2NCl, track::TPCChi2NCl, track::TRDChi2, track::TOFChi2,
611+
track::TPCSignal, track::TRDSignal, track::Length, track::TOFExpMom,
612+
track::PIDForTracking<track::Flags>,
613+
track::IsPVContributor<track::Flags>,
614+
track::HasITS<track::v001::DetectorMap>, track::HasTPC<track::v001::DetectorMap>,
615+
track::HasTRD<track::v001::DetectorMap>, track::HasTOF<track::v001::DetectorMap>,
616+
track::TPCNClsFound<track::TPCNClsFindable, track::TPCNClsFindableMinusFound>,
617+
track::TPCNClsCrossedRows<track::TPCNClsFindable, track::TPCNClsFindableMinusCrossedRows>,
618+
track::v001::ITSClusterMap<track::ITSClusterSizes>, track::v001::ITSNCls<track::ITSClusterSizes>, track::v001::ITSNClsInnerBarrel<track::ITSClusterSizes>,
619+
track::v001::ITSClsSizeInLayer<track::ITSClusterSizes>,
620+
track::v001::IsITSAfterburner<track::v001::DetectorMap, track::ITSChi2NCl>,
621+
track::TOFExpTimeEl<track::Length, track::TOFExpMom>,
622+
track::TOFExpTimeMu<track::Length, track::TOFExpMom>,
623+
track::TOFExpTimePi<track::Length, track::TOFExpMom>,
624+
track::TOFExpTimeKa<track::Length, track::TOFExpMom>,
625+
track::TOFExpTimePr<track::Length, track::TOFExpMom>,
626+
track::TOFExpTimeDe<track::Length, track::TOFExpMom>,
627+
track::TOFExpTimeTr<track::Length, track::TOFExpMom>,
628+
track::TOFExpTimeHe<track::Length, track::TOFExpMom>,
629+
track::TOFExpTimeAl<track::Length, track::TOFExpMom>,
630+
track::TPCCrossedRowsOverFindableCls<track::TPCNClsFindable, track::TPCNClsFindableMinusCrossedRows>,
631+
track::TPCFoundOverFindableCls<track::TPCNClsFindable, track::TPCNClsFindableMinusFound>,
632+
track::TPCFractionSharedCls<track::TPCNClsShared, track::TPCNClsFindable, track::TPCNClsFindableMinusFound>,
633+
track::TrackEtaEMCAL, track::TrackPhiEMCAL, track::TrackTime, track::TrackTimeRes);
634+
603635
DECLARE_SOA_EXTENDED_TABLE(TracksExtra_000, StoredTracksExtra_000, "TRACKEXTRA", //! Additional track information (clusters, PID, etc.)
604636
track::DetectorMap);
605637
DECLARE_SOA_EXTENDED_TABLE(TracksExtra_001, StoredTracksExtra_001, "TRACKEXTRA", //! Additional track information (clusters, PID, etc.)
606638
track::v001::DetectorMap);
639+
DECLARE_SOA_EXTENDED_TABLE(TracksExtra_002, StoredTracksExtra_002, "TRACKEXTRA", //! Additional track information (clusters, PID, etc.)
640+
track::v001::DetectorMap);
607641

608642
DECLARE_SOA_TABLE(Run2TrackExtras, "AOD", "RUN2TRACKEXTRA",
609643
track::ITSSignal);

0 commit comments

Comments
 (0)