Skip to content

Commit bb7c403

Browse files
zchochulZuzanna Chochulska
andauthored
Adding a possibility to perform Kaon PID with loose TPC NSigmas (#7072)
Co-authored-by: Zuzanna Chochulska <zuzanna.chochulska.dokt@pw.edu.pl>
1 parent db2a160 commit bb7c403

1 file changed

Lines changed: 61 additions & 15 deletions

File tree

PWGCF/FemtoUniverse/TableProducer/femtoUniverseProducerTask.cxx

Lines changed: 61 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,8 @@ struct femtoUniverseProducerTask {
224224
Configurable<std::vector<float>> ConfPhiChildDCAMin{"ConfPhiChildDCAMin", std::vector<float>{0.05f, 0.06f}, "Phi Child sel: Max. DCA Daugh to PV (cm)"};
225225
Configurable<std::vector<float>> ConfPhiChildPIDnSigmaMax{"ConfPhiChildPIDnSigmaMax", std::vector<float>{5.f, 4.f}, "Phi Child sel: Max. PID nSigma TPC"};
226226
Configurable<std::vector<int>> ConfPhiChildPIDspecies{"ConfPhiChildPIDspecies", std::vector<int>{o2::track::PID::Kaon, o2::track::PID::Kaon}, "Phi Child sel: Particles species for PID"};
227+
Configurable<bool> ConfLooseTPCNSigma{"ConfLooseTPCNSigma", false, "Use loose TPC N sigmas for Kaon PID."};
228+
Configurable<float> ConfLooseTPCNSigmaValue{"ConfLooseTPCNSigmaValue", 10, "Value for the loose TPC N Sigma for Kaon PID."};
227229
} ConfPhiChildSelection;
228230

229231
struct : o2::framework::ConfigurableGroup {
@@ -259,38 +261,82 @@ struct femtoUniverseProducerTask {
259261
// ConfNsigmaTPCTOFKaon -> are we doing TPC TOF PID for Kaons? (boolean)
260262
// ConfNsigmaTPCKaon -> TPC Kaon Sigma for momentum < 0.4
261263
// ConfNsigmaCombinedKaon -> TPC and TOF Kaon Sigma (combined) for momentum > 0.4
264+
// ConfLooseTPCNSigma -> use loose nsigmas for Phi meson daughters (bool)
265+
// ConfLooseTPCNSigmaValue -> value of the loose cut (float)
262266

263267
if (mom < 0.3) { // 0.0-0.3
264-
if (TMath::Abs(nsigmaTPCK) < 3.0) {
265-
return true;
268+
if (ConfPhiChildSelection.ConfLooseTPCNSigma) {
269+
if (TMath::Abs(nsigmaTPCK) < ConfPhiChildSelection.ConfLooseTPCNSigmaValue) {
270+
return true;
271+
} else {
272+
return false;
273+
}
266274
} else {
267-
return false;
275+
if (TMath::Abs(nsigmaTPCK) < 3.0) {
276+
return true;
277+
} else {
278+
return false;
279+
}
268280
}
269281
} else if (mom < 0.45) { // 0.30 - 0.45
270-
if (TMath::Abs(nsigmaTPCK) < 2.0) {
271-
return true;
282+
if (ConfPhiChildSelection.ConfLooseTPCNSigma) {
283+
if (TMath::Abs(nsigmaTPCK) < ConfPhiChildSelection.ConfLooseTPCNSigmaValue) {
284+
return true;
285+
} else {
286+
return false;
287+
}
272288
} else {
273-
return false;
289+
if (TMath::Abs(nsigmaTPCK) < 2.0) {
290+
return true;
291+
} else {
292+
return false;
293+
}
274294
}
275295
} else if (mom < 0.55) { // 0.45-0.55
276-
if (TMath::Abs(nsigmaTPCK) < 1.0) {
277-
return true;
296+
if (ConfPhiChildSelection.ConfLooseTPCNSigma) {
297+
if (TMath::Abs(nsigmaTPCK) < ConfPhiChildSelection.ConfLooseTPCNSigmaValue) {
298+
return true;
299+
} else {
300+
return false;
301+
}
278302
} else {
279-
return false;
303+
if (TMath::Abs(nsigmaTPCK) < 1.0) {
304+
return true;
305+
} else {
306+
return false;
307+
}
280308
}
281309
} else if (mom < 1.5) { // 0.55-1.5 (now we use TPC and TOF)
282-
if ((TMath::Abs(nsigmaTOFK) < 3.0) && (TMath::Abs(nsigmaTPCK) < 3.0)) {
283-
{
310+
if (ConfPhiChildSelection.ConfLooseTPCNSigma) {
311+
if (TMath::Abs(nsigmaTPCK) < ConfPhiChildSelection.ConfLooseTPCNSigmaValue) {
284312
return true;
313+
} else {
314+
return false;
285315
}
316+
286317
} else {
287-
return false;
318+
if ((TMath::Abs(nsigmaTOFK) < 3.0) && (TMath::Abs(nsigmaTPCK) < 3.0)) {
319+
{
320+
return true;
321+
}
322+
} else {
323+
return false;
324+
}
288325
}
289326
} else if (mom > 1.5) { // 1.5 -
290-
if ((TMath::Abs(nsigmaTOFK) < 2.0) && (TMath::Abs(nsigmaTPCK) < 3.0)) {
291-
return true;
327+
if (ConfPhiChildSelection.ConfLooseTPCNSigma) {
328+
if (TMath::Abs(nsigmaTPCK) < ConfPhiChildSelection.ConfLooseTPCNSigmaValue) {
329+
return true;
330+
} else {
331+
return false;
332+
}
333+
292334
} else {
293-
return false;
335+
if ((TMath::Abs(nsigmaTOFK) < 2.0) && (TMath::Abs(nsigmaTPCK) < 3.0)) {
336+
return true;
337+
} else {
338+
return false;
339+
}
294340
}
295341
} else {
296342
return false;

0 commit comments

Comments
 (0)