@@ -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