]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/hfe/macros/configs/PbPb/ConfigHFEElecHadronCorrelPbPb.C
4e5a5dc27d59d26f1b9c4bb2963327ede8763895
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / PbPb / ConfigHFEElecHadronCorrelPbPb.C
1 AliAnalysisTaskElecHadronCorrel* ConfigHFEElecHadronCorrelPbPb(Bool_t useMC,\r
2                                                                Bool_t TrigSelCen = kTRUE,\r
3                                                                Double_t CentMin = 0,\r
4                                                                Double_t CentMax = 7,\r
5                                                                Double_t TPCNsigMinE = -2,\r
6                                                                Double_t TPCNsigMaxE = 2,\r
7                                                                Double_t TPCNsigMinH = -10,\r
8                                                                Double_t TPCNsigMaxH = -3.5,\r
9                                                                Double_t SSM02Min = 0.03,  \r
10                                                                Double_t SSM02Max = 0.5,\r
11                                                                Double_t SSM20Min = 0.03,  \r
12                                                                Double_t SSM20Max = 0.3,\r
13                                                                Double_t Disp = 1,\r
14                                                                Double_t EovPMin = 0.8,    \r
15                                                                Double_t EovPMax = 1.2,    \r
16                                                                Double_t InvM = 0.1,\r
17                                                                TString ContNameExt = "Central",\r
18                                                                TString TaskName="hfeCorrl"){\r
19 \r
20 //\r
21   // HFE standard task configuration\r
22   //\r
23 \r
24   Bool_t kAnalyseTaggedTracks = kTRUE;\r
25   \r
26   AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsEMCAL","HFE Standard Cuts");\r
27 //  hfecuts->CreateStandardCuts();\r
28   hfecuts->SetMinNClustersTPC(100);\r
29   hfecuts->SetMinNClustersITS(3);\r
30   hfecuts->SetMinNTrackletsTRD(0);\r
31   hfecuts->SetMinRatioTPCclusters(0.6);\r
32    // hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);\r
33   hfecuts->SetRequireITSPixel();\r
34   hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); \r
35   hfecuts->SetMaxChi2perClusterITS(-1);\r
36   hfecuts->SetMaxChi2perClusterTPC(3.5);\r
37   hfecuts->SetCheckITSLayerStatus(kFALSE); // shud be put back\r
38 //  hfecuts->UnsetVertexRequirement();\r
39   hfecuts->SetVertexRange(10.);\r
40   hfecuts->SetRequireSigmaToVertex();\r
41   //hfecuts->SetSigmaToVertex(10);\r
42   hfecuts->SetTOFPIDStep(kFALSE);\r
43 //  hfecuts->SetQAOn();\r
44  hfecuts->SetPtRange(0, 30);\r
45 \r
46  TString taskName = TaskName;\r
47 \r
48   AliAnalysisTaskElecHadronCorrel *task = new AliAnalysisTaskElecHadronCorrel(taskName);\r
49   printf("task ------------------------ %p\n ", task);\r
50   task->SetHFECuts(hfecuts);\r
51 //  task->SetRemovePileUp(kTRUE);\r
52 //  task->SetInvariantMassCut(0.1);\r
53 \r
54   task->SetTriggerSelection(TrigSelCen);\r
55   task->SetCentralityParameters(CentMin, CentMax, "V0M");\r
56   task->SetInvariantMassCut(InvM);\r
57   task->SetTPCnsigmaCutsElecSelection(TPCNsigMinE,TPCNsigMaxE);\r
58   task->SetTPCnsigmaCutsHadSelection(TPCNsigMinH,TPCNsigMaxH);\r
59   task->SetShowerShapeCutsM02(SSM02Min,SSM02Max);\r
60   task->SetShowerShapeCutsM20(SSM20Min,SSM20Max);\r
61   task->SetShowerShapeCutsDisp(0,Disp);\r
62   task->SetEovPCuts(EovPMin,EovPMax);\r
63   task->SetRejectKinkMother(kTRUE);\r
64 \r
65   // Define PID\r
66   AliHFEpid *pid = task->GetPID();\r
67   if(useMC) pid->SetHasMCData(kTRUE);\r
68   pid->AddDetector("TPC", 0);\r
69   pid->AddDetector("EMCAL", 1);\r
70   /*\r
71   // change E/p cuts\r
72   AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);\r
73   emcpid->SetEoPMax(1.2);\r
74   emcpid->SetEoPMim(0.8);\r
75 \r
76   Double_t params[4];\r
77   char *cutmodel;\r
78   if(useMC){\r
79           // Monte-Carlo needs modelling of the falling mean with momentum at low momentum\r
80           // for high momentum it is consistent with a flat -0.94\r
81           cutmodel = "[0]*TMath::Exp([1]*x) + [2] + [3]*x";\r
82           Double_t paramsMC[4] = {0.7174, -1.588, -0.9395, 0.0246};\r
83           for(int ipar = 0; ipar < 4; ipar++) params[ipar] = paramsMC[ipar];\r
84   } else {\r
85           // Data is consistent with a flat 0.12\r
86           cutmodel = "pol0";\r
87           //params[0] = -0.0015;\r
88           //params[0] = -3.0;\r
89           params[0] = -1.0; //sigma min\r
90   }\r
91 //  pid->ConfigureTPCdefaultCut(cutmodel, params,3.0); \r
92   pid->ConfigureTPCasymmetric(0,30,-1,3.0); \r
93 */\r
94   printf("*************************************\n");\r
95   printf("Configuring standard Task:\n");\r
96 //  task->PrintStatus();\r
97   pid->PrintStatus();\r
98   printf("*************************************\n"); \r
99   return task;\r
100 }\r