Skip to content

Commit e179f08

Browse files
[PWGHF] Added topological cuts and TPC transverse momentum to PID Nsigma task (#9028)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent daddb88 commit e179f08

1 file changed

Lines changed: 46 additions & 11 deletions

File tree

PWGHF/Tasks/taskPidStudies.cxx

Lines changed: 46 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ DECLARE_SOA_COLUMN(MassAntiLambda, massAntiLambda, float); //! Candidate mass
4949
DECLARE_SOA_COLUMN(Pt, pt, float); //! Transverse momentum of the candidate (GeV/c)
5050
DECLARE_SOA_COLUMN(PtPos, ptPos, float); //! Transverse momentum of positive track (GeV/c)
5151
DECLARE_SOA_COLUMN(PtNeg, ptNeg, float); //! Transverse momentum of negative track (GeV/c)
52-
DECLARE_SOA_COLUMN(TpcInnerParPos, tpcInnerParPos, float); //! Momentum of positive track at inner wall of TPC (GeV/c)
53-
DECLARE_SOA_COLUMN(TpcInnerParNeg, tpcInnerParNeg, float); //! Momentum of negative track at inner wall of TPC (GeV/c)
52+
DECLARE_SOA_COLUMN(PtPosTpc, ptPosTpc, float); //! Transverse Momentum of positive track at inner wall of TPC (GeV/c)
53+
DECLARE_SOA_COLUMN(PtNegTpc, ptNegTpc, float); //! Transverse Momentum of negative track at inner wall of TPC (GeV/c)
5454
DECLARE_SOA_COLUMN(Radius, radius, float); //! Radius
5555
DECLARE_SOA_COLUMN(Cpa, cpa, float); //! Cosine of pointing angle
5656
DECLARE_SOA_COLUMN(DcaV0Daughters, dcaV0Daughters, float); //! DCA between V0 daughters
@@ -69,8 +69,8 @@ DECLARE_SOA_COLUMN(QtArm, qtArm, float); //! Armenteros Qt
6969
// Cascades
7070
DECLARE_SOA_COLUMN(MassOmega, massOmega, float); //! Candidate mass
7171
DECLARE_SOA_COLUMN(MassXi, massXi, float); //! Candidate mass
72-
DECLARE_SOA_COLUMN(BachPt, bachPt, float); //! Transverse momentum of the bachelor (GeV/c)
73-
DECLARE_SOA_COLUMN(TpcInnerParBach, tpcInnerParBach, float); //! Transverse momentum of the bachelor (GeV/c)
72+
DECLARE_SOA_COLUMN(PtBach, ptBach, float); //! Transverse momentum of the bachelor (GeV/c)
73+
DECLARE_SOA_COLUMN(PtBachTpc, ptBachTpc, float); //! Transverse momentum of the bachelor at inner wall of TPC (GeV/c)
7474
DECLARE_SOA_COLUMN(MLambda, mLambda, float); //! Daughter lambda mass (GeV/c^2)
7575
DECLARE_SOA_COLUMN(V0cosPA, v0cosPA, float); //! V0 CPA
7676
DECLARE_SOA_COLUMN(CascCosPa, cascCosPa, float); //! Cascade CPA
@@ -92,8 +92,8 @@ DECLARE_SOA_TABLE(PidV0s, "AOD", "PIDV0S", //! Table with PID information
9292
pid_studies::Pt,
9393
pid_studies::PtPos,
9494
pid_studies::PtNeg,
95-
pid_studies::TpcInnerParPos,
96-
pid_studies::TpcInnerParNeg,
95+
pid_studies::PtPosTpc,
96+
pid_studies::PtNegTpc,
9797
pid_studies::Radius,
9898
pid_studies::Cpa,
9999
pid_studies::DcaV0Daughters,
@@ -117,8 +117,8 @@ DECLARE_SOA_TABLE(PidV0s, "AOD", "PIDV0S", //! Table with PID information
117117
DECLARE_SOA_TABLE(PidCascades, "AOD", "PIDCASCADES", //! Table with PID information
118118
pid_studies::MassOmega,
119119
pid_studies::Pt,
120-
pid_studies::BachPt,
121-
pid_studies::TpcInnerParBach,
120+
pid_studies::PtBach,
121+
pid_studies::PtBachTpc,
122122
pid_studies::Radius,
123123
pid_studies::MLambda,
124124
pid_studies::V0cosPA,
@@ -146,6 +146,10 @@ struct HfTaskPidStudies {
146146
Configurable<float> massOmegaMin{"massOmegaMin", 1.5, "Minimum mass for omega"};
147147
Configurable<float> massOmegaMax{"massOmegaMax", 1.8, "Maximum mass for omega"};
148148
Configurable<float> radiusMax{"radiusMax", 2.3, "Maximum decay radius (cm)"};
149+
Configurable<float> cosPaMin{"cosPaMin", 0.98, "Minimum cosine of pointing angle"};
150+
Configurable<float> dcaV0DaughtersMax{"dcaV0DaughtersMax", 0.2, "Maximum DCA among the V0 daughters (cm)"};
151+
Configurable<float> dcaV0ToPvMax{"dcaV0ToPvMax", 0.2, "Maximum DCA of the V0 from the primary vertex (cm)"};
152+
Configurable<float> cosPaV0Min{"cosPaV0Min", 0.95, "Minimum cosine of pointing angle for V0 stemming from cascade decays"};
149153
Configurable<float> qtArmenterosMinForK0{"qtArmenterosMinForK0", 0.12, "Minimum Armenteros' qt for K0"};
150154
Configurable<float> qtArmenterosMaxForLambda{"qtArmenterosMaxForLambda", 0.12, "Minimum Armenteros' qt for (anti)Lambda"};
151155
Configurable<float> downSampleBkgFactor{"downSampleBkgFactor", 1., "Fraction of candidates to keep"};
@@ -184,8 +188,8 @@ struct HfTaskPidStudies {
184188
candidate.pt(),
185189
posTrack.pt(),
186190
negTrack.pt(),
187-
posTrack.tpcInnerParam(),
188-
negTrack.tpcInnerParam(),
191+
posTrack.tpcInnerParam() / std::cosh(candidate.positiveeta()),
192+
negTrack.tpcInnerParam() / std::cosh(candidate.negativeeta()),
189193
candidate.v0radius(),
190194
candidate.v0cosPA(),
191195
candidate.dcaV0daughters(),
@@ -211,7 +215,7 @@ struct HfTaskPidStudies {
211215
candidate.mOmega(),
212216
candidate.pt(),
213217
candidate.bachelorpt(),
214-
bachTrack.tpcInnerParam(),
218+
bachTrack.tpcInnerParam() / std::cosh(candidate.bacheloreta()),
215219
candidate.cascradius(),
216220
candidate.mLambda(),
217221
candidate.v0cosPA(coll.posX(), coll.posY(), coll.posZ()),
@@ -282,6 +286,15 @@ struct HfTaskPidStudies {
282286
if (v0.v0radius() > radiusMax) {
283287
return false;
284288
}
289+
if (v0.v0cosPA() < cosPaMin) {
290+
return false;
291+
}
292+
if (v0.dcaV0daughters() > dcaV0DaughtersMax) {
293+
return false;
294+
}
295+
if (v0.dcav0topv() > dcaV0ToPvMax) {
296+
return false;
297+
}
285298
return true;
286299
}
287300

@@ -298,6 +311,15 @@ struct HfTaskPidStudies {
298311
if (v0.v0radius() > radiusMax) {
299312
return false;
300313
}
314+
if (v0.v0cosPA() < cosPaMin) {
315+
return false;
316+
}
317+
if (v0.dcaV0daughters() > dcaV0DaughtersMax) {
318+
return false;
319+
}
320+
if (v0.dcav0topv() > dcaV0ToPvMax) {
321+
return false;
322+
}
301323
return true;
302324
}
303325

@@ -313,6 +335,19 @@ struct HfTaskPidStudies {
313335
if (casc.cascradius() > radiusMax) {
314336
return false;
315337
}
338+
const auto& coll = casc.template collision_as<CollSels>();
339+
if (casc.casccosPA(coll.posX(), coll.posY(), coll.posZ()) < cosPaMin) {
340+
return false;
341+
}
342+
if (casc.dcaV0daughters() > dcaV0DaughtersMax) {
343+
return false;
344+
}
345+
if (casc.dcav0topv(coll.posX(), coll.posY(), coll.posZ()) > dcaV0ToPvMax) {
346+
return false;
347+
}
348+
if (casc.v0cosPA(coll.posX(), coll.posY(), coll.posZ()) < cosPaV0Min) {
349+
return false;
350+
}
316351
return true;
317352
}
318353

0 commit comments

Comments
 (0)