Skip to content

Commit 120e734

Browse files
committed
Add new table to store pair information
1 parent 2ca3546 commit 120e734

2 files changed

Lines changed: 753 additions & 36 deletions

File tree

PWGLF/DataModel/ReducedDoublePhiTables.h

Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,5 +90,244 @@ DECLARE_SOA_TABLE(PhiTracks, "AOD", "PHITRACK",
9090
phitrack::Phid2TOF);
9191

9292
using PhiTrack = PhiTracks::iterator;
93+
94+
namespace phiphipair
95+
{
96+
DECLARE_SOA_INDEX_COLUMN(RedPhiEvent, redPhiEvent);
97+
98+
DECLARE_SOA_COLUMN(Phi1Row, phi1Row, int64_t);
99+
DECLARE_SOA_COLUMN(Phi2Row, phi2Row, int64_t);
100+
101+
DECLARE_SOA_COLUMN(PairMass, pairMass, float);
102+
DECLARE_SOA_COLUMN(PairPx, pairPx, float);
103+
DECLARE_SOA_COLUMN(PairPy, pairPy, float);
104+
DECLARE_SOA_COLUMN(PairPz, pairPz, float);
105+
106+
DECLARE_SOA_COLUMN(Phi1Mass, phi1Mass, float);
107+
DECLARE_SOA_COLUMN(Phi1Px, phi1Px, float);
108+
DECLARE_SOA_COLUMN(Phi1Py, phi1Py, float);
109+
DECLARE_SOA_COLUMN(Phi1Pz, phi1Pz, float);
110+
111+
DECLARE_SOA_COLUMN(Phi2Mass, phi2Mass, float);
112+
DECLARE_SOA_COLUMN(Phi2Px, phi2Px, float);
113+
DECLARE_SOA_COLUMN(Phi2Py, phi2Py, float);
114+
DECLARE_SOA_COLUMN(Phi2Pz, phi2Pz, float);
115+
116+
// Kaon 1: positive daughter of phi 1
117+
DECLARE_SOA_COLUMN(K1Index, k1Index, int64_t);
118+
DECLARE_SOA_COLUMN(K1Charge, k1Charge, int8_t);
119+
DECLARE_SOA_COLUMN(K1DcaXY, k1DcaXY, float);
120+
DECLARE_SOA_COLUMN(K1DcaZ, k1DcaZ, float);
121+
DECLARE_SOA_COLUMN(K1DcaXYSig, k1DcaXYSig, float);
122+
DECLARE_SOA_COLUMN(K1DcaZSig, k1DcaZSig, float);
123+
DECLARE_SOA_COLUMN(K1DcaChi2, k1DcaChi2, float);
124+
DECLARE_SOA_COLUMN(K1Px, k1Px, float);
125+
DECLARE_SOA_COLUMN(K1Py, k1Py, float);
126+
DECLARE_SOA_COLUMN(K1Pz, k1Pz, float);
127+
DECLARE_SOA_COLUMN(K1TOFHit, k1TOFHit, int8_t);
128+
DECLARE_SOA_COLUMN(K1TPC, k1TPC, float);
129+
DECLARE_SOA_COLUMN(K1TOF, k1TOF, float);
130+
DECLARE_SOA_COLUMN(K1ITS, k1ITS, float);
131+
132+
// Kaon 2: negative daughter of phi 1
133+
DECLARE_SOA_COLUMN(K2Index, k2Index, int64_t);
134+
DECLARE_SOA_COLUMN(K2Charge, k2Charge, int8_t);
135+
DECLARE_SOA_COLUMN(K2DcaXY, k2DcaXY, float);
136+
DECLARE_SOA_COLUMN(K2DcaZ, k2DcaZ, float);
137+
DECLARE_SOA_COLUMN(K2DcaXYSig, k2DcaXYSig, float);
138+
DECLARE_SOA_COLUMN(K2DcaZSig, k2DcaZSig, float);
139+
DECLARE_SOA_COLUMN(K2DcaChi2, k2DcaChi2, float);
140+
DECLARE_SOA_COLUMN(K2Px, k2Px, float);
141+
DECLARE_SOA_COLUMN(K2Py, k2Py, float);
142+
DECLARE_SOA_COLUMN(K2Pz, k2Pz, float);
143+
DECLARE_SOA_COLUMN(K2TOFHit, k2TOFHit, int8_t);
144+
DECLARE_SOA_COLUMN(K2TPC, k2TPC, float);
145+
DECLARE_SOA_COLUMN(K2TOF, k2TOF, float);
146+
DECLARE_SOA_COLUMN(K2ITS, k2ITS, float);
147+
148+
// Kaon 3: positive daughter of phi 2
149+
DECLARE_SOA_COLUMN(K3Index, k3Index, int64_t);
150+
DECLARE_SOA_COLUMN(K3Charge, k3Charge, int8_t);
151+
DECLARE_SOA_COLUMN(K3DcaXY, k3DcaXY, float);
152+
DECLARE_SOA_COLUMN(K3DcaZ, k3DcaZ, float);
153+
DECLARE_SOA_COLUMN(K3DcaXYSig, k3DcaXYSig, float);
154+
DECLARE_SOA_COLUMN(K3DcaZSig, k3DcaZSig, float);
155+
DECLARE_SOA_COLUMN(K3DcaChi2, k3DcaChi2, float);
156+
DECLARE_SOA_COLUMN(K3Px, k3Px, float);
157+
DECLARE_SOA_COLUMN(K3Py, k3Py, float);
158+
DECLARE_SOA_COLUMN(K3Pz, k3Pz, float);
159+
DECLARE_SOA_COLUMN(K3TOFHit, k3TOFHit, int8_t);
160+
DECLARE_SOA_COLUMN(K3TPC, k3TPC, float);
161+
DECLARE_SOA_COLUMN(K3TOF, k3TOF, float);
162+
DECLARE_SOA_COLUMN(K3ITS, k3ITS, float);
163+
164+
// Kaon 4: negative daughter of phi 2
165+
DECLARE_SOA_COLUMN(K4Index, k4Index, int64_t);
166+
DECLARE_SOA_COLUMN(K4Charge, k4Charge, int8_t);
167+
DECLARE_SOA_COLUMN(K4DcaXY, k4DcaXY, float);
168+
DECLARE_SOA_COLUMN(K4DcaZ, k4DcaZ, float);
169+
DECLARE_SOA_COLUMN(K4DcaXYSig, k4DcaXYSig, float);
170+
DECLARE_SOA_COLUMN(K4DcaZSig, k4DcaZSig, float);
171+
DECLARE_SOA_COLUMN(K4DcaChi2, k4DcaChi2, float);
172+
DECLARE_SOA_COLUMN(K4Px, k4Px, float);
173+
DECLARE_SOA_COLUMN(K4Py, k4Py, float);
174+
DECLARE_SOA_COLUMN(K4Pz, k4Pz, float);
175+
DECLARE_SOA_COLUMN(K4TOFHit, k4TOFHit, int8_t);
176+
DECLARE_SOA_COLUMN(K4TPC, k4TPC, float);
177+
DECLARE_SOA_COLUMN(K4TOF, k4TOF, float);
178+
DECLARE_SOA_COLUMN(K4ITS, k4ITS, float);
179+
180+
// Four-track vertex fit
181+
DECLARE_SOA_COLUMN(FitStatus, fitStatus, int8_t);
182+
DECLARE_SOA_COLUMN(FitChi2, fitChi2, float);
183+
DECLARE_SOA_COLUMN(FitNdf, fitNdf, int8_t);
184+
DECLARE_SOA_COLUMN(FitChi2Ndf, fitChi2Ndf, float);
185+
186+
// Primary vertex and fitted common vertex
187+
DECLARE_SOA_COLUMN(PvX, pvX, float);
188+
DECLARE_SOA_COLUMN(PvY, pvY, float);
189+
DECLARE_SOA_COLUMN(PvZ, pvZ, float);
190+
191+
DECLARE_SOA_COLUMN(VtxX, vtxX, float);
192+
DECLARE_SOA_COLUMN(VtxY, vtxY, float);
193+
DECLARE_SOA_COLUMN(VtxZ, vtxZ, float);
194+
195+
DECLARE_SOA_COLUMN(DeltaVtxX, deltaVtxX, float);
196+
DECLARE_SOA_COLUMN(DeltaVtxY, deltaVtxY, float);
197+
DECLARE_SOA_COLUMN(DeltaVtxZ, deltaVtxZ, float);
198+
199+
DECLARE_SOA_COLUMN(VertexLxy, vertexLxy, float);
200+
DECLARE_SOA_COLUMN(VertexL3D, vertexL3D, float);
201+
DECLARE_SOA_COLUMN(VertexLxyErr, vertexLxyErr, float);
202+
DECLARE_SOA_COLUMN(VertexL3DErr, vertexL3DErr, float);
203+
DECLARE_SOA_COLUMN(VertexLxySig, vertexLxySig, float);
204+
DECLARE_SOA_COLUMN(VertexL3DSig, vertexL3DSig, float);
205+
206+
// Resolution-weighted DCA quantities
207+
DECLARE_SOA_COLUMN(NValidDca, nValidDca, int8_t);
208+
DECLARE_SOA_COLUMN(SumDcaXYSig2, sumDcaXYSig2, float);
209+
DECLARE_SOA_COLUMN(SumDcaZSig2, sumDcaZSig2, float);
210+
DECLARE_SOA_COLUMN(SumDcaChi2, sumDcaChi2, float);
211+
DECLARE_SOA_COLUMN(RmsDcaSig, rmsDcaSig, float);
212+
DECLARE_SOA_COLUMN(MaxDcaChi2, maxDcaChi2, float);
213+
DECLARE_SOA_COLUMN(MaxAbsDcaXYSig, maxAbsDcaXYSig, float);
214+
DECLARE_SOA_COLUMN(MaxAbsDcaZSig, maxAbsDcaZSig, float);
215+
} // namespace phiphipair
216+
217+
// clang-format off
218+
DECLARE_SOA_TABLE(PhiPhiPairs, "AOD", "PHIPHIPAIR",
219+
o2::soa::Index<>,
220+
phiphipair::RedPhiEventId,
221+
phiphipair::Phi1Row,
222+
phiphipair::Phi2Row,
223+
224+
phiphipair::PairMass,
225+
phiphipair::PairPx,
226+
phiphipair::PairPy,
227+
phiphipair::PairPz,
228+
229+
phiphipair::Phi1Mass,
230+
phiphipair::Phi1Px,
231+
phiphipair::Phi1Py,
232+
phiphipair::Phi1Pz,
233+
234+
phiphipair::Phi2Mass,
235+
phiphipair::Phi2Px,
236+
phiphipair::Phi2Py,
237+
phiphipair::Phi2Pz,
238+
239+
phiphipair::K1Index,
240+
phiphipair::K1Charge,
241+
phiphipair::K1DcaXY,
242+
phiphipair::K1DcaZ,
243+
phiphipair::K1DcaXYSig,
244+
phiphipair::K1DcaZSig,
245+
phiphipair::K1DcaChi2,
246+
phiphipair::K1Px,
247+
phiphipair::K1Py,
248+
phiphipair::K1Pz,
249+
phiphipair::K1TOFHit,
250+
phiphipair::K1TPC,
251+
phiphipair::K1TOF,
252+
phiphipair::K1ITS,
253+
254+
phiphipair::K2Index,
255+
phiphipair::K2Charge,
256+
phiphipair::K2DcaXY,
257+
phiphipair::K2DcaZ,
258+
phiphipair::K2DcaXYSig,
259+
phiphipair::K2DcaZSig,
260+
phiphipair::K2DcaChi2,
261+
phiphipair::K2Px,
262+
phiphipair::K2Py,
263+
phiphipair::K2Pz,
264+
phiphipair::K2TOFHit,
265+
phiphipair::K2TPC,
266+
phiphipair::K2TOF,
267+
phiphipair::K2ITS,
268+
269+
phiphipair::K3Index,
270+
phiphipair::K3Charge,
271+
phiphipair::K3DcaXY,
272+
phiphipair::K3DcaZ,
273+
phiphipair::K3DcaXYSig,
274+
phiphipair::K3DcaZSig,
275+
phiphipair::K3DcaChi2,
276+
phiphipair::K3Px,
277+
phiphipair::K3Py,
278+
phiphipair::K3Pz,
279+
phiphipair::K3TOFHit,
280+
phiphipair::K3TPC,
281+
phiphipair::K3TOF,
282+
phiphipair::K3ITS,
283+
284+
phiphipair::K4Index,
285+
phiphipair::K4Charge,
286+
phiphipair::K4DcaXY,
287+
phiphipair::K4DcaZ,
288+
phiphipair::K4DcaXYSig,
289+
phiphipair::K4DcaZSig,
290+
phiphipair::K4DcaChi2,
291+
phiphipair::K4Px,
292+
phiphipair::K4Py,
293+
phiphipair::K4Pz,
294+
phiphipair::K4TOFHit,
295+
phiphipair::K4TPC,
296+
phiphipair::K4TOF,
297+
phiphipair::K4ITS,
298+
299+
phiphipair::FitStatus,
300+
phiphipair::FitChi2,
301+
phiphipair::FitNdf,
302+
phiphipair::FitChi2Ndf,
303+
304+
phiphipair::PvX,
305+
phiphipair::PvY,
306+
phiphipair::PvZ,
307+
phiphipair::VtxX,
308+
phiphipair::VtxY,
309+
phiphipair::VtxZ,
310+
phiphipair::DeltaVtxX,
311+
phiphipair::DeltaVtxY,
312+
phiphipair::DeltaVtxZ,
313+
314+
phiphipair::VertexLxy,
315+
phiphipair::VertexL3D,
316+
phiphipair::VertexLxyErr,
317+
phiphipair::VertexL3DErr,
318+
phiphipair::VertexLxySig,
319+
phiphipair::VertexL3DSig,
320+
321+
phiphipair::NValidDca,
322+
phiphipair::SumDcaXYSig2,
323+
phiphipair::SumDcaZSig2,
324+
phiphipair::SumDcaChi2,
325+
phiphipair::RmsDcaSig,
326+
phiphipair::MaxDcaChi2,
327+
phiphipair::MaxAbsDcaXYSig,
328+
phiphipair::MaxAbsDcaZSig);
329+
// clang-format on
330+
331+
using PhiPhiPair = PhiPhiPairs::iterator;
93332
} // namespace o2::aod
94333
#endif // PWGLF_DATAMODEL_REDUCEDDOUBLEPHITABLES_H_

0 commit comments

Comments
 (0)