|
19 | 19 | #include "Common/DataModel/Multiplicity.h" |
20 | 20 | #include "Common/DataModel/PIDResponseTOF.h" |
21 | 21 | #include "Common/DataModel/PIDResponseTPC.h" |
| 22 | +#include "Common/DataModel/PIDResponseITS.h" |
22 | 23 | #include "Common/DataModel/Qvectors.h" |
23 | 24 | #include "Common/DataModel/TrackSelectionTables.h" |
24 | 25 |
|
@@ -70,6 +71,7 @@ struct F0980pbpbanalysis { |
70 | 71 |
|
71 | 72 | Service<o2::ccdb::BasicCCDBManager> ccdb; |
72 | 73 | o2::ccdb::CcdbApi ccdbApi; |
| 74 | + o2::aod::ITSResponse itsResponse; |
73 | 75 |
|
74 | 76 | Configurable<std::string> cfgURL{"cfgURL", "http://alice-ccdb.cern.ch", "Address of the CCDB to browse"}; |
75 | 77 | Configurable<int64_t> ccdbNoLaterThan{"ccdbNoLaterThan", std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count(), "Latest acceptable timestamp of creation for the object"}; |
@@ -130,6 +132,8 @@ struct F0980pbpbanalysis { |
130 | 132 | Configurable<double> cfgPIDMaxTPCnSigmaPion{"cfgPIDMaxTPCnSigmaPion", 5.0, "TPC nSigma cut for Pion"}; // TPC |
131 | 133 | Configurable<double> cfgPIDMaxTPCnSigmaPionS{"cfgPIDMaxTPCnSigmaPionS", 3.0, "TPC nSigma cut for Pion as a standalone"}; |
132 | 134 | Configurable<double> cfgPIDMaxTiednSigmaPion{"cfgPIDMaxTiednSigmaPion", 3.0, "Combined nSigma cut for Pion"}; |
| 135 | + Configurable<bool> cfgPIDITSFlag{"cfgPIDITSFlag", true, "PID ITS flag"}; |
| 136 | + Configurable<double> cfgPIDMaxITSnSigmaPion{"cfgPIDMaxITSnSigmaPion", 3.0, "ITS nSigma selection"}; |
133 | 137 | } PIDConfig; |
134 | 138 |
|
135 | 139 | // Flow Configurables |
@@ -231,6 +235,7 @@ struct F0980pbpbanalysis { |
231 | 235 | PIDRun3 = 0, |
232 | 236 | PIDRun2 = 1, |
233 | 237 | PIDTest = 2, |
| 238 | + PIDAddITS = 3, |
234 | 239 | }; |
235 | 240 |
|
236 | 241 | enum PtlList { |
@@ -571,6 +576,16 @@ struct F0980pbpbanalysis { |
571 | 576 | return 0; |
572 | 577 | } |
573 | 578 | } |
| 579 | + } else if (cfgListPID == PIDList::PIDAddITS) { |
| 580 | + if (!track.hasTOF()) { |
| 581 | + return 0; |
| 582 | + } |
| 583 | + if ((getTpcNSigma(track) * getTpcNSigma(track) + getTofNSigma(track) * getTofNSigma(track)) > (PIDConfig.cfgPIDMaxTiednSigmaPion * PIDConfig.cfgPIDMaxTiednSigmaPion)) { |
| 584 | + return 0; |
| 585 | + } |
| 586 | + if (!PIDConfig.cfgPIDITSFlag || std::abs(itsResponse.nSigmaITS<o2::track::PID::Pion>(track)) > PIDConfig.cfgPIDMaxITSnSigmaPion) { |
| 587 | + return 0; |
| 588 | + } |
574 | 589 | } |
575 | 590 | if (QAConfig.cfgQATrackFlowCut && QA) { |
576 | 591 | histos.fill(HIST("TrackQA/hnTracks"), 8); // PID |
|
0 commit comments