1 AliProtonAnalysisBase *GetProtonAnalysisBaseObject(const char* analysisLevel = "ESD",
\r
2 Bool_t kAnalyzeMC = kTRUE,
\r
3 const char* esdAnalysisType = "Hybrid",
\r
4 const char* pidMode = "Bayesian") {
\r
5 //Function to setup the AliProtonAnalysisBase object and return it
\r
6 AliProtonAnalysisBase *baseAnalysis = new AliProtonAnalysisBase();
\r
7 //baseAnalysis->SetDebugMode();
\r
8 baseAnalysis->SetAnalysisLevel(analysisLevel);
\r
9 if(analysisLevel == "ESD") {
\r
11 baseAnalysis->SetTriggerMode(AliProtonAnalysisBase::kMB2);
\r
12 //use the offline trigger
\r
13 baseAnalysis->OfflineTriggerInit();
\r
15 baseAnalysis->SetMinTPCClusters(80);
\r
16 baseAnalysis->SetMaxChi2PerTPCCluster(3.5);
\r
17 baseAnalysis->SetMaxCov11(2.0);
\r
18 baseAnalysis->SetMaxCov22(2.0);
\r
19 baseAnalysis->SetMaxCov33(0.5);
\r
20 baseAnalysis->SetMaxCov44(0.5);
\r
21 baseAnalysis->SetMaxCov55(2.0);
\r
22 baseAnalysis->SetMinTPCdEdxPoints(80);
\r
23 switch(esdAnalysisType) {
\r
25 baseAnalysis->SetAnalysisMode(AliProtonAnalysisBase::kTPC);
\r
26 baseAnalysis->SetPhaseSpace(10, -0.5, 0.5, 16, 0.5, 0.9);
\r
27 baseAnalysis->SetTPCpid();
\r
28 baseAnalysis->SetMaxSigmaToVertexTPC(2.0);
\r
29 //baseAnalysis->SetMaxDCAXYTPC(1.5);
\r
30 //baseAnalysis->SetMaxDCAZTPC(1.5);
\r
33 baseAnalysis->SetAnalysisMode(AliProtonAnalysisBase::kHybrid);
\r
34 baseAnalysis->SetPhaseSpace(9, -0.9, 0.9, 5, 0.4, 0.9);
\r
35 //baseAnalysis->SetPhaseSpace(18, -0.9, 0.9, 32, 0.5, 1.3);
\r
36 baseAnalysis->SetTPCpid();
\r
37 baseAnalysis->SetMaxSigmaToVertex(3.0);
\r
38 /*baseAnalysis->SetMaxDCAXY(3.0);
\r
39 baseAnalysis->SetMaxDCAZ(3.0);*/
\r
40 //baseAnalysis->SetPointOnITSLayer6();
\r
41 //baseAnalysis->SetPointOnITSLayer5();
\r
42 //baseAnalysis->SetPointOnITSLayer4();
\r
43 //baseAnalysis->SetPointOnITSLayer3();
\r
44 //baseAnalysis->SetPointOnITSLayer2();
\r
45 //baseAnalysis->SetPointOnITSLayer1();
\r
46 baseAnalysis->SetMinITSClusters(2);
\r
49 baseAnalysis->SetAnalysisMode(AliProtonAnalysisBase::kGlobal);
\r
50 baseAnalysis->SetPhaseSpace(20, -1.0, 1.0, 48, 0.3, 1.5);
\r
51 baseAnalysis->SetMaxSigmaToVertex(2.0);
\r
52 //baseAnalysis->SetMaxDCAXY(2.0);
\r
53 //baseAnalysis->SetMaxDCAZ(2.0);
\r
54 baseAnalysis->SetTPCRefit();
\r
55 baseAnalysis->SetPointOnITSLayer1();
\r
56 baseAnalysis->SetPointOnITSLayer2();
\r
57 //baseAnalysis->SetPointOnITSLayer3();
\r
58 //baseAnalysis->SetPointOnITSLayer4();
\r
59 baseAnalysis->SetPointOnITSLayer5();
\r
60 baseAnalysis->SetPointOnITSLayer6();
\r
61 baseAnalysis->SetMinITSClusters(5);
\r
62 baseAnalysis->SetITSRefit();
\r
63 baseAnalysis->SetESDpid();
\r
64 baseAnalysis->SetTOFpid();
\r
69 baseAnalysis->SetAcceptedVertexDiamond(2.,2.,15.);
\r
70 baseAnalysis->SetMinNumOfContributors(3);
\r
71 baseAnalysis->SetEtaMode();
\r
74 baseAnalysis->SetPIDMode(AliProtonAnalysisBase::kBayesian);
\r
75 //Momentum dependent priors
\r
76 /*TFile *f = TFile::Open("$ALICE_ROOT/PWG2/data/PriorProbabilities.root ");
\r
77 TF1 *fitElectrons = (TF1 *)f->Get("fitElectrons");
\r
78 TF1 *fitMuons = (TF1 *)f->Get("fitMuons");
\r
79 TF1 *fitPions = (TF1 *)f->Get("fitPions");
\r
80 TF1 *fitKaons = (TF1 *)f->Get("fitKaons");
\r
81 TF1 *fitProtons = (TF1 *)f->Get("fitProtons");
\r
82 baseAnalysis->SetPriorProbabilityFunctions(fitElectrons,
\r
87 //Fixed prior probabilities
\r
88 Double_t partFrac[5] = {0.01, 0.01, 0.85, 0.10, 0.05};
\r
89 if(!baseAnalysis->IsPriorProbabilityFunctionUsed())
\r
90 baseAnalysis->SetPriorProbabilities(partFrac);
\r
93 baseAnalysis->SetPIDMode(AliProtonAnalysisBase::kRatio);
\r
96 baseAnalysis->SetPIDMode(AliProtonAnalysisBase::kSigma1);
\r
97 baseAnalysis->SetNSigma(4);
\r
98 baseAnalysis->SetdEdxBandInfo("$ALICE_ROOT/PWG2/data/protonsdEdxInfo.dat");
\r
101 baseAnalysis->SetPIDMode(AliProtonAnalysisBase::kSigma2);
\r
102 baseAnalysis->SetNSigma(3);
\r
103 baseAnalysis->SetdEdxBandInfo("$ALICE_ROOT/PWG2/data/protonsdEdxInfo.dat");
\r
109 if(analysisLevel == "MC")
\r
110 baseAnalysis->SetPhaseSpace(10, -0.5, 0.5, 16, 0.5, 0.9);
\r
111 if(analysisLevel == "AOD")
\r
112 baseAnalysis->SetPhaseSpace(10, -0.5, 0.5, 16, 0.5, 0.9);
\r
114 return baseAnalysis;
\r