2 // This cut implements all the checks done to accept a track as a Kaon
3 // for the PbPb analysis using 2010 runs.
4 // It is based on standard cuts on track quality and nsigma cuts
5 // with respect to the TPC and TOF signals for the PID.
12 #include "AliPIDResponse.h"
13 #include "AliESDpid.h"
14 #include "AliAODpidUtil.h"
15 #include "AliRsnCutPhiRAA.h"
16 #include "AliESDtrackCuts.h"
18 ClassImp(AliRsnCutPhiRAA)
20 //__________________________________________________________________________________________________
21 AliRsnCutPhiRAA::AliRsnCutPhiRAA
23 AliRsnCut(name, AliRsnTarget::kDaughter),
25 fCutQuality(Form("%s_quality", name)),
26 cut1(AliESDtrackCuts::GetStandardITSTPCTrackCuts2011(kTRUE, 1)),
27 cut2(AliESDtrackCuts::GetStandardITSTPCTrackCuts2011(kTRUE, 0)),
28 cut3(AliESDtrackCuts::GetStandardITSTPCTrackCuts2010())
32 // Initialize the contained cuts and sets defaults
36 cut1->SetEtaRange(-0.8, 0.8);
37 cut1->SetPtRange(0.30,1e10);
39 cut2->SetEtaRange(-0.8, 0.8);
40 cut2->SetPtRange(0.30,1e10);
42 cut3->SetEtaRange(-0.8, 0.8);
43 cut3->SetPtRange(0.30,1e10);
49 //__________________________________________________________________________________________________
50 AliRsnCutPhiRAA::AliRsnCutPhiRAA(const AliRsnCutPhiRAA ©) :
53 fCutQuality(copy.fCutQuality),
64 //__________________________________________________________________________________________________
65 AliRsnCutPhiRAA &AliRsnCutPhiRAA::operator=(const AliRsnCutPhiRAA ©)
68 // Assignment operator
71 AliRsnCut::operator=(copy);
75 fCutQuality = copy.fCutQuality;
80 //__________________________________________________________________________________________________
81 Bool_t AliRsnCutPhiRAA::IsSelected(TObject *obj)
88 if (!TargetOK(obj)) return kFALSE;
91 AliVTrack *track = fDaughter->Ref2Vtrack();
93 if (!fDaughter->GetRef()) AliWarning("NULL ref");
97 // initialize check variables
98 Bool_t accept = kFALSE;
100 // decide cut result depending on mode
103 fCutQuality.SetESDtrackCuts(cut3);
104 if (fCutQuality.IsSelected(obj)) accept = kTRUE;
105 ::Info("AnalysisSetup", "ESD cut 2010!!! ");
108 fCutQuality.SetESDtrackCuts(cut2);
109 if (fCutQuality.IsSelected(obj)) accept = kTRUE;
112 fCutQuality.SetESDtrackCuts(cut1);
113 if (fCutQuality.IsSelected(obj)) accept = kTRUE;
114 ::Info("AnalysisSetup", "ESD cut 2011 ");
117 cut1->SetPtRange(0.50,1e10);
118 fCutQuality.SetESDtrackCuts(cut1);
119 if (fCutQuality.IsSelected(obj)) accept = kTRUE;
120 ::Info("AnalysisSetup", "ESD cut 2011 pT > 0.5 GeV/c");
123 cut1->SetPtRange(0.75,1e10);
124 fCutQuality.SetESDtrackCuts(cut1);
125 if (fCutQuality.IsSelected(obj)) accept = kTRUE;
126 ::Info("AnalysisSetup", "ESD cut 2011 pT > 0.75 GeV/c ");
129 AliDebugClass(1, Form("[%s] Wrong mode", GetName()));
133 AliDebugClass(1, Form("[%s] Track %s", GetName(), (accept ? "accepted" : "rejected")));