AliPhysics  master (3d17d9d)
AliAODPidHF.h
Go to the documentation of this file.
1 #ifndef ALIAODPIDHF_H
2 #define ALIAODPIDHF_H
3 
4 /* Copyright(c) 1998-2006, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 /* $Id$ */
8 
9 //***********************************************************
14 
15 #include <TString.h>
16 #include <TH1F.h>
17 #include <TObject.h>
18 #include "AliAODTrack.h"
19 #include "AliPIDResponse.h"
20 #include "AliPIDCombined.h"
21 #include "AliPID.h"
22 
23 #include "vector"
24 using std::vector;
25 
26 class AliAODPidHF : public TObject{
27 
28 public:
29 
35  };
36 
38  kNone=-1,
42  };
43 
44  static const int kMaxEtaBins=5;
45  static const int kMaxPBins=10;
46 
47  AliAODPidHF();
48  AliAODPidHF(const AliAODPidHF& pid);
49  virtual ~AliAODPidHF();
50 
51  //Setters
53  for(Int_t i=0; i<fnNSigma; i++) fnSigma[i]=sigma[i];
54  }
55  void SetSigma(Int_t idet,Double_t sigma){fnSigma[idet]=sigma;return;}
56  void SetSigmaForTPC(Double_t *sigma){for(Int_t i=0;i<3;i++) fnSigma[i]=sigma[i];return;}
62 
65 
67 
69  fMaxnSigmaCombined[0]=sigpi;
70  fMaxnSigmaCombined[1]=sigk;
71  fMaxnSigmaCombined[2]=sigp;
72  }
74  fMinnSigmaTPC[0]=smin;
75  fMaxnSigmaTPC[0]=smax;
76  }
78  fMinnSigmaTOF[0]=smin;
79  fMaxnSigmaTOF[0]=smax;
80  }
82  fMinnSigmaTPC[1]=smin;
83  fMaxnSigmaTPC[1]=smax;
84  }
86  fMinnSigmaTOF[1]=smin;
87  fMaxnSigmaTOF[1]=smax;
88  }
90  fMinnSigmaTPC[2]=smin;
91  fMaxnSigmaTPC[2]=smax;
92  }
94  fMinnSigmaTOF[2]=smin;
95  fMaxnSigmaTOF[2]=smax;
96  }
97 
98  void SetPriors(Double_t *priors, Int_t npriors);
99  void SetPLimit(Double_t *plim, Int_t npLim);
100 
101  void SetAsym(Bool_t asym){fAsym=asym;return;}
102  void SetUseAsymmnSigmaTOF(Double_t nsmin, Double_t nsmax, Double_t nscompmin, Double_t nscompmax){
103  fUseAsymTOF=kTRUE;
104  fLownSigmaTOF=nsmin; fUpnSigmaTOF=nsmax;
105  fLownSigmaCompatTOF=nscompmin; fUpnSigmaCompatTOF=nscompmax;
106  }
107  void SetTPC(Bool_t tpc){fTPC=tpc;return;}
108  void SetTOF(Bool_t tof){fTOF=tof;return;}
109  void SetITS(Bool_t its){fITS=its;return;}
110  void SetTRD(Bool_t trd){fTRD=trd;return;}
111  void SetMatch(Int_t match){fMatch=match;return;}
112  void SetForceTOFforKaons(Bool_t forceTOF){fForceTOFforKaons=forceTOF;return;}
113  void SetCompat(Bool_t comp){fCompat=comp;return;}
114  void SetMC(Bool_t mc){fMC=mc;return;}
115  void SetMClowenpp2011(Bool_t mc){fMCLowEn2011=mc;return;}
116  void SetOnePad(Bool_t onepad){fOnePad=onepad;return;}
118  void SetPbPb(Bool_t pbpb){fPbPb=pbpb;return;}
119  void SetPCompatTOF(Double_t pTOF){fPCompatTOF=pTOF;return;}
120  void SetTOFdecide(Bool_t tOFdecide){fTOFdecide=tOFdecide;return;}
121  void SetOldPid(Bool_t oldPid){fOldPid=oldPid;return;}
122  void SetPtThresholdTPC(Double_t ptThresholdTPC){fPtThresholdTPC=ptThresholdTPC;return;}
124  void SetPidResponse(AliPIDResponse *pidResp) {fPidResponse=pidResp;return;}
126  fCombDetectors=pidComb;
127  }
128  void SetPionPriorHisto(TH1F* histo){
130  fPriorsH[AliPID::kPion] = new TH1F(*histo);
131  }
132  void SetKaonPriorHisto(TH1F* histo){
134  fPriorsH[AliPID::kKaon] = new TH1F(*histo);
135  }
136  void SetProtonPriorHisto(TH1F* histo){
138  fPriorsH[AliPID::kProton] = new TH1F(*histo);
139  }
140 
141 
142  //Getters
143 
144  Int_t GetnSigmaTPC(AliAODTrack *track, Int_t species, Double_t &sigma) const;
145  Int_t GetnSigmaTOF(AliAODTrack *track, Int_t species, Double_t &sigma) const;
146  Int_t GetnSigmaITS(AliAODTrack *track, Int_t species, Double_t &sigma) const;
147  Double_t GetSigma(Int_t idet) const{return fnSigma[idet];}
148  Double_t GetTofSigma() const{return fTOFSigma;}
149  //void GetPriors(Double_t *priors) const{priors=fPriors;return;}
150  //void GetPLimit(Double_t *plim) const{plim=fPLimit;}
151  void GetPriors(Double_t *priors) const{for(Int_t i=0;i<fnPriors;i++){priors[i]=fPriors[i];}return;}
152  void GetPLimit(Double_t *plim) const{for(Int_t i=0;i<fnPLimit;i++){plim[i]=fPLimit[i];}return;}
153  Bool_t GetAsym() const{return fAsym;}
154  Bool_t GetTPC() const{return fTPC;}
155  Bool_t GetTOF() const{return fTOF;}
156  Bool_t GetITS() const{return fITS;}
157  Bool_t GetTRD() const{return fTRD;}
158  Int_t GetMatch() const{return fMatch;}
160  Bool_t GetCompat() const{return fCompat;}
161  Bool_t GetMC() const{return fMC;}
162  Bool_t GetOnePad() const{return fOnePad;}
165  Bool_t GetPbPb() const{return fPbPb;}
166  Bool_t GetTOFdecide() const{return fTOFdecide;}
173  AliPIDResponse *GetPidResponse() const {return fPidResponse;}
174  AliPIDCombined *GetPidCombined() const {return fPidCombined;}
176  return fCombDetectors;
177  }
180 
181  Int_t RawSignalPID (AliAODTrack *track, TString detector) const;
182  Bool_t IsKaonRaw (AliAODTrack *track, TString detector) const;
183  Bool_t IsPionRaw (AliAODTrack *track, TString detector) const;
184  Bool_t IsProtonRaw (AliAODTrack *track, TString detector) const;
185  Bool_t IsElectronRaw (AliAODTrack *track, TString detector) const;
186  void CombinedProbability(AliAODTrack *track,Bool_t *type) const; //0 = pion, 1 = kaon, 2 = proton
187  Bool_t CheckStatus(AliAODTrack *track,TString detectors) const;
188 
189  Bool_t CheckITSPIDStatus(AliAODTrack *track) const;
190  Bool_t CheckTPCPIDStatus(AliAODTrack *track) const;
191  Bool_t CheckTOFPIDStatus(AliAODTrack *track) const;
192  Bool_t CheckTRDPIDStatus(AliAODTrack *track) const;
193 
194  Bool_t TPCRawAsym(AliAODTrack* track,Int_t specie) const;
195  Int_t MatchTPCTOF(AliAODTrack *track,Int_t specie);
197  Int_t MatchTPCTOFMin(AliAODTrack *track, Int_t specie);
198 
199  Int_t MakeRawPid(AliAODTrack *track,Int_t specie);
200 
201  Bool_t IsTOFPiKexcluded(AliAODTrack *track,Double_t nsigmaK);
202 
203  Bool_t IsExcluded(AliAODTrack *track, Int_t labelTrack, Double_t nsigmaCut, TString detector);
204 
205  void GetTPCBetheBlochParams(Double_t alephParameters[5]) const;
206  void SetBetheBloch();
208  void SetSelectedSpecies(Int_t ispecies = AliPID::kSPECIES){GetPidCombined()->SetSelectedSpecies(ispecies);};
209  void SetPriorDistribution(AliPID::EParticleType type,TH1F *prior);
210  void DrawPrior(AliPID::EParticleType type);
211  void SetPriorsHistos(TString priorFileName);
212  void SetUpCombinedPID();
213  void SetUseCombined(Bool_t useCombined=kTRUE) {fUseCombined=useCombined;}
214  void SetUseDefaultPriors(Bool_t defaultP) {fDefaultPriors=defaultP;}
215  Int_t ApplyPidTPCRaw(AliAODTrack *track,Int_t specie) const;
216  Int_t ApplyPidTOFRaw(AliAODTrack *track,Int_t specie) const;
217  Int_t ApplyPidITSRaw(AliAODTrack *track,Int_t specie) const;
218  Int_t ApplyTOFCompatibilityBand(AliAODTrack *track,Int_t specie) const;
219 
220  void PrintAll() const;
221 
223  void SetIdBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TH1F *min, TH1F *max);
224  void SetIdBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TF1 *min, TF1 *max);
225  void SetCompBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TH1F *min, TH1F *max);
226  void SetCompBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TF1 *min, TF1 *max);
227  Bool_t CheckDetectorPIDStatus(AliPIDResponse::EDetector detector, AliAODTrack *track);
228  Float_t NumberOfSigmas(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, AliAODTrack *track);
229  Int_t CheckBands(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, AliAODTrack *track);
230  TF1 *GetIdBandMin(AliPID::EParticleType specie, AliPIDResponse::EDetector detector) { return fIdBandMin[((int) specie)][((int) detector)]; }
231  TF1 *GetIdBandMax(AliPID::EParticleType specie, AliPIDResponse::EDetector detector) { return fIdBandMax[((int) specie)][((int) detector)]; }
232  TF1 *GetCompBandMin(AliPID::EParticleType specie, AliPIDResponse::EDetector detector) { return fCompBandMin[((int) specie)][((int) detector)]; }
233  TF1 *GetCompBandMax(AliPID::EParticleType specie, AliPIDResponse::EDetector detector) { return fCompBandMax[((int) specie)][((int) detector)]; }
234 
237  void SetIdAsymmetricPID();
238  void SetIdCompAsymmetricPID();
239 
241  void EnableNsigmaTPCDataCorr(Int_t run, Int_t system);
242 
243  //method to get parameters for NsigmaTPC correction
244  static void SetNsigmaTPCDataDrivenCorrection(Int_t run, Int_t system, Int_t &nPbins, Float_t Plims[kMaxPBins+1], Int_t &nEtabins, Float_t absEtalims[kMaxEtaBins+1],
245  vector<vector<Float_t> > &meanNsigmaTPCpion, vector<vector<Float_t> > &meanNsigmaTPCkaon, vector<vector<Float_t> > &meanNsigmaTPCproton,
246  vector<vector<Float_t> > &sigmaNsigmaTPCpion, vector<vector<Float_t> > &sigmaNsigmaTPCkaon, vector<vector<Float_t> > &sigmaNsigmaTPCproton);
247 
248 protected:
249 
250 
251 private:
252 
253  AliAODPidHF& operator=(const AliAODPidHF& pid);
254 
255  void GetNsigmaTPCMeanSigmaData(Float_t &mean, Float_t &sigma, AliPID::EParticleType species, Float_t pTPC, Float_t eta) const;
256 
258  Double_t *fnSigma; // [fnNSigma], sigma for the raw signal PID: 0-2 for TPC, 3 for TOF, 4 for ITS
264  Double_t *fPriors; // [fnPriors], set of priors
267  Double_t *fPLimit; // [fnPLimit], limit of p intervals for asimmetric PID: fPLimit<p[0], fPLimit[0]<p<fPLimit[1], p>fPLimit[1]
284  Double_t *fnSigmaCompat; //[fnNSigmaCompat] 0: n sigma for TPC compatibility band, 1: for TOF
300  AliPIDResponse *fPidResponse;
301  AliPIDCombined* fPidCombined;
302 
303  AliTPCPIDResponse* fTPCResponse;
304 
305  TH1F* fPriorsH[AliPID::kSPECIES];
309 
311  TF1 *fIdBandMin[AliPID::kSPECIES][4];
312  TF1 *fIdBandMax[AliPID::kSPECIES][4];
313  TF1 *fCompBandMin[AliPID::kSPECIES][4];
314  TF1 *fCompBandMax[AliPID::kSPECIES][4];
315 
317  vector<vector<Float_t> > fMeanNsigmaTPCPionData;
318  vector<vector<Float_t> > fMeanNsigmaTPCKaonData;
319  vector<vector<Float_t> > fMeanNsigmaTPCProtonData;
320  vector<vector<Float_t> > fSigmaNsigmaTPCPionData;
321  vector<vector<Float_t> > fSigmaNsigmaTPCKaonData;
322  vector<vector<Float_t> > fSigmaNsigmaTPCProtonData;
327 
329  ClassDef(AliAODPidHF,26);
330 
332 };
333 
334 struct HistFunc {
335  HistFunc(TH1F *f): fHist(f) {}
336  double operator() (double *x, double * ) const {
337  TAxis *axis = fHist->GetXaxis();
338  Int_t bin = axis->FindBin(x[0]);
339  if (x[0] == axis->GetXmax()) {
340  bin = axis->GetNbins();
341  }
342  return fHist->GetBinContent(bin);
343 
344  }
345  TH1F *fHist;
346 };
347 
348 #endif
349 
vector< vector< Float_t > > fSigmaNsigmaTPCPionData
array of NsigmaTPC proton mean in data for different eta bins
Definition: AliAODPidHF.h:320
void SetIdAsymmetricPID()
Double_t GetnSigmaCompatTOF() const
Definition: AliAODPidHF.h:169
void SetTPCnSigmaRangeForKaons(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:81
void SetPriorsHistos(TString priorFileName)
Int_t fnNSigmaCompat
upper nsigma TOF (for fUseAsymTOF)
Definition: AliAODPidHF.h:283
void SetTOFnSigmaRangeForKaons(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:85
void SetAsym(Bool_t asym)
Definition: AliAODPidHF.h:101
Double_t fLownSigmaTOF
flag for using asymmetrig nSigmaCut in TOF for fMatch==1
Definition: AliAODPidHF.h:279
Bool_t fppLowEn2011
MC for low energy MC.
Definition: AliAODPidHF.h:294
double Double_t
Definition: External.C:58
void SetKaonPriorHisto(TH1F *histo)
Definition: AliAODPidHF.h:132
Bool_t fUseCombined
detectors to be involved for combined PID
Definition: AliAODPidHF.h:307
vector< vector< Float_t > > fMeanNsigmaTPCProtonData
array of NsigmaTPC kaon mean in data for different eta bins
Definition: AliAODPidHF.h:319
Bool_t CheckITSPIDStatus(AliAODTrack *track) const
Bool_t IsTOFPiKexcluded(AliAODTrack *track, Double_t nsigmaK)
general method to perform PID using raw signals
Double_t GetPCompatTOF() const
Definition: AliAODPidHF.h:167
void GetPriors(Double_t *priors) const
Definition: AliAODPidHF.h:151
Double_t fPtThresholdTPC
old PID method implemented
Definition: AliAODPidHF.h:298
Int_t GetnSigmaTOF(AliAODTrack *track, Int_t species, Double_t &sigma) const
void SetTRD(Bool_t trd)
Definition: AliAODPidHF.h:110
Bool_t GetITS() const
Definition: AliAODPidHF.h:156
TF1 * GetCompBandMin(AliPID::EParticleType specie, AliPIDResponse::EDetector detector)
Definition: AliAODPidHF.h:232
void SetForceTOFforKaons(Bool_t forceTOF)
Definition: AliAODPidHF.h:112
Double_t * fPLimit
limit of p intervals for asimmetric PID: fPLimit<p[0], fPLimit[0]<p<fPLimit[1], p>fPLimit[1] ...
Definition: AliAODPidHF.h:268
Int_t RawSignalPID(AliAODTrack *track, TString detector) const
void SetTPCnSigmaRangeForProtons(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:89
void SetSigmaForTPC(Double_t *sigma)
Definition: AliAODPidHF.h:56
Double_t GetSigma(Int_t idet) const
Definition: AliAODPidHF.h:147
AliTPCPIDResponse * fTPCResponse
! TPC response
Definition: AliAODPidHF.h:303
Bool_t IsKaonRaw(AliAODTrack *track, TString detector) const
Double_t fMaxnSigmaCombined[3]
Definition: AliAODPidHF.h:286
Bool_t fMCLowEn2011
real data with one pad clusters
Definition: AliAODPidHF.h:293
Float_t NumberOfSigmas(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, AliAODTrack *track)
Bool_t GetUseCombined()
Definition: AliAODPidHF.h:178
TF1 * GetIdBandMin(AliPID::EParticleType specie, AliPIDResponse::EDetector detector)
Definition: AliAODPidHF.h:230
Int_t GetnSigmaTPC(AliAODTrack *track, Int_t species, Double_t &sigma) const
Bool_t CheckTOFPIDStatus(AliAODTrack *track) const
void GetNsigmaTPCMeanSigmaData(Float_t &mean, Float_t &sigma, AliPID::EParticleType species, Float_t pTPC, Float_t eta) const
ECombDetectors GetCombDetectors() const
Definition: AliAODPidHF.h:175
void SetSigmaForTOF(Double_t sigma)
Definition: AliAODPidHF.h:59
Bool_t CheckTPCPIDStatus(AliAODTrack *track) const
void SetMClowenpp2011(Bool_t mc)
Definition: AliAODPidHF.h:115
void SetPriors(Double_t *priors, Int_t npriors)
static void SetNsigmaTPCDataDrivenCorrection(Int_t run, Int_t system, Int_t &nPbins, Float_t Plims[kMaxPBins+1], Int_t &nEtabins, Float_t absEtalims[kMaxEtaBins+1], vector< vector< Float_t > > &meanNsigmaTPCpion, vector< vector< Float_t > > &meanNsigmaTPCkaon, vector< vector< Float_t > > &meanNsigmaTPCproton, vector< vector< Float_t > > &sigmaNsigmaTPCpion, vector< vector< Float_t > > &sigmaNsigmaTPCkaon, vector< vector< Float_t > > &sigmaNsigmaTPCproton)
TF1 * fIdBandMax[AliPID::kSPECIES][4]
Definition: AliAODPidHF.h:312
void SetPCompatTOF(Double_t pTOF)
Definition: AliAODPidHF.h:119
Bool_t GetTOFdecide() const
Definition: AliAODPidHF.h:166
Bool_t IsElectronRaw(AliAODTrack *track, TString detector) const
TF1 * fIdBandMin[AliPID::kSPECIES][4]
use default priors for combined PID
Definition: AliAODPidHF.h:311
Bool_t fMC
max. of nSigma range for pi,K,p in TOF (match==5)
Definition: AliAODPidHF.h:291
Bool_t GetppLowEn2011() const
Definition: AliAODPidHF.h:163
void SetTofSigma(Double_t sigma)
Definition: AliAODPidHF.h:61
void SetppLowEn2011(Bool_t opt)
Definition: AliAODPidHF.h:117
Bool_t fCompat
force TOF for kaons in mode fMatch==5
Definition: AliAODPidHF.h:276
Int_t fnNSigma
Definition: AliAODPidHF.h:257
void SetMinNClustersTPCPID(Int_t minc)
Definition: AliAODPidHF.h:66
Bool_t fITS
switch to include or exclude TOF
Definition: AliAODPidHF.h:272
Int_t ApplyPidTPCRaw(AliAODTrack *track, Int_t specie) const
Double_t fMaxnSigmaTOF[3]
min. of nSigma range for pi,K,p in TOF (match==5)
Definition: AliAODPidHF.h:290
Int_t ApplyPidITSRaw(AliAODTrack *track, Int_t specie) const
void SetCompBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TH1F *min, TH1F *max)
Double_t GetPtThresholdTPC()
Definition: AliAODPidHF.h:171
Double_t GetMaxTrackMomForCombinedPID()
Definition: AliAODPidHF.h:172
TH1F * fPriorsH[AliPID::kSPECIES]
Definition: AliAODPidHF.h:305
Bool_t GetTRD() const
Definition: AliAODPidHF.h:157
Int_t MatchTPCTOFMin(AliAODTrack *track, Int_t specie)
PID nSigma strategy closer to the Bayesian approach with Max. prob.
void PrintAll() const
Double_t fMaxTrackMomForCombinedPID
pT threshold to use TPC PID
Definition: AliAODPidHF.h:299
Double_t fMinnSigmaTOF[3]
max. of nSigma range for pi,K,p in TPC (match==5)
Definition: AliAODPidHF.h:289
Bool_t GetOldPid()
Definition: AliAODPidHF.h:170
Double_t fMinnSigmaTPC[3]
nSigma cut for pi,K,p (TPC^2+TOF^2)
Definition: AliAODPidHF.h:287
TF1 * fCompBandMin[AliPID::kSPECIES][4]
Definition: AliAODPidHF.h:313
void SetTOF(Bool_t tof)
Definition: AliAODPidHF.h:108
void SetTPCnSigmaRangeForPions(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:73
TF1 * GetIdBandMax(AliPID::EParticleType specie, AliPIDResponse::EDetector detector)
Definition: AliAODPidHF.h:231
Int_t fNEtabinsNsigmaTPCDataCorr
array of eta limits for data-driven NsigmaTPC correction
Definition: AliAODPidHF.h:326
Bool_t GetForceTOFforKaons() const
Definition: AliAODPidHF.h:159
Int_t fnPLimit
Definition: AliAODPidHF.h:266
void SetUseCombined(Bool_t useCombined=kTRUE)
Definition: AliAODPidHF.h:213
Bool_t fOnePad
MC(kTRUE) or real data (kFALSE, default option)
Definition: AliAODPidHF.h:292
void SetUseDefaultPriors(Bool_t defaultP)
Definition: AliAODPidHF.h:214
Double_t * sigma
void SetIdBand(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, TH1F *min, TH1F *max)
Assymetric PID using histograms.
void SetCombDetectors(ECombDetectors pidComb)
Definition: AliAODPidHF.h:125
Double_t fTOFSigma
Definition: AliAODPidHF.h:260
Int_t CheckBands(AliPID::EParticleType specie, AliPIDResponse::EDetector detector, AliAODTrack *track)
void SetTOFnSigmaRangeForProtons(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:93
AliPIDResponse * fPidResponse
momentum threshold to use PID
Definition: AliAODPidHF.h:300
void DrawPrior(AliPID::EParticleType type)
Double_t * fPriors
set of priors
Definition: AliAODPidHF.h:265
int Int_t
Definition: External.C:63
virtual ~AliAODPidHF()
unsigned int UInt_t
Definition: External.C:33
AliPIDCombined * GetPidCombined() const
Definition: AliAODPidHF.h:174
TH1F * fHist
Definition: AliAODPidHF.h:345
float Float_t
Definition: External.C:68
Int_t fNPbinsNsigmaTPCDataCorr
array of p limits for data-driven NsigmaTPC correction
Definition: AliAODPidHF.h:324
void GetTPCBetheBlochParams(Double_t alephParameters[5]) const
void SetPbPb(Bool_t pbpb)
Definition: AliAODPidHF.h:118
void SetSigmaForITS(Double_t sigma)
Definition: AliAODPidHF.h:60
Bool_t fOldPid
real data PbPb
Definition: AliAODPidHF.h:297
void SetPtThresholdTPC(Double_t ptThresholdTPC)
Definition: AliAODPidHF.h:122
void SetShiftedAsymmetricPID()
Some suggested asymmetric PID.
Bool_t fDefaultPriors
detectors to be involved for combined PID
Definition: AliAODPidHF.h:308
void SetSigma(Int_t idet, Double_t sigma)
Definition: AliAODPidHF.h:55
Bool_t GetAsym() const
Definition: AliAODPidHF.h:153
static const int kMaxPBins
Definition: AliAODPidHF.h:45
Bool_t CheckStatus(AliAODTrack *track, TString detectors) const
SystemForNsigmaDataCorr
Definition: AliAODPidHF.h:37
Double_t GetTofSigma() const
Definition: AliAODPidHF.h:148
Double_t fPCompatTOF
compatibility region : useful only if fMatch=1
Definition: AliAODPidHF.h:277
Bool_t IsExcluded(AliAODTrack *track, Int_t labelTrack, Double_t nsigmaCut, TString detector)
AliAODPidHF & operator=(const AliAODPidHF &pid)
Bool_t fForceTOFforKaons
switch to combine the info from more detectors: 1 = || , 2 = &, 3 = p region
Definition: AliAODPidHF.h:275
void SetCombinednSigmaCutForPiKP(Float_t sigpi, Float_t sigk, Float_t sigp)
Definition: AliAODPidHF.h:68
void SetPionPriorHisto(TH1F *histo)
Definition: AliAODPidHF.h:128
void SetUseAsymmnSigmaTOF(Double_t nsmin, Double_t nsmax, Double_t nscompmin, Double_t nscompmax)
Definition: AliAODPidHF.h:102
Bool_t GetTPC() const
Definition: AliAODPidHF.h:154
void GetPLimit(Double_t *plim) const
Definition: AliAODPidHF.h:152
Bool_t fTOF
switch to include or exclude TPC
Definition: AliAODPidHF.h:271
void SetCutOnTOFmismatchProb(Double_t cut=0.01)
Definition: AliAODPidHF.h:63
void SetUpCombinedPID()
Bool_t GetTOF() const
Definition: AliAODPidHF.h:155
Bool_t GetMC() const
Definition: AliAODPidHF.h:161
Int_t MakeRawPid(AliAODTrack *track, Int_t specie)
AliPIDResponse * GetPidResponse() const
Definition: AliAODPidHF.h:173
Int_t fMatch
switch to include or exclude TRD
Definition: AliAODPidHF.h:274
Int_t MatchTPCTOF(AliAODTrack *track, Int_t specie)
void SetIdCompAsymmetricPID()
void SetSigma(Double_t *sigma)
Definition: AliAODPidHF.h:52
void SetSigmaForTOFCompat(Double_t sigma)
Definition: AliAODPidHF.h:58
void SetSigmaForTPCCompat(Double_t sigma)
Definition: AliAODPidHF.h:57
void SetMaxTrackMomForCombinedPID(Double_t mom)
Definition: AliAODPidHF.h:123
Bool_t GetDefaultPriors()
Definition: AliAODPidHF.h:179
Int_t fnPriors
Minimum TPC PID clusters cut.
Definition: AliAODPidHF.h:263
Bool_t fTOFdecide
real data PbPb
Definition: AliAODPidHF.h:296
void SetProtonPriorHisto(TH1F *histo)
Definition: AliAODPidHF.h:136
Int_t ApplyPidTOFRaw(AliAODTrack *track, Int_t specie) const
void SetPriorDistribution(AliPID::EParticleType type, TH1F *prior)
void SetSelectedSpecies(Int_t ispecies=AliPID::kSPECIES)
method for AliPIDCombined object
Definition: AliAODPidHF.h:208
Double_t fMaxnSigmaTPC[3]
min. of nSigma range for pi,K,p in TPC (match==5)
Definition: AliAODPidHF.h:288
void SetBetheBloch()
UInt_t fMinNClustersTPCPID
Cut of TOF mismatch probability.
Definition: AliAODPidHF.h:262
Double_t GetnSigmaCompatTPC() const
Definition: AliAODPidHF.h:168
Double_t fLownSigmaCompatTOF
upper nsigma TOF (for fUseAsymTOF)
Definition: AliAODPidHF.h:281
vector< vector< Float_t > > fMeanNsigmaTPCKaonData
array of NsigmaTPC pion mean in data for different eta bins
Definition: AliAODPidHF.h:318
Int_t GetnSigmaITS(AliAODTrack *track, Int_t species, Double_t &sigma) const
AliPIDCombined * fPidCombined
! combined PID object
Definition: AliAODPidHF.h:301
TF1 * GetCompBandMax(AliPID::EParticleType specie, AliPIDResponse::EDetector detector)
Definition: AliAODPidHF.h:233
Bool_t IsPionRaw(AliAODTrack *track, TString detector) const
Bool_t GetOnePad() const
Definition: AliAODPidHF.h:162
void SetMC(Bool_t mc)
Definition: AliAODPidHF.h:114
Bool_t CheckDetectorPIDStatus(AliPIDResponse::EDetector detector, AliAODTrack *track)
Int_t ApplyTOFCompatibilityBand(AliAODTrack *track, Int_t specie) const
Double_t * fnSigma
sigma for the raw signal PID: 0-2 for TPC, 3 for TOF, 4 for ITS
Definition: AliAODPidHF.h:259
Bool_t fTPC
asimmetric PID required
Definition: AliAODPidHF.h:270
Bool_t fUseAsymTOF
compatibility p limit for TOF
Definition: AliAODPidHF.h:278
Bool_t GetMCLowEn2011() const
Definition: AliAODPidHF.h:164
Bool_t GetCompat() const
Definition: AliAODPidHF.h:160
void SetOldPid(Bool_t oldPid)
Definition: AliAODPidHF.h:121
Double_t fUpnSigmaCompatTOF
lower nsigma TOF (for fUseAsymTOF)
Definition: AliAODPidHF.h:282
Bool_t fTRD
switch to include or exclude ITS
Definition: AliAODPidHF.h:273
Bool_t GetPbPb() const
Definition: AliAODPidHF.h:165
vector< vector< Float_t > > fMeanNsigmaTPCPionData
flag to enable data-driven NsigmaTPC correction
Definition: AliAODPidHF.h:317
Int_t GetMatch() const
Definition: AliAODPidHF.h:158
static const int kMaxEtaBins
Definition: AliAODPidHF.h:44
Float_t fPlimitsNsigmaTPCDataCorr[kMaxPBins+1]
array of NsigmaTPC proton mean in data for different eta bins
Definition: AliAODPidHF.h:323
Float_t fEtalimitsNsigmaTPCDataCorr[kMaxEtaBins+1]
number of p bins for data-driven NsigmaTPC correction
Definition: AliAODPidHF.h:325
void DisableCutOnTOFmismatchProb()
Definition: AliAODPidHF.h:64
void SetITS(Bool_t its)
Definition: AliAODPidHF.h:109
void EnableNsigmaTPCDataCorr(Int_t run, Int_t system)
Set Nsigma data-driven correction.
vector< vector< Float_t > > fSigmaNsigmaTPCKaonData
array of NsigmaTPC pion mean in data for different eta bins
Definition: AliAODPidHF.h:321
void SetTOFdecide(Bool_t tOFdecide)
Definition: AliAODPidHF.h:120
void SetMatch(Int_t match)
Definition: AliAODPidHF.h:111
void SetPLimit(Double_t *plim, Int_t npLim)
HistFunc(TH1F *f)
Definition: AliAODPidHF.h:335
Bool_t TPCRawAsym(AliAODTrack *track, Int_t specie) const
void SetTPC(Bool_t tpc)
Definition: AliAODPidHF.h:107
Bool_t fApplyNsigmaTPCDataCorr
Definition: AliAODPidHF.h:316
bool Bool_t
Definition: External.C:53
Bool_t fAsym
Definition: AliAODPidHF.h:269
void SetCompat(Bool_t comp)
Definition: AliAODPidHF.h:113
Bool_t fPbPb
Data for low energy pp 2011.
Definition: AliAODPidHF.h:295
Double_t fUpnSigmaTOF
lower nsigma TOF (for fUseAsymTOF)
Definition: AliAODPidHF.h:280
ECombDetectors fCombDetectors
priors histos
Definition: AliAODPidHF.h:306
void CombinedProbability(AliAODTrack *track, Bool_t *type) const
Bool_t IsProtonRaw(AliAODTrack *track, TString detector) const
Double_t * fnSigmaCompat
0: n sigma for TPC compatibility band, 1: for TOF
Definition: AliAODPidHF.h:285
vector< vector< Float_t > > fSigmaNsigmaTPCProtonData
array of NsigmaTPC kaon mean in data for different eta bins
Definition: AliAODPidHF.h:322
Double_t fCutTOFmismatch
TOF precision.
Definition: AliAODPidHF.h:261
Bool_t CheckTRDPIDStatus(AliAODTrack *track) const
void SetOnePad(Bool_t onepad)
Definition: AliAODPidHF.h:116
TF1 * fCompBandMax[AliPID::kSPECIES][4]
Definition: AliAODPidHF.h:314
void SetTOFnSigmaRangeForPions(Float_t smin, Float_t smax)
Definition: AliAODPidHF.h:77
void SetPidResponse(AliPIDResponse *pidResp)
Definition: AliAODPidHF.h:124