]>
Commit | Line | Data |
---|---|---|
ae88a21b | 1 | AliAnalysisTaskHFE* ConfigHFECalstandard_PbPb(Bool_t useMC, int TPCclust){ |
d84c68e9 | 2 | // |
3 | // HFE standard task configuration | |
4 | // | |
5 | ||
ae88a21b | 6 | cout << "==== TPC cluster cut" << TPCclust << endl; |
7 | ||
d84c68e9 | 8 | AliHFEcuts *hfecuts = new AliHFEcuts("hfeCuts","HFE Standard Cuts for EMCal"); |
9 | hfecuts->CreateStandardCuts(); | |
ae88a21b | 10 | //hfecuts->SetMinNClustersTPC(120); |
11 | hfecuts->SetMinNClustersTPC(TPCclust); | |
d84c68e9 | 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.); | |
66c9f443 | 22 | hfecuts->SetPtRange(2.0,60.0); |
d84c68e9 | 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(); | |
ae88a21b | 121 | //v0trackCuts->SetMinNClustersTPC(120); |
122 | v0trackCuts->SetMinNClustersTPC(TPCclust); | |
d84c68e9 | 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 | } |