Skip to content

Commit 90b28a4

Browse files
VDiBellaValerio Di Bella
andauthored
[PWGHF] Introducing a reduced workflow for D+ pairs (#14443)
Co-authored-by: Valerio Di Bella <vdibella@sbgpc51.in2p3.fr>
1 parent 3498466 commit 90b28a4

File tree

5 files changed

+728
-0
lines changed

5 files changed

+728
-0
lines changed
Lines changed: 237 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,237 @@
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 ReducedDMesonPairsTables.h
13+
/// \brief Header file with definition of methods and tables
14+
/// \note used to fold (unfold) track and primary vertex information by writing (reading) AO2Ds
15+
///
16+
/// \author Valerio DI BELLA <valerio.di.bella@cern.ch>, IPHC Strasbourg
17+
18+
#ifndef PWGHF_HFC_DATAMODEL_REDUCEDDMESONPAIRSTABLES_H_
19+
#define PWGHF_HFC_DATAMODEL_REDUCEDDMESONPAIRSTABLES_H_
20+
21+
#include "PWGHF/DataModel/CandidateReconstructionTables.h"
22+
23+
#include <Framework/ASoA.h>
24+
#include <Framework/AnalysisDataModel.h>
25+
26+
namespace o2::aod
27+
{
28+
DECLARE_SOA_TABLE(HfCandDpFullEvs, "AOD", "HFCANDDPFULLEV",
29+
collision::NumContrib,
30+
collision::PosX,
31+
collision::PosY,
32+
collision::PosZ);
33+
34+
DECLARE_SOA_TABLE(HfCandDpMcEvs, "AOD", "HFCANDDPMCEV",
35+
collision::PosX,
36+
collision::PosY,
37+
collision::PosZ);
38+
39+
namespace full
40+
{
41+
DECLARE_SOA_COLUMN(RSecondaryVertex, rSecondaryVertex, float); //! Radius of secondary vertex (cm)
42+
DECLARE_SOA_COLUMN(PtProng0, ptProng0, float); //! Transverse momentum of prong0 (GeV/c)
43+
DECLARE_SOA_COLUMN(PProng0, pProng0, float); //! Momentum of prong0 (GeV/c)
44+
DECLARE_SOA_COLUMN(ImpactParameterNormalised0, impactParameterNormalised0, float); //! Normalised impact parameter of prong0
45+
DECLARE_SOA_COLUMN(PtProng1, ptProng1, float); //! Transverse momentum of prong1 (GeV/c)
46+
DECLARE_SOA_COLUMN(PProng1, pProng1, float); //! Momentum of prong1 (in GeV/c)
47+
DECLARE_SOA_COLUMN(ImpactParameterNormalised1, impactParameterNormalised1, float); //! Normalised impact parameter of prong1
48+
DECLARE_SOA_COLUMN(PtProng2, ptProng2, float); //! Transverse momentum of prong2 (GeV/c)
49+
DECLARE_SOA_COLUMN(PProng2, pProng2, float); //! Momentum of prong2 (GeV/c)
50+
DECLARE_SOA_COLUMN(ImpactParameterNormalised2, impactParameterNormalised2, float); //! Normalised impact parameter of prong2
51+
DECLARE_SOA_COLUMN(CandidateSelFlag, candidateSelFlag, int); //! Selection flag of candidate (output of candidateSelector)
52+
DECLARE_SOA_COLUMN(M, m, float); //! Invariant mass of candidate (GeV/c2)
53+
DECLARE_SOA_COLUMN(Pt, pt, float); //! Transverse momentum of candidate (GeV/c)
54+
DECLARE_SOA_COLUMN(P, p, float); //! Momentum of candidate (GeV/c)
55+
DECLARE_SOA_COLUMN(Y, y, float); //! Rapidity of candidate
56+
DECLARE_SOA_COLUMN(Eta, eta, float); //! Pseudorapidity of candidate
57+
DECLARE_SOA_COLUMN(Phi, phi, float); //! Azimuth angle of candidate
58+
DECLARE_SOA_COLUMN(E, e, float); //! Energy of candidate (GeV)
59+
DECLARE_SOA_COLUMN(Centrality, centrality, float); //! Collision centrality
60+
DECLARE_SOA_INDEX_COLUMN(HfCandDpMcEv, hfCandDpMcEv); //! The Mc collision index this MC particles belongs to
61+
DECLARE_SOA_INDEX_COLUMN(HfCandDpFullEv, hfCandDpFullEv); //! The collision index this candidate belongs to
62+
DECLARE_SOA_COLUMN(NSigTpcPi0, nSigTpcPi0, float); //! TPC Nsigma separation for prong0 with pion mass hypothesis
63+
DECLARE_SOA_COLUMN(NSigTpcKa0, nSigTpcKa0, float); //! TPC Nsigma separation for prong0 with kaon mass hypothesis
64+
DECLARE_SOA_COLUMN(NSigTofPi0, nSigTofPi0, float); //! TOF Nsigma separation for prong0 with pion mass hypothesis
65+
DECLARE_SOA_COLUMN(NSigTofKa0, nSigTofKa0, float); //! TOF Nsigma separation for prong0 with kaon mass hypothesis
66+
DECLARE_SOA_COLUMN(NSigTpcPi1, nSigTpcPi1, float); //! TPC Nsigma separation for prong1 with pion mass hypothesis
67+
DECLARE_SOA_COLUMN(NSigTpcKa1, nSigTpcKa1, float); //! TPC Nsigma separation for prong1 with kaon mass hypothesis
68+
DECLARE_SOA_COLUMN(NSigTofPi1, nSigTofPi1, float); //! TOF Nsigma separation for prong1 with pion mass hypothesis
69+
DECLARE_SOA_COLUMN(NSigTofKa1, nSigTofKa1, float); //! TOF Nsigma separation for prong1 with kaon mass hypothesis
70+
DECLARE_SOA_COLUMN(NSigTpcPi2, nSigTpcPi2, float); //! TPC Nsigma separation for prong2 with pion mass hypothesis
71+
DECLARE_SOA_COLUMN(NSigTpcKa2, nSigTpcKa2, float); //! TPC Nsigma separation for prong2 with kaon mass hypothesis
72+
DECLARE_SOA_COLUMN(NSigTofPi2, nSigTofPi2, float); //! TOF Nsigma separation for prong2 with pion mass hypothesis
73+
DECLARE_SOA_COLUMN(NSigTofKa2, nSigTofKa2, float); //! TOF Nsigma separation for prong2 with kaon mass hypothesis
74+
DECLARE_SOA_COLUMN(NSigTpcTofPi0, nSigTpcTofPi0, float); //! TPC and TOF combined Nsigma separation for prong0 with pion mass hypothesis
75+
DECLARE_SOA_COLUMN(NSigTpcTofKa0, nSigTpcTofKa0, float); //! TPC and TOF combined Nsigma separation for prong0 with kaon mass hypothesis
76+
DECLARE_SOA_COLUMN(NSigTpcTofPi1, nSigTpcTofPi1, float); //! TPC and TOF combined Nsigma separation for prong1 with pion mass hypothesis
77+
DECLARE_SOA_COLUMN(NSigTpcTofKa1, nSigTpcTofKa1, float); //! TPC and TOF combined Nsigma separation for prong1 with kaon mass hypothesis
78+
DECLARE_SOA_COLUMN(NSigTpcTofPi2, nSigTpcTofPi2, float); //! TPC and TOF combined Nsigma separation for prong2 with pion mass hypothesis
79+
DECLARE_SOA_COLUMN(NSigTpcTofKa2, nSigTpcTofKa2, float); //! TPC and TOF combined Nsigma separation for prong2 with kaon mass hypothesis
80+
DECLARE_SOA_COLUMN(DecayLength, decayLength, float); //! Decay length of candidate (cm)
81+
DECLARE_SOA_COLUMN(DecayLengthXY, decayLengthXY, float); //! Transverse decay length of candidate (cm)
82+
DECLARE_SOA_COLUMN(DecayLengthNormalised, decayLengthNormalised, float); //! Normalised decay length of candidate
83+
DECLARE_SOA_COLUMN(DecayLengthXYNormalised, decayLengthXYNormalised, float); //! Normalised transverse decay length of candidate
84+
DECLARE_SOA_COLUMN(Cpa, cpa, float); //! Cosine pointing angle of candidate
85+
DECLARE_SOA_COLUMN(CpaXY, cpaXY, float); //! Cosine pointing angle of candidate in transverse plane
86+
DECLARE_SOA_COLUMN(MaxNormalisedDeltaIP, maxNormalisedDeltaIP, float); //! Maximum normalized difference between measured and expected impact parameter of candidate prongs
87+
DECLARE_SOA_COLUMN(Ct, ct, float); //! Proper lifetime times c of candidate (cm)
88+
// Events
89+
DECLARE_SOA_COLUMN(IsEventReject, isEventReject, int); //! Event rejection flag
90+
DECLARE_SOA_COLUMN(RunNumber, runNumber, int); //! Run number
91+
// ML scores
92+
DECLARE_SOA_COLUMN(MlScore0, mlScore0, float); //! ML score of the first configured index
93+
DECLARE_SOA_COLUMN(MlScore1, mlScore1, float); //! ML score of the second configured index
94+
} // namespace full
95+
DECLARE_SOA_TABLE(HfCandDpMls, "AOD", "HFCANDDPML",
96+
full::MlScore0,
97+
full::MlScore1)
98+
99+
DECLARE_SOA_TABLE(HfCandDpLites, "AOD", "HFCANDDPLITE",
100+
hf_cand::Chi2PCA,
101+
full::DecayLength,
102+
full::DecayLengthXY,
103+
full::DecayLengthNormalised,
104+
full::DecayLengthXYNormalised,
105+
full::PtProng0,
106+
full::PtProng1,
107+
full::PtProng2,
108+
hf_cand::ImpactParameter0,
109+
hf_cand::ImpactParameter1,
110+
hf_cand::ImpactParameter2,
111+
hf_cand::ImpactParameterZ0,
112+
hf_cand::ImpactParameterZ1,
113+
hf_cand::ImpactParameterZ2,
114+
full::NSigTpcPi0,
115+
full::NSigTpcKa0,
116+
full::NSigTofPi0,
117+
full::NSigTofKa0,
118+
full::NSigTpcTofPi0,
119+
full::NSigTpcTofKa0,
120+
full::NSigTpcPi1,
121+
full::NSigTpcKa1,
122+
full::NSigTofPi1,
123+
full::NSigTofKa1,
124+
full::NSigTpcTofPi1,
125+
full::NSigTpcTofKa1,
126+
full::NSigTpcPi2,
127+
full::NSigTpcKa2,
128+
full::NSigTofPi2,
129+
full::NSigTofKa2,
130+
full::NSigTpcTofPi2,
131+
full::NSigTpcTofKa2,
132+
full::CandidateSelFlag,
133+
full::M,
134+
full::Pt,
135+
full::Cpa,
136+
full::CpaXY,
137+
full::MaxNormalisedDeltaIP,
138+
full::Eta,
139+
full::Phi,
140+
full::Y,
141+
full::Centrality,
142+
collision::NumContrib,
143+
full::HfCandDpFullEvId,
144+
hf_cand_3prong::FlagMcMatchRec,
145+
hf_cand_3prong::OriginMcRec,
146+
hf_cand_3prong::FlagMcDecayChanRec)
147+
148+
DECLARE_SOA_TABLE(HfCandDpFulls, "AOD", "HFCANDDPFULL",
149+
hf_cand::XSecondaryVertex,
150+
hf_cand::YSecondaryVertex,
151+
hf_cand::ZSecondaryVertex,
152+
hf_cand::ErrorDecayLength,
153+
hf_cand::ErrorDecayLengthXY,
154+
hf_cand::Chi2PCA,
155+
full::RSecondaryVertex,
156+
full::DecayLength,
157+
full::DecayLengthXY,
158+
full::DecayLengthNormalised,
159+
full::DecayLengthXYNormalised,
160+
full::ImpactParameterNormalised0,
161+
full::PtProng0,
162+
full::PProng0,
163+
full::ImpactParameterNormalised1,
164+
full::PtProng1,
165+
full::PProng1,
166+
full::ImpactParameterNormalised2,
167+
full::PtProng2,
168+
full::PProng2,
169+
hf_cand::PxProng0,
170+
hf_cand::PyProng0,
171+
hf_cand::PzProng0,
172+
hf_cand::PxProng1,
173+
hf_cand::PyProng1,
174+
hf_cand::PzProng1,
175+
hf_cand::PxProng2,
176+
hf_cand::PyProng2,
177+
hf_cand::PzProng2,
178+
hf_cand::ImpactParameter0,
179+
hf_cand::ImpactParameter1,
180+
hf_cand::ImpactParameter2,
181+
hf_cand::ErrorImpactParameter0,
182+
hf_cand::ErrorImpactParameter1,
183+
hf_cand::ErrorImpactParameter2,
184+
hf_cand::ImpactParameterZ0,
185+
hf_cand::ImpactParameterZ1,
186+
hf_cand::ImpactParameterZ2,
187+
hf_cand::ErrorImpactParameterZ0,
188+
hf_cand::ErrorImpactParameterZ1,
189+
hf_cand::ErrorImpactParameterZ2,
190+
full::NSigTpcPi0,
191+
full::NSigTpcKa0,
192+
full::NSigTofPi0,
193+
full::NSigTofKa0,
194+
full::NSigTpcTofPi0,
195+
full::NSigTpcTofKa0,
196+
full::NSigTpcPi1,
197+
full::NSigTpcKa1,
198+
full::NSigTofPi1,
199+
full::NSigTofKa1,
200+
full::NSigTpcTofPi1,
201+
full::NSigTpcTofKa1,
202+
full::NSigTpcPi2,
203+
full::NSigTpcKa2,
204+
full::NSigTofPi2,
205+
full::NSigTofKa2,
206+
full::NSigTpcTofPi2,
207+
full::NSigTpcTofKa2,
208+
full::CandidateSelFlag,
209+
full::M,
210+
full::Pt,
211+
full::P,
212+
full::Cpa,
213+
full::CpaXY,
214+
full::MaxNormalisedDeltaIP,
215+
full::Ct,
216+
full::Eta,
217+
full::Phi,
218+
full::Y,
219+
full::E,
220+
full::Centrality,
221+
full::HfCandDpFullEvId,
222+
hf_cand_3prong::FlagMcMatchRec,
223+
hf_cand_3prong::OriginMcRec,
224+
hf_cand_3prong::FlagMcDecayChanRec);
225+
226+
DECLARE_SOA_TABLE(HfCandDpMcPs, "AOD", "HFCANDDPMCP",
227+
full::Pt,
228+
full::Eta,
229+
full::Phi,
230+
full::Y,
231+
full::HfCandDpMcEvId,
232+
hf_cand_3prong::FlagMcMatchGen,
233+
hf_cand_3prong::FlagMcDecayChanGen,
234+
hf_cand_3prong::OriginMcGen);
235+
} // namespace o2::aod
236+
237+
#endif // PWGHF_HFC_DATAMODEL_REDUCEDDMESONPAIRSTABLES_H_

PWGHF/HFC/TableProducer/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ o2physics_add_dpl_workflow(correlator-dplus-dminus
3434
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore
3535
COMPONENT_NAME Analysis)
3636

37+
o2physics_add_dpl_workflow(correlator-dplus-dplus-reduced
38+
SOURCES correlatorDplusDplusReduced.cxx
39+
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore O2Physics::EventFilteringUtils
40+
COMPONENT_NAME Analysis)
41+
3742
o2physics_add_dpl_workflow(correlator-dplus-hadrons
3843
SOURCES correlatorDplusHadrons.cxx
3944
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore

0 commit comments

Comments
 (0)