]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/hfe/macros/configs/PbPb/ConfigHFECalSys.C
Fix MC efficiencies more
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / PbPb / ConfigHFECalSys.C
1 AliAnalysisTaskHFECal* ConfigHFECalSys(Bool_t useMC, int TPCclust, int TPCclustPID, int Nits, int ITSstat, int QAhist){\r
2   //\r
3   // HFE standard task configuration\r
4   //\r
5 \r
6   Bool_t kAnalyseTaggedTracks = kTRUE;\r
7   \r
8   AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsEMCAL","HFE Standard Cuts");\r
9   hfecuts->CreateStandardCuts();\r
10   hfecuts->SetMinNClustersTPC(TPCclust);\r
11   hfecuts->SetMinNClustersTPCPID(TPCclustPID);\r
12   hfecuts->SetMinRatioTPCclusters(0.6);\r
13   hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);\r
14   hfecuts->SetMinNClustersITS(Nits);\r
15   if(ITSstat==0)hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny);\r
16   if(ITSstat==1)hfecuts->SetCutITSpixel(AliHFEextraCuts::kFirst);\r
17   hfecuts->SetCheckITSLayerStatus(kFALSE);\r
18   hfecuts->SetVertexRange(10.);\r
19   hfecuts->SetTOFPIDStep(kFALSE);\r
20   hfecuts->SetPtRange(2, 50);\r
21   hfecuts->SetMaxImpactParam(3.,3.);\r
22   \r
23   AliAnalysisTaskHFECal *task = new AliAnalysisTaskHFECal("HFEanalysisEMCal");\r
24   printf("task ------------------------ %p\n ", task);\r
25   task->SetHFECuts(hfecuts);\r
26   task->SetInvariantMassCut(0.05);\r
27   printf("<<<<<< ------------------ QA status %d",QAhist);\r
28   task->SetQAHist(QAhist);\r
29 \r
30   // Define PID\r
31   AliHFEpid *pid = task->GetPID();\r
32   if(useMC) pid->SetHasMCData(kTRUE);\r
33   pid->AddDetector("TPC", 0);\r
34   pid->AddDetector("EMCAL", 1);\r
35 \r
36   Double_t params[4];\r
37   char *cutmodel;\r
38   if(useMC){\r
39           // Monte-Carlo needs modelling of the falling mean with momentum at low momentum\r
40           // for high momentum it is consistent with a flat -0.94\r
41           //cutmodel = "[0]*TMath::Exp([1]*x) + [2] + [3]*x";\r
42           //Double_t paramsMC[4] = {0.7174, -1.588, -0.9395, 0.0246};\r
43           //for(int ipar = 0; ipar < 4; ipar++) params[ipar] = paramsMC[ipar];\r
44           cutmodel = "pol0";\r
45           params[0] = -1.0; //sigma min\r
46   } else {\r
47           // Data is consistent with a flat 0.12\r
48           cutmodel = "pol0";\r
49           //params[0] = -0.0015;\r
50           //params[0] = -3.0;\r
51           //params[0] = -0.05; //sigma min\r
52           params[0] = -1.0; //sigma min\r
53   }\r
54   //pid->ConfigureTPCdefaultCut(cutmodel, params,3.0); \r
55   for(Int_t a=0;a<11;a++)pid->ConfigureTPCcentralityCut(a,cutmodel,params,3.0);\r
56   \r
57 \r
58   // change E/p cuts\r
59   AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);\r
60   emcpid->SetEoPMax(1.3);\r
61   emcpid->SetEoPMim(0.9);\r
62 \r
63   printf("*************************************\n");\r
64   printf("Configuring standard Task:\n");\r
65 //  task->PrintStatus();\r
66   pid->PrintStatus();\r
67   printf("*************************************\n"); \r
68   return task;\r
69 }\r