Skip to content

Commit 2281856

Browse files
authored
[PWGCF] Add derived table producer for longrange correlation (#13608)
1 parent 65082ef commit 2281856

File tree

3 files changed

+700
-0
lines changed

3 files changed

+700
-0
lines changed
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2+
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3+
// All rights not expressly granted are reserved.
4+
//
5+
// This software is distributed under the terms of the GNU General Public
6+
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7+
//
8+
// In applying this license CERN does not waive the privileges and immunities
9+
// granted to it by virtue of its status as an Intergovernmental Organization
10+
// or submit itself to any jurisdiction.
11+
///
12+
/// \file longrangeDerived.h
13+
///
14+
/// \brief task derived table definition for long range correlation
15+
/// \author Abhi Modak (abhi.modak@cern.ch)
16+
/// \since October 28, 2025
17+
18+
#ifndef PWGCF_TWOPARTICLECORRELATIONS_DATAMODEL_LONGRANGEDERIVED_H_
19+
#define PWGCF_TWOPARTICLECORRELATIONS_DATAMODEL_LONGRANGEDERIVED_H_
20+
21+
#include "Framework/ASoA.h"
22+
#include "Framework/AnalysisDataModel.h"
23+
24+
namespace o2::aod
25+
{
26+
namespace LRCorrCollTable
27+
{
28+
DECLARE_SOA_COLUMN(Zvtx, zvtx, float);
29+
DECLARE_SOA_COLUMN(Multiplicity, multiplicity, float);
30+
DECLARE_SOA_COLUMN(Centrality, centrality, float);
31+
} // namespace LRCorrCollTable
32+
33+
DECLARE_SOA_TABLE(CollLRTables, "AOD", "COLLLRTABLE",
34+
o2::soa::Index<>,
35+
bc::RunNumber,
36+
LRCorrCollTable::Zvtx,
37+
LRCorrCollTable::Multiplicity,
38+
LRCorrCollTable::Centrality,
39+
timestamp::Timestamp);
40+
using CollLRTable = CollLRTables::iterator;
41+
42+
namespace LRCorrTrkTable
43+
{
44+
DECLARE_SOA_INDEX_COLUMN(CollLRTable, collLRTable);
45+
DECLARE_SOA_COLUMN(Pt, pt, float);
46+
DECLARE_SOA_COLUMN(Eta, eta, float);
47+
DECLARE_SOA_COLUMN(Phi, phi, float);
48+
DECLARE_SOA_COLUMN(ChannelID, channelID, int);
49+
DECLARE_SOA_COLUMN(Amplitude, amplitude, float);
50+
DECLARE_SOA_COLUMN(InvMass, invMass, float);
51+
DECLARE_SOA_COLUMN(IdPos, idPos, int64_t);
52+
DECLARE_SOA_COLUMN(IdNeg, idNeg, int64_t);
53+
DECLARE_SOA_COLUMN(TrackType, trackType, uint8_t);
54+
DECLARE_SOA_COLUMN(V0Type, v0Type, uint8_t);
55+
enum TrackPid {
56+
kSpCharge,
57+
kSpPion,
58+
kSpKaon,
59+
kSpProton
60+
};
61+
enum V0TrackPid {
62+
kSpK0short,
63+
kSpLambda,
64+
kSpALambda
65+
};
66+
} // namespace LRCorrTrkTable
67+
68+
DECLARE_SOA_TABLE(TrkLRTables, "AOD", "TRKLRTABLE",
69+
o2::soa::Index<>,
70+
LRCorrTrkTable::CollLRTableId,
71+
LRCorrTrkTable::Pt,
72+
LRCorrTrkTable::Eta,
73+
LRCorrTrkTable::Phi,
74+
LRCorrTrkTable::TrackType);
75+
using TrkLRTable = TrkLRTables::iterator;
76+
77+
DECLARE_SOA_TABLE(Ft0aLRTables, "AOD", "FT0ALRTABLE",
78+
o2::soa::Index<>,
79+
LRCorrTrkTable::CollLRTableId,
80+
LRCorrTrkTable::ChannelID,
81+
LRCorrTrkTable::Amplitude,
82+
LRCorrTrkTable::Eta,
83+
LRCorrTrkTable::Phi);
84+
using Ft0aLRTable = Ft0aLRTables::iterator;
85+
86+
DECLARE_SOA_TABLE(Ft0cLRTables, "AOD", "FT0CLRTABLE",
87+
o2::soa::Index<>,
88+
LRCorrTrkTable::CollLRTableId,
89+
LRCorrTrkTable::ChannelID,
90+
LRCorrTrkTable::Amplitude,
91+
LRCorrTrkTable::Eta,
92+
LRCorrTrkTable::Phi);
93+
using Ft0cLRTable = Ft0cLRTables::iterator;
94+
95+
DECLARE_SOA_TABLE(V0TrkLRTables, "AOD", "V0TRKLRTABLE",
96+
o2::soa::Index<>,
97+
LRCorrTrkTable::CollLRTableId,
98+
LRCorrTrkTable::IdPos,
99+
LRCorrTrkTable::IdNeg,
100+
LRCorrTrkTable::Pt,
101+
LRCorrTrkTable::Eta,
102+
LRCorrTrkTable::Phi,
103+
LRCorrTrkTable::InvMass,
104+
LRCorrTrkTable::V0Type);
105+
using V0TrkLRTable = V0TrkLRTables::iterator;
106+
107+
DECLARE_SOA_TABLE(MftTrkLRTables, "AOD", "MFTTRKLRTABLE",
108+
o2::soa::Index<>,
109+
LRCorrTrkTable::CollLRTableId,
110+
LRCorrTrkTable::Pt,
111+
LRCorrTrkTable::Eta,
112+
LRCorrTrkTable::Phi);
113+
using MftTrkLRTable = MftTrkLRTables::iterator;
114+
115+
} // namespace o2::aod
116+
117+
#endif // PWGCF_TWOPARTICLECORRELATIONS_DATAMODEL_LONGRANGEDERIVED_H_

PWGCF/TwoParticleCorrelations/TableProducer/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,8 @@ o2physics_add_dpl_workflow(two-particle-correlations-filtering
2828
SOURCES twoParticleCorrelationsFiltering.cxx
2929
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore O2Physics::TwoPartCorrCore
3030
COMPONENT_NAME Analysis)
31+
32+
o2physics_add_dpl_workflow(longrange-maker
33+
SOURCES longrangeMaker.cxx
34+
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore O2Physics::TwoPartCorrCore
35+
COMPONENT_NAME Analysis)

0 commit comments

Comments
 (0)