]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG0/CreateStandardCuts.C
nan check (needed if class is used in standalone root)
[u/mrichter/AliRoot.git] / PWG0 / CreateStandardCuts.C
CommitLineData
770a1f1d 1/* $Id: CreateCuts.C,v 1.5 2008/01/11 08:28:52 jgrosseo Exp $ */
2
18d21f09 3// this macro creates the track cuts used in this analysis
770a1f1d 4
10fd0641 5AliESDtrackCuts* CreateTrackCuts(AliPWG0Helper::AnalysisMode analysisMode, Bool_t hists = kTRUE, Float_t ptMin = 0, Float_t etacut =1e10)
770a1f1d 6{
18d21f09 7 AliESDtrackCuts* esdTrackCuts = 0;
a7f69e56 8
18d21f09 9 // see https://twiki.cern.ch/twiki/bin/view/ALICE/SelectionOfPrimaryTracksForPp2009DataAnalysis
10
11 if (analysisMode & AliPWG0Helper::kTPC)
770a1f1d 12 {
18d21f09 13 esdTrackCuts = new AliESDtrackCuts("AliESDtrackCuts");
65f11d60 14
18d21f09 15 TString tag("TPC-only tracking");
770a1f1d 16
69b09e3b 17 esdTrackCuts->SetMaxDCAToVertexZ(3.2);
18 esdTrackCuts->SetMaxDCAToVertexXY(2.4);
19 esdTrackCuts->SetDCAToVertex2D(kTRUE);
18d21f09 20
21 esdTrackCuts->SetRequireTPCRefit(kTRUE);
22 esdTrackCuts->SetAcceptKinkDaughters(kFALSE);
23 esdTrackCuts->SetMinNClustersTPC(70);
24 esdTrackCuts->SetMaxChi2PerClusterTPC(4);
65f11d60 25 }
26
2701e5ae 27 if (analysisMode & AliPWG0Helper::kTPCITS);
18d21f09 28 {
29 esdTrackCuts = AliESDtrackCuts::GetStandardITSTPCTrackCuts2009(kTRUE);
10fd0641 30 esdTrackCuts->SetPtRange(ptMin); // adding pt cut
31 esdTrackCuts->SetEtaRange(-etacut,etacut);
18d21f09 32 TString tag("Global tracking");
33 }
2701e5ae 34 if ( analysisMode & AliPWG0Helper::kTPCSPD) {
35
36 esdTrackCuts = AliESDtrackCuts::GetStandardITSTPCTrackCuts2009(kFALSE);
37 TString tag("Global tracking+tracklets");
38
39 }
770a1f1d 40
18d21f09 41 if (hists)
42 esdTrackCuts->DefineHistograms(1);
43
44 // cuts for data without field
45 if (!(analysisMode & AliPWG0Helper::kFieldOn))
46 {
47 tag += " without field";
48 }
770a1f1d 49
50 Printf("Created track cuts for: %s", tag.Data());
51
52 return esdTrackCuts;
53}
a7f69e56 54