Skip to content

Commit 14435ff

Browse files
lramonaDelloStritto
authored andcommitted
[PWGLF] Update the MC closure test function (AliceO2Group#18620)
1 parent 9bd63c2 commit 14435ff

1 file changed

Lines changed: 68 additions & 12 deletions

File tree

‎PWGLF/Tasks/Nuspex/spectraTOF.cxx‎

Lines changed: 68 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1534,10 +1534,9 @@ struct tofSpectra {
15341534
continue;
15351535
}
15361536
// trackwoCut++;
1537-
if (std::abs(track.dcaXY()) > 0.05) { // Skipping tracks that don't pass the standard cuts
1538-
return;
1537+
if (!passesDCAxyCut(track)) { // Skipping tracks that don't pass the standard cuts
1538+
continue;
15391539
}
1540-
15411540
// trackwCut++;
15421541
const auto& mcLabel = mcTrackLabels.iteratorAt(track.globalIndex());
15431542
const auto& mcParticle = mcParticles.iteratorAt(mcLabel.mcParticleId());
@@ -1562,7 +1561,7 @@ struct tofSpectra {
15621561
double rapidityKa = track.rapidity(PID::getMass(3));
15631562
double rapidityPr = track.rapidity(PID::getMass(4));
15641563
if (track.eta() < trkselOptions.cfgCutEtaMin || track.eta() > trkselOptions.cfgCutEtaMax) {
1565-
return;
1564+
continue;
15661565
}
15671566
if (mcParticle.isPhysicalPrimary()) {
15681567
if (isTPCPion && rapidityPi >= trkselOptions.cfgCutYMin && rapidityPi <= trkselOptions.cfgCutYMax) {
@@ -1603,6 +1602,70 @@ struct tofSpectra {
16031602
}
16041603

16051604
// TOF Selection and Histogram Filling
1605+
// RL TOF selections: same cut for TRD as inclusive analysis.
1606+
if (!track.hasTOF()) {
1607+
continue;
1608+
}
1609+
1610+
if (trkselOptions.requireTrdOnly && !track.hasTRD()) {
1611+
continue;
1612+
}
1613+
1614+
if (trkselOptions.requireNoTrd && track.hasTRD()) {
1615+
continue;
1616+
}
1617+
1618+
if (track.hasTRD() && trkselOptions.lastRequiredTrdCluster > 0) {
1619+
int lastLayer = 0;
1620+
for (int layer = 7; layer >= 0; --layer) {
1621+
if (track.trdPattern() & (1 << layer)) {
1622+
lastLayer = layer;
1623+
break;
1624+
}
1625+
}
1626+
1627+
if (lastLayer < trkselOptions.lastRequiredTrdCluster) {
1628+
continue;
1629+
}
1630+
}
1631+
1632+
// RL: add an selection in the selection event time
1633+
1634+
switch (trkselOptions.selectEvTime) {
1635+
case 0:
1636+
break; // No selection
1637+
case 1:
1638+
if (!track.isEvTimeDefined()) {
1639+
continue;
1640+
}
1641+
break;
1642+
case 2:
1643+
if (!track.isEvTimeTOF()) {
1644+
continue;
1645+
}
1646+
break;
1647+
case 3:
1648+
if (!track.isEvTimeT0AC()) {
1649+
continue;
1650+
}
1651+
break;
1652+
case 4:
1653+
if (!track.isEvTimeTOFT0AC()) {
1654+
continue;
1655+
}
1656+
break;
1657+
case 5:
1658+
if (track.isEvTimeDefined()) {
1659+
continue;
1660+
}
1661+
break;
1662+
default:
1663+
LOG(fatal) << "Valore selectEvTime non riconosciuto: "
1664+
<< trkselOptions.selectEvTime;
1665+
}
1666+
1667+
//
1668+
16061669
if (isTOFPion && rapidityPi >= trkselOptions.cfgCutYMin && rapidityPi <= trkselOptions.cfgCutYMax) {
16071670
if (usePDGcode) {
16081671
if (pdgCode == kPiPlus) {
@@ -2149,9 +2212,7 @@ struct tofSpectra {
21492212
if (!mcParticle.isPhysicalPrimary()) { // Is not physical primary
21502213
if (mcParticle.getProcess() == kPDecay) { // Is from decay
21512214
if (includeCentralityMC) {
2152-
if (includeCentralityMC) {
2153-
histos.fill(HIST(hpt_num_str[i]), track.pt(), multiplicity, track.dcaXY());
2154-
}
2215+
histos.fill(HIST(hpt_num_str[i]), track.pt(), multiplicity, track.dcaXY());
21552216
} else {
21562217
histos.fill(HIST(hpt_num_str[i]), track.pt(), multiplicity);
21572218
}
@@ -2686,8 +2747,6 @@ struct tofSpectra {
26862747
}
26872748
histos.fill(HIST("MC/Multiplicity"), getMultiplicityMC(mcCollision));
26882749
const auto& particlesInCollision = mcParticles.sliceByCached(aod::mcparticle::mcCollisionId, mcCollision.globalIndex(), cache);
2689-
bool hasParticleInFT0C = false;
2690-
bool hasParticleInFT0A = false;
26912750
if (evselOptions.cfgINELCut.value == EvSelInelGt0Cut) {
26922751
if (!o2::pwglf::isINELgt0mc(particlesInCollision, pdgDB)) {
26932752
continue;
@@ -2714,9 +2773,6 @@ struct tofSpectra {
27142773
if (mcCollision.isInelGt1()) {
27152774
histos.fill(HIST("MC/GenRecoCollisions"), 4.f);
27162775
}
2717-
if (hasParticleInFT0C && hasParticleInFT0A) {
2718-
histos.fill(HIST("MC/GenRecoCollisions"), 5.f);
2719-
}
27202776
}
27212777
}
27222778
PROCESS_SWITCH(tofSpectra, processMC, "Process MC", false);

0 commit comments

Comments
 (0)