@@ -324,12 +324,16 @@ struct AntinucleiInJets {
324324 registryData.add (" antiproton_ue_tof" , " antiproton_ue_tof" , HistType::kTH2F , {{nbins, min, max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TOF}" }});
325325 registryData.add (" antiproton_dca_jet" , " antiproton_dca_jet" , HistType::kTH2F , {{nbins, min, max, " #it{p}_{T} (GeV/#it{c})" }, {200 , -1.0 , 1.0 , " DCA_{xy} (cm)" }});
326326 registryData.add (" antiproton_dca_ue" , " antiproton_dca_ue" , HistType::kTH2F , {{nbins, min, max, " #it{p}_{T} (GeV/#it{c})" }, {200 , -1.0 , 1.0 , " DCA_{xy} (cm)" }});
327+ registryData.add (" antiproton_fullEvent_tpc" , " antiproton_fullEvent_tpc" , HistType::kTH2F , {{nbins, min, max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TPC}" }});
328+ registryData.add (" antiproton_fullEvent_tof" , " antiproton_fullEvent_tof" , HistType::kTH2F , {{nbins, min, max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TOF}" }});
327329
328330 // Antideuterons
329331 registryData.add (" antideuteron_jet_tpc" , " antideuteron_jet_tpc" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TPC}" }});
330332 registryData.add (" antideuteron_jet_tof" , " antideuteron_jet_tof" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TOF}" }});
331333 registryData.add (" antideuteron_ue_tpc" , " antideuteron_ue_tpc" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TPC}" }});
332334 registryData.add (" antideuteron_ue_tof" , " antideuteron_ue_tof" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TOF}" }});
335+ registryData.add (" antideuteron_fullEvent_tpc" , " antideuteron_fullEvent_tpc" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TPC}" }});
336+ registryData.add (" antideuteron_fullEvent_tof" , " antideuteron_fullEvent_tof" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TOF}" }});
333337
334338 // Deuterons
335339 registryData.add (" deuteron_jet_tpc" , " deuteron_jet_tpc" , HistType::kTH2F , {{nbins, 2 * min, 2 * max, " #it{p}_{T} (GeV/#it{c})" }, {400 , -20.0 , 20.0 , " n#sigma_{TPC}" }});
@@ -1151,6 +1155,56 @@ struct AntinucleiInJets {
11511155 if (requireIsVertexTOFmatched && !collision.selection_bit (o2::aod::evsel::kIsVertexTOFmatched ))
11521156 return ;
11531157 registryData.fill (HIST (" number_of_events_data" ), 8.5 );
1158+
1159+ // Loop over all tracks for Full Event histograms
1160+ for (auto const & track : tracks) {
1161+ // Apply standard track selection
1162+ if (!passedTrackSelection (track))
1163+ continue ;
1164+
1165+ // Define variables
1166+ double nsigmaTPCPr = track.tpcNSigmaPr ();
1167+ double nsigmaTOFPr = track.tofNSigmaPr ();
1168+ double nsigmaTPCDe = track.tpcNSigmaDe ();
1169+ double nsigmaTOFDe = track.tofNSigmaDe ();
1170+ double pt = track.pt ();
1171+
1172+ // ITS PID logic
1173+ bool passedItsPidProt (true ), passedItsPidDeut (true );
1174+ double nSigmaITSprot = static_cast <double >(itsResponse.nSigmaITS <o2::track::PID::Proton>(track));
1175+ double nSigmaITSdeut = static_cast <double >(itsResponse.nSigmaITS <o2::track::PID::Deuteron>(track));
1176+
1177+ if (applyItsPid && pt < ptMaxItsPidProt && (nSigmaITSprot < nSigmaItsMin || nSigmaITSprot > nSigmaItsMax)) {
1178+ passedItsPidProt = false ;
1179+ }
1180+ if (applyItsPid && pt < ptMaxItsPidDeut && (nSigmaITSdeut < nSigmaItsMin || nSigmaITSdeut > nSigmaItsMax)) {
1181+ passedItsPidDeut = false ;
1182+ }
1183+
1184+ // Fill histograms for antimatter
1185+ if (track.sign () < 0 ) {
1186+
1187+ // Antiprotons Full Event
1188+ if (passedItsPidProt) {
1189+ registryData.fill (HIST (" antiproton_fullEvent_tpc" ), pt, nsigmaTPCPr);
1190+
1191+ // Require TOF matching and preliminary TPC cut
1192+ if (nsigmaTPCPr > minNsigmaTpc && nsigmaTPCPr < maxNsigmaTpc && track.hasTOF ()) {
1193+ registryData.fill (HIST (" antiproton_fullEvent_tof" ), pt, nsigmaTOFPr);
1194+ }
1195+ }
1196+
1197+ // Antideuterons Full Event
1198+ if (passedItsPidDeut) {
1199+ registryData.fill (HIST (" antideuteron_fullEvent_tpc" ), pt, nsigmaTPCDe);
1200+
1201+ // Require TOF matching and preliminary TPC cut
1202+ if (nsigmaTPCDe > minNsigmaTpc && nsigmaTPCDe < maxNsigmaTpc && track.hasTOF ()) {
1203+ registryData.fill (HIST (" antideuteron_fullEvent_tof" ), pt, nsigmaTOFDe);
1204+ }
1205+ }
1206+ }
1207+ }
11541208
11551209 // Loop over reconstructed tracks
11561210 int id (-1 );
@@ -1182,7 +1236,7 @@ struct AntinucleiInJets {
11821236 fastjet::ClusterSequenceArea cs (fjParticles, jetDef, areaDef);
11831237 std::vector<fastjet::PseudoJet> jets = fastjet::sorted_by_pt (cs.inclusive_jets ());
11841238 auto [rhoPerp, rhoMPerp] = jetutilities::estimateRhoPerpCone (fjParticles, jets[0 ], rJet);
1185-
1239+
11861240 // Loop over reconstructed jets
11871241 bool isAtLeastOneJetSelected = false ;
11881242 for (const auto & jet : jets) {
0 commit comments