]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/macros/ConfigHFEstandard_PbPb.C
Transition PWG3 --> PWGHF
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / ConfigHFEstandard_PbPb.C
CommitLineData
d3338371 1AliAnalysisTaskHFE* ConfigHFEstandard_PbPb(Bool_t useMC){
2 //
3 // HFE standard task configuration
8c1c76e9 4 //
d3338371 5
6 AliHFEcuts *hfecuts = new AliHFEcuts("hfeCuts","HFE Standard Cuts");
7 hfecuts->CreateStandardCuts();
8c1c76e9 8 hfecuts->SetMinNClustersTPC(120);
9 hfecuts->SetMinRatioTPCclusters(0.6);
10 hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
11
12 hfecuts->SetMinNClustersITS(4);
d3338371 13 hfecuts->SetCutITSpixel(AliHFEextraCuts::kFirst);
14 hfecuts->SetCheckITSLayerStatus(kFALSE);
8c1c76e9 15
16 //hfecuts->UnsetVertexRequirement();
17 hfecuts->SetMaxImpactParam(3.,3.);
18
19 hfecuts->SetVertexRange(10.);
20 //hfecuts->SetMaxChi2perClusterITS(36);
21 //hfecuts->SetSigmaToVertex(10);
22 hfecuts->SetTOFPIDStep(kTRUE);
23 //hfecuts->SetTOFMISMATCHStep(kTRUE);
24 //hfecuts->SetTPCPIDCleanUpStep(kTRUE);
d3338371 25 hfecuts->SetQAOn();
26 //hfecuts->SetMinNTrackletsTRD(5);
27
28 AliAnalysisTaskHFE *task = new AliAnalysisTaskHFE("HFEanalysisStandard");
29 task->SetHFECuts(hfecuts);
8c1c76e9 30 task->SetPbPbAnalysis(kTRUE);
31 //task->SetRemovePileUp(kTRUE);
32 task->GetPIDQAManager()->SetHighResolutionHistos();
d3338371 33
34 // Define Variables
35 AliHFEvarManager *vm = task->GetVarManager();
36 vm->AddVariable("pt");
37 vm->AddVariable("eta");
38 vm->AddVariable("phi");
39 vm->AddVariable("charge");
40 vm->AddVariable("source");
41 vm->AddVariable("centrality");
42
43 if(!useMC){
8c1c76e9 44
45 for(Int_t a=0;a<12;a++)
46 {
47 TF1 *hBackground = new TF1("hadronicBackgroundFunction","TMath::Exp([0]/x + [1])", 0., 20.);
48 hBackground->SetParameter(0, -43.87);
49 hBackground->SetParameter(1, 2.85);
50 task->SetBackGroundFactorsFunction(hBackground,a);
51 }
52
53
d3338371 54 }
55
56 // Define PID
57 AliHFEpid *pid = task->GetPID();
58 if(useMC) pid->SetHasMCData(kTRUE);
59 pid->AddDetector("TOF", 0);
60 pid->AddDetector("TPC", 1);
8c1c76e9 61// pid->ConfigureTPCrejection();
62
63 if(!useMC){
d3338371 64
8c1c76e9 65 Double_t params_centr_0_5[1];
66 Double_t params_centr_5_10[1];
67 Double_t params_centr_10_20[1];
68 Double_t params_centr_20_30[1];
69 Double_t params_centr_per[1];
70 params_centr_0_5[0]=0.16; // cut tuned for 0-10%
71 params_centr_5_10[0]=0.16; // cut tuned for 0-10%
72 params_centr_10_20[0]=0.29;
73 params_centr_20_30[0]=0.38;
74 params_centr_per[0]=0.44;
75 char *cutmodel;
76 cutmodel="pol0";
77
78
79 for(Int_t a=0;a<11;a++)
80 {
81 if(a>3) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_per,3.0);
82 if(a==0) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_0_5,3.0); // 0-5%
83 if(a==1) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_5_10,3.0); // 5-10%
84 if(a==2) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_10_20,3.0); // 10-20%
85 if(a==3) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_20_30,3.0); // 20-30%
86 }
87
88
89 }
90
91
92 // V0 tagged tracks
93 AliHFEcuts *v0trackCuts = new AliHFEcuts("V0trackCuts", "Track Cuts for tagged track Analysis");
94 v0trackCuts->CreateStandardCuts();
95 v0trackCuts->SetMinNClustersTPC(120);
96 v0trackCuts->SetMinRatioTPCclusters(0.6);
97 v0trackCuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
98 v0trackCuts->SetMinNClustersITS(1);
99 v0trackCuts->SetCutITSpixel(AliHFEextraCuts::kAny);
100 v0trackCuts->SetCheckITSLayerStatus(kFALSE);
101 v0trackCuts->UnsetVertexRequirement();
102 //v0trackCuts->SetMaxChi2perClusterITS(36);
103 //hfecuts->SetSigmaToVertex(10);
104 v0trackCuts->SetTOFPIDStep(kTRUE);
105// v0trackCuts->SetTOFMISMATCHStep(kTRUE);
106 //v0trackCuts->SetTPCPIDCleanUpStep(kTRUE);
107 v0trackCuts->SetQAOn();
108
109 task->SwitchOnPlugin(AliAnalysisTaskHFE::kTaggedTrackAnalysis);
110 task->SetTaggedTrackCuts(v0trackCuts);
111 task->SetCleanTaggedTrack(kFALSE);
112
d3338371 113 // QA
114 task->SetQAOn(AliAnalysisTaskHFE::kPIDqa);
8c1c76e9 115// task->SetFillSignalOnly(kFALSE); // for DE pluging for MC
116 task->SetQAOn(AliAnalysisTaskHFE::kMCqa);
117 //task->SwitchOnPlugin(AliAnalysisTaskHFE::kIsElecBackGround);
118 //task->SwitchOnPlugin(AliAnalysisTaskHFE::kSecVtx);
119 task->SwitchOnPlugin(AliAnalysisTaskHFE::kDEstep);
120
121
d3338371 122
123 printf("*************************************\n");
124 printf("Configuring standard Task:\n");
125 task->Print();
126 pid->PrintStatus();
127 printf("*************************************\n");
128 return task;
129}