]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/macros/configBalanceFunctionAnalysisEventMixing.C
end-of-line normalization
[u/mrichter/AliRoot.git] / PWGCF / EBYE / macros / configBalanceFunctionAnalysisEventMixing.C
1 //__________________________________________________//
2 AliBalanceEventMixing *GetBalanceFunctionObject(const char* analysisLevel = "ESD", 
3                                                 const char* centralityName = 0x0,
4                                                 Double_t centrMin = 0.,
5                                                 Double_t centrMax = 100.,
6                                                 Bool_t bShuffle = kFALSE,
7                                                 Bool_t bHBTcut = kFALSE,
8                                                 Bool_t bConversionCut = kFALSE) {
9   //Function to setup the AliBalanceEventMixing object and return it
10   AliBalanceEventMixing *gBalance = new AliBalanceEventMixing();
11   gBalance->SetAnalysisLevel(analysisLevel);
12   gBalance->SetShuffle(bShuffle);
13   gBalance->SetHBTcut(bHBTcut);
14   gBalance->SetConversionCut(bConversionCut);
15   if(centralityName) gBalance->SetCentralityIdentifier(centralityName);
16   gBalance->SetCentralityInterval(centrMin,centrMax);
17
18   //Set all analyses separately
19   //Rapidity
20   gBalance->SetInterval(AliBalanceEventMixing::kRapidity,-0.8,0.8,64,0.0,1.6);  
21   //Eta
22   gBalance->SetInterval(AliBalanceEventMixing::kEta,-0.8,0.8,64,0.0,1.6);
23   //Qlong
24   gBalance->SetInterval(AliBalanceEventMixing::kQlong,-1,1,100,0.0,2.0);
25   //Qout
26   gBalance->SetInterval(AliBalanceEventMixing::kQout,-1,1,100,0.0,2.0);
27   //Qside
28   gBalance->SetInterval(AliBalanceEventMixing::kQside,-1,1,100,0.0,2.0);
29   //Qinv
30   gBalance->SetInterval(AliBalanceEventMixing::kQinv,-1,1,100,0.0,2.0);
31   //Phi
32   gBalance->SetInterval(AliBalanceEventMixing::kPhi,0.,360.,90,0.,180.0);
33
34   //Init the histograms
35   gBalance->InitHistograms();
36   
37   return gBalance;
38 }
39
40 //__________________________________________________//
41 AliESDtrackCuts *GetTrackCutsObject(Double_t ptMin, Double_t ptMax, Double_t etaMin, Double_t etaMax, Double_t maxTPCchi2, Double_t maxDCAz, Double_t maxDCAxy, Int_t minNClustersTPC) {
42
43   // only used for ESDs
44   // Function to setup the AliESDtrackCuts object and return it
45   AliESDtrackCuts *cuts = AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
46   cuts->SetRequireTPCStandAlone(kTRUE); // TPC only cuts!  
47
48   // extra TPC cuts (Syst studies)
49   if(minNClustersTPC != -1)  cuts->SetMinNClustersTPC(minNClustersTPC);
50   else cuts->SetMinNClustersTPC(70); // standard for filter bit 128
51   
52   if(maxTPCchi2 != -1) cuts->SetMaxChi2PerClusterTPC(maxTPCchi2);
53
54   // extra DCA cuts (Syst studies)  
55   if(maxDCAz!=-1 && maxDCAxy != -1){
56     cuts->SetMaxDCAToVertexZ(maxDCAz);
57     cuts->SetMaxDCAToVertexXY(maxDCAxy);
58   }
59
60   cuts->SetPtRange(ptMin,ptMax);
61   cuts->SetEtaRange(etaMin,etaMax);
62   cuts->DefineHistograms(1);
63   //cuts->SaveHistograms("trackCuts");
64
65   return cuts;
66 }
67