]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/hfe/macros/configs/PbPb/ConfigHFECalstandard_PbPb.C
changed minimum pT cut
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / PbPb / ConfigHFECalstandard_PbPb.C
1 AliAnalysisTaskHFE* ConfigHFECalstandard_PbPb(Bool_t useMC, int TPCclust){
2   //
3   // HFE standard task configuration
4   //
5
6   cout << "==== TPC cluster cut" << TPCclust << endl;
7
8   AliHFEcuts *hfecuts = new AliHFEcuts("hfeCuts","HFE Standard Cuts for EMCal");
9   hfecuts->CreateStandardCuts();
10   //hfecuts->SetMinNClustersTPC(120);
11   hfecuts->SetMinNClustersTPC(TPCclust);
12   hfecuts->SetMinRatioTPCclusters(0.6);
13   hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
14
15   //hfecuts->SetMinNClustersITS(4);
16   hfecuts->SetMinNClustersITS(3);
17   hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny);
18   hfecuts->SetCheckITSLayerStatus(kFALSE);
19
20   //hfecuts->UnsetVertexRequirement();
21   hfecuts->SetMaxImpactParam(3.,3.);
22   hfecuts->SetPtRange(2.0,60.0);
23
24   hfecuts->SetVertexRange(10.);
25   //hfecuts->SetMaxChi2perClusterITS(36);
26   //hfecuts->SetSigmaToVertex(10);
27   //hfecuts->SetTOFPIDStep(kTRUE);
28   //hfecuts->SetTOFMISMATCHStep(kTRUE);
29   //hfecuts->SetTPCPIDCleanUpStep(kTRUE);
30   hfecuts->SetQAOn();
31   //hfecuts->SetMinNTrackletsTRD(5);
32
33   AliAnalysisTaskHFE *task = new AliAnalysisTaskHFE("HFEanalysisStandardEMCal");
34   task->SetHFECuts(hfecuts);
35   task->SetPbPbAnalysis(kTRUE);
36   //task->SetRemovePileUp(kTRUE);
37   task->GetPIDQAManager()->SetHighResolutionHistos();
38
39   // Define Variables
40   AliHFEvarManager *vm = task->GetVarManager();
41   //vm->AddVariable("pt");
42   //vm->AddVariable("eta");
43   
44   const Double_t ptbinning[50] = {1., 1.1, 1.2, 1.3, 1.4, 
45                                   1.5, 1.75, 2., 2.25, 2.5, 
46                                   2.75, 3., 3.5, 4., 4.5, 
47                                   5., 5.5, 6., 7., 8., 
48                                   9., 10., 11., 12., 13., 
49                                   14., 15., 16., 17., 18.,
50                                   20., 22., 24., 26., 28.,
51                                   30., 32., 34., 36., 38.,
52                                   40., 45., 50., 55., 60.,
53                                   65., 70., 80., 90., 100}; 
54
55   const Double_t etabinning[17] = {-0.8,-0.7,-0.6,-0.5,-0.4,-0.3,-0.2,-0.1,0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8}; 
56
57   vm->AddVariable("pt", 49, ptbinning);
58   vm->AddVariable("eta", 16, etabinning);
59   vm->AddVariable("phi");
60   vm->AddVariable("charge");
61   vm->AddVariable("source");
62   vm->AddVariable("centrality");
63   /*
64   if(!useMC){
65
66       for(Int_t a=0;a<12;a++)
67       {
68           TF1 *hBackground = new TF1("hadronicBackgroundFunction","TMath::Exp([0]/x + [1])", 0., 20.);
69           hBackground->SetParameter(0, -43.87);
70           hBackground->SetParameter(1, 2.85);
71           task->SetBackGroundFactorsFunction(hBackground,a);
72       }
73
74
75   }
76   */
77   // Define PID
78   AliHFEpid *pid = task->GetPID();
79   if(useMC) pid->SetHasMCData(kTRUE);
80   pid->AddDetector("EMCAL", 1);
81   pid->AddDetector("TPC", 0);
82 //  pid->ConfigureTPCrejection();
83
84   if(!useMC){
85
86       Double_t params_centr_0_5[1];
87       Double_t params_centr_5_10[1];
88       Double_t params_centr_10_20[1];
89       Double_t params_centr_20_30[1];
90       Double_t params_centr_per[1];
91       //params_centr_0_5[0]=0.16;  // cut tuned for 0-10%
92       //params_centr_5_10[0]=0.16; // cut tuned for 0-10%
93       //params_centr_10_20[0]=0.29;
94       //params_centr_20_30[0]=0.38;
95       //params_centr_per[0]=0.44;
96       params_centr_0_5[0]=-1.5;  // cut tuned for 0-10%
97       params_centr_5_10[0]=-1.5; // cut tuned for 0-10%
98       params_centr_10_20[0]=-1.5;
99       params_centr_20_30[0]=-1.5;
100       params_centr_per[0]=-1.5;
101       char *cutmodel;
102       cutmodel="pol0";
103
104
105       for(Int_t a=0;a<11;a++)
106       {
107           if(a>3)  pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_per,3.0);
108           if(a==0) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_0_5,3.0);    //  0-5%
109           if(a==1) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_5_10,3.0);    //  5-10%
110           if(a==2) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_10_20,3.0);    //  10-20%
111           if(a==3) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_20_30,3.0);    //  20-30%
112       }
113
114
115   }
116
117
118   // V0 tagged tracks
119   AliHFEcuts *v0trackCuts = new AliHFEcuts("V0trackCuts", "Track Cuts for tagged track Analysis");
120   v0trackCuts->CreateStandardCuts();
121   //v0trackCuts->SetMinNClustersTPC(120);
122   v0trackCuts->SetMinNClustersTPC(TPCclust);
123   v0trackCuts->SetMinRatioTPCclusters(0.6);
124   v0trackCuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
125   v0trackCuts->SetMinNClustersITS(1);
126   v0trackCuts->SetCutITSpixel(AliHFEextraCuts::kAny);
127   v0trackCuts->SetCheckITSLayerStatus(kFALSE);
128   v0trackCuts->UnsetVertexRequirement();
129   //v0trackCuts->SetMaxChi2perClusterITS(36);
130   //hfecuts->SetSigmaToVertex(10);
131   v0trackCuts->SetTOFPIDStep(kTRUE);
132 //  v0trackCuts->SetTOFMISMATCHStep(kTRUE);
133   //v0trackCuts->SetTPCPIDCleanUpStep(kTRUE);
134   v0trackCuts->SetQAOn();
135   
136   task->SwitchOnPlugin(AliAnalysisTaskHFE::kTaggedTrackAnalysis);
137   task->SetTaggedTrackCuts(v0trackCuts);
138   task->SetCleanTaggedTrack(kFALSE);
139   
140   // change E/p cuts
141   AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);
142   emcpid->SetEoPMax(1.2);
143   emcpid->SetEoPMim(0.85);
144
145   // QA
146   task->SetQAOn(AliAnalysisTaskHFE::kPIDqa);
147 //  task->SetFillSignalOnly(kFALSE);    // for DE pluging for MC
148   task->SetQAOn(AliAnalysisTaskHFE::kMCqa);
149   //task->SwitchOnPlugin(AliAnalysisTaskHFE::kIsElecBackGround);
150   //task->SwitchOnPlugin(AliAnalysisTaskHFE::kSecVtx);
151   task->SwitchOnPlugin(AliAnalysisTaskHFE::kDEstep);
152
153
154
155   printf("*************************************\n");
156   printf("Configuring standard Task:\n");
157   task->Print();
158   pid->PrintStatus();
159   printf("*************************************\n"); 
160   return task;
161 }