]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/macros/configs/pPb/ConfigEMCalHFEpACorrelation.C
added 0-10 and 10-20 centrality selection and flag for EMCal trigger selection
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / pPb / ConfigEMCalHFEpACorrelation.C
CommitLineData
c852fdae 1///*******************************************************
2///Config Description
3//configIndex = 0 ---> Default cuts and PID
4//configIndex = 1 ---> TPC Ncls = 100
5//configIndex = 2 ---> TPC Ncls = 60
6//configIndex = 3 ---> SPD kBoth + 3 ITS cls
7//configIndex = 4 ---> SPD kBoth + 4 ITS cls
8//configIndex = 5 ---> SPD kAny + 3 ITS cls
9//configIndex = 6 ---> Mass < 0.05
10//configIndex = 7 ---> Mass < 0.15
11//configIndex = 8 ---> Op Angle < 0.1
12//configIndex = 9 ---> TPC PID: -0.5 to 3.0
13//configIndex = 10 ---> V0A -> other
889d754e 14//configIndex = 11 ---> Associated hadron with SPD::kAny cut
c852fdae 15///*******************************************************
16
17AliAnalysisTaskEMCalHFEpA* ConfigEMCalHFEpACorrelation(
18Bool_t isMC=kFALSE,
19Int_t triggerIndex=0,
20Int_t configIndex=0,
21Int_t centralityIndex=0,
22Bool_t isAOD = kFALSE,
23Bool_t isEMCal = kFALSE,
24Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
25)
26
27{
28///_______________________________________________________________________________________________________________
29///Track selection: Cuts used to ensure a minimum quality level of the tracks selected to perform the analysis
30 AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsMinBias","HFE Cuts");
31 hfecuts->CreateStandardCuts();
32
33 //TPC Cuts
34
35 hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
36 if(configIndex==1) hfecuts->SetMinNClustersTPC(100); //Minimum number of clusters on TPC = 100
37 else if(configIndex==2) hfecuts->SetMinNClustersTPC(60); //Minimum number of clusters on TPC = 60
38 else hfecuts->SetMinNClustersTPC(80); //Minimum number of clusters on TPC = 80
39
40 hfecuts->SetMinNClustersTPCPID(80); //Minimum number of clusters for dE/dx
41 hfecuts->SetMinRatioTPCclusters(0.6); //Number of clusters (Found/Findable)
42
43 //ITS
44 if(configIndex==3)
45 {
46 hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth); //Require 2 cluster on SPD
47 hfecuts->SetMinNClustersITS(3); //Minimum number of clusters on ITS
48 }
49 else if(configIndex==4)
50 {
51 hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth); //Require 2 cluster on SPD
52 hfecuts->SetMinNClustersITS(4); //Minimum number of clusters on ITS
53 }
54 else if(configIndex==5)
55 {
56 hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); //Require at least one cluster on SPD
57 hfecuts->SetMinNClustersITS(3); //Minimum number of clusters on ITS
58 }
59 else
60 {
61 hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); //Require at least one cluster on SPD
62 hfecuts->SetMinNClustersITS(2); //Minimum number of clusters on ITS
63 }
64
65 hfecuts->SetCheckITSLayerStatus(kFALSE);
66
67 //Additional Cuts
67eb14b9 68 hfecuts->SetPtRange(0.5, 1e6); //Transversal momentum range in GeV/c
c852fdae 69 //hfecuts->SetMaxImpactParam(1,2); //DCA to vertex
70
71 //Event Selection
72 hfecuts->SetVertexRange(10.); //
73 //hfecuts->SetProductionVertex(0,0.3,0,0.3); //
74///_______________________________________________________________________________________________________________
75
76///_________________________________________________________________________________________________________________________
77///Task config
78 AliAnalysisTaskEMCalHFEpA *task = new AliAnalysisTaskEMCalHFEpA(Form("HFECuts%d_%d_%d_%d",triggerIndex,configIndex,centralityIndex,EMCalThreshould));
79 printf("task ------------------------ %p\n ", task);
80
81 task->SetHFECuts(hfecuts);
82 task->SetCorrelationAnalysis();
83 task->SetAODanalysis(isAOD);
84 task->SetEventMixing(kTRUE);
9e832e0a 85
86 task->SetAssHadronPtRange(0.5,2.0);
87
889d754e 88 if(configIndex==11) task->SetSPDCutForHadrons()
c852fdae 89
90 if(configIndex==10) task->SetCentralityEstimator(1);
91 else task->SetCentralityEstimator(0);
92
93 if(EMCalThreshould==0 && triggerIndex==2) task->SetEMCalTriggerEG1();
94 if(EMCalThreshould==1 && triggerIndex==2) task->SetEMCalTriggerEG2();
95
96 if(isEMCal) task->SetUseEMCal();
97
98 if(configIndex==6) task->SetNonHFEmassCut(0.05);
99 else if(configIndex==7) task->SetNonHFEmassCut(0.15);
100 else task->SetNonHFEmassCut(0.1);
101
102 if(isEMCal) task->SetEtaCut(-0.6,0.6);
103 else task->SetEtaCut(-0.9,0.9);
104
105 task->SetEoverPCut(0.8,1.2); //Will work only in case isEMCal = kTRUE
106
107 if(configIndex==8) task->SetNonHFEangleCut(0.1);
108
109 if(centralityIndex==0) task->SetCentrality(0,20);
110 if(centralityIndex==1) task->SetCentrality(20,60);
111 if(centralityIndex==2) task->SetCentrality(60,100);
9e832e0a 112 if(centralityIndex==3) task->SetCentrality(0,10);
113 if(centralityIndex==4) task->SetCentrality(10,20);
c852fdae 114///_______________________________________________________________________________________________________________
115
116///_______________________________________________________________________________________________________________
117///Particle identification
118 AliHFEpid *pid = task->GetPID();
119
120//______________________________________
121//In the case of a simulation
122 if(isMC)
123 {
124 pid->SetHasMCData(kTRUE);
125 task->SetMCanalysis();
126 }
127//______________________________________
128
129//______________________________________________________
130//Configure PID
131 //_________________________
889d754e 132 //TPC+TOF PID
133 pid->AddDetector("TOF", 0); //Add TOF PID
c852fdae 134 pid->AddDetector("TPC", 1); //Add TPC PID
135
136 //_________________________
137 //Configure TPC cut
138 //Defaul = -1 to 3 sigmas
139 //Note that it is also possible to define a model instead of a constant
140 //--------->For this change the "cut model"
141
142 Double_t params[4];
143 char *cutmodel;
144 cutmodel = "pol0";
145
889d754e 146 if(configIndex==9) params[0] = 0.0;
147 else params[0] = -0.5;
c852fdae 148
149 pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
150//_______________________________________________________
151///_______________________________________________________________________________________________________________
152
153 printf("*************************************\n");
154 printf("Configuring standard Task:\n");
155 pid->PrintStatus();
156 printf("*************************************\n");
157
158 return task;
159}