Skip to content

Commit c5bc9ce

Browse files
author
Valerio Di Bella
committed
Introducing a reduced workflow for D+ pairs
1 parent a434276 commit c5bc9ce

5 files changed

Lines changed: 853 additions & 0 deletions

File tree

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