1 ///*******************************************************
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
14 //configIndex = 11 ---> Associated hadron with SPD::kAny cut
15 ///*******************************************************
17 AliAnalysisTaskEMCalHFEpA* ConfigEMCalHFEpACorrelation(
21 Int_t centralityIndex=0,
22 Bool_t isAOD = kFALSE,
23 Bool_t isEMCal = kFALSE,
24 Int_t EMCalThreshould = 0 //0 == EG1, 1 == EG2
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();
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
40 hfecuts->SetMinNClustersTPCPID(80); //Minimum number of clusters for dE/dx
41 hfecuts->SetMinRatioTPCclusters(0.6); //Number of clusters (Found/Findable)
46 hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth); //Require 2 cluster on SPD
47 hfecuts->SetMinNClustersITS(3); //Minimum number of clusters on ITS
49 else if(configIndex==4)
51 hfecuts->SetCutITSpixel(AliHFEextraCuts::kBoth); //Require 2 cluster on SPD
52 hfecuts->SetMinNClustersITS(4); //Minimum number of clusters on ITS
54 else if(configIndex==5)
56 hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); //Require at least one cluster on SPD
57 hfecuts->SetMinNClustersITS(3); //Minimum number of clusters on ITS
61 hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); //Require at least one cluster on SPD
62 hfecuts->SetMinNClustersITS(2); //Minimum number of clusters on ITS
65 hfecuts->SetCheckITSLayerStatus(kFALSE);
68 hfecuts->SetPtRange(2, 1e6); //Transversal momentum range in GeV/c
69 //hfecuts->SetMaxImpactParam(1,2); //DCA to vertex
72 hfecuts->SetVertexRange(10.); //
73 //hfecuts->SetProductionVertex(0,0.3,0,0.3); //
74 ///_______________________________________________________________________________________________________________
76 ///_________________________________________________________________________________________________________________________
78 AliAnalysisTaskEMCalHFEpA *task = new AliAnalysisTaskEMCalHFEpA(Form("HFECuts%d_%d_%d_%d",triggerIndex,configIndex,centralityIndex,EMCalThreshould));
79 printf("task ------------------------ %p\n ", task);
81 task->SetHFECuts(hfecuts);
82 task->SetCorrelationAnalysis();
83 task->SetAODanalysis(isAOD);
84 task->SetEventMixing(kTRUE);
85 if(configIndex==11) task->SetSPDCutForHadrons()
87 if(configIndex==10) task->SetCentralityEstimator(1);
88 else task->SetCentralityEstimator(0);
90 if(EMCalThreshould==0 && triggerIndex==2) task->SetEMCalTriggerEG1();
91 if(EMCalThreshould==1 && triggerIndex==2) task->SetEMCalTriggerEG2();
93 if(isEMCal) task->SetUseEMCal();
95 if(configIndex==6) task->SetNonHFEmassCut(0.05);
96 else if(configIndex==7) task->SetNonHFEmassCut(0.15);
97 else task->SetNonHFEmassCut(0.1);
99 if(isEMCal) task->SetEtaCut(-0.6,0.6);
100 else task->SetEtaCut(-0.9,0.9);
102 task->SetEoverPCut(0.8,1.2); //Will work only in case isEMCal = kTRUE
104 if(configIndex==8) task->SetNonHFEangleCut(0.1);
106 if(centralityIndex==0) task->SetCentrality(0,20);
107 if(centralityIndex==1) task->SetCentrality(20,60);
108 if(centralityIndex==2) task->SetCentrality(60,100);
109 ///_______________________________________________________________________________________________________________
111 ///_______________________________________________________________________________________________________________
112 ///Particle identification
113 AliHFEpid *pid = task->GetPID();
115 //______________________________________
116 //In the case of a simulation
119 pid->SetHasMCData(kTRUE);
120 task->SetMCanalysis();
122 //______________________________________
124 //______________________________________________________
126 //_________________________
128 pid->AddDetector("TOF", 0); //Add TOF PID
129 pid->AddDetector("TPC", 1); //Add TPC PID
131 //_________________________
133 //Defaul = -1 to 3 sigmas
134 //Note that it is also possible to define a model instead of a constant
135 //--------->For this change the "cut model"
141 if(configIndex==9) params[0] = 0.0;
142 else params[0] = -0.5;
144 pid->ConfigureTPCdefaultCut(cutmodel,params,3.0);
145 //_______________________________________________________
146 ///_______________________________________________________________________________________________________________
148 printf("*************************************\n");
149 printf("Configuring standard Task:\n");
151 printf("*************************************\n");