]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AliHFSystErr.cxx
Add D0 vs EP systematics in the 30-50% CC (D.Caffarri)
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliHFSystErr.cxx
CommitLineData
ada850b0 1
0233abe6 2/**************************************************************************
3 * Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
4 * *
5 * Author: The ALICE Off-line Project. *
6 * Contributors are mentioned in the code where appropriate. *
7 * *
8 * Permission to use, copy, modify and distribute this software and its *
9 * documentation strictly for non-commercial purposes is hereby granted *
10 * without fee, provided that the above copyright notice appears in all *
11 * copies and that both the copyright notice and this permission notice *
12 * appear in the supporting documentation. The authors make no claims *
13 * about the suitability of this software for any purpose. It is *
14 * provided "as is" without express or implied warranty. *
15 **************************************************************************/
16
27de2dfb 17/* $Id$ */
18
0233abe6 19/////////////////////////////////////////////////////////////
20//
21// Class to handle systematic errors for charm hadrons
22//
23// Usage:
5541b811 24// AliHFSystEff syst; // DECAY = 1 for D0, 2, for D+, 3 for D*
25// syst.SetRunNumber(YEAR); // YEAR = two last numbers of the year (is 10 for 2010)
26// syst.SetCollisionType(TYPE); // TYPE = 0 is pp, 1 is PbPb
27// syst.SetCentrality(CENT); // CENT is centrality, 0100 for MB, 020 (4080) for 0-20 (40-80) CC...
28// syst.Init(DECAY); // DECAY = 1 for D0, 2, for D+, 3 for D*
0233abe6 29// syst.DrawErrors(); // to see a plot of the error contributions
30// syst.GetTotalSystErr(pt); // to get the total err at pt
31//
32// Author: A.Dainese, andrea.dainese@pd.infn.it
33/////////////////////////////////////////////////////////////
34
35#include <TStyle.h>
36#include <TGraphAsymmErrors.h>
37#include <TMath.h>
38#include <TCanvas.h>
39#include <TH2F.h>
40#include <TLegend.h>
5ad8ad40 41#include <TColor.h>
0233abe6 42
5541b811 43#include "AliLog.h"
0233abe6 44#include "AliHFSystErr.h"
45
46
47ClassImp(AliHFSystErr)
48
49//--------------------------------------------------------------------------
50AliHFSystErr::AliHFSystErr(const Char_t* name, const Char_t* title) :
51TNamed(name,title),
52fNorm(0),
53fRawYield(0),
54fTrackingEff(0),
55fBR(0),
56fCutsEff(0),
57fPIDEff(0),
58fMCPtShape(0),
5541b811 59fPartAntipart(0),
60fRunNumber(10),
61fCollisionType(0),
a8c3295d 62fCentralityClass("0100"),
cede55f5 63fIsLowEnergy(false),
64fIsCentScan(false)
0233abe6 65{
66 //
67 // Default Constructor
68 //
69}
5541b811 70
0233abe6 71//--------------------------------------------------------------------------
5541b811 72AliHFSystErr::~AliHFSystErr() {
73 //
74 // Default Destructor
0233abe6 75 //
a8c3295d 76 /*
5541b811 77
78 if(fNorm) { delete fNorm; fNorm=0; }
79 if(fRawYield) { delete fRawYield; fRawYield=0; }
80 if(fTrackingEff) { delete fTrackingEff; fTrackingEff=0; }
81 if(fBR) { delete fBR; fBR=0; }
82 if(fCutsEff) { delete fCutsEff; fCutsEff=0; }
83 if(fPIDEff) { delete fPIDEff; fPIDEff=0; }
84 if(fMCPtShape) { delete fMCPtShape; fMCPtShape=0; }
85 if(fPartAntipart) { delete fPartAntipart; fPartAntipart=0; }
a8c3295d 86 */
5541b811 87}
88
89//--------------------------------------------------------------------------
90void AliHFSystErr::Init(Int_t decay){
91 //
92 // Variables/histos initialization
0233abe6 93 //
94
a8c3295d 95 if (fRunNumber!=10 && fIsLowEnergy==false) {
27360a0e 96 AliFatal("Only settings for 2010 and the low energy runs are implemented so far");
5541b811 97 }
98
0233abe6 99 switch(decay) {
100 case 1: // D0->Kpi
a8c3295d 101 if (fCollisionType==0) {
102 if (fIsLowEnergy) InitD0toKpi2010ppLowEn();
103 else InitD0toKpi2010pp();
104 } else if (fCollisionType==1) {
9a8b5080 105 if (fCentralityClass=="07half") InitD0toKpi2011PbPb07half();
106 else if (fCentralityClass=="010") InitD0toKpi2010PbPb010CentScan();
cede55f5 107 else if (fCentralityClass=="1020") InitD0toKpi2010PbPb1020CentScan();
108 else if (fCentralityClass=="020") InitD0toKpi2010PbPb020();
109 else if (fCentralityClass=="2040") InitD0toKpi2010PbPb2040CentScan();
93da8165 110 else if (fCentralityClass=="3050InPlane") InitD0toKpi2011PbPb3050InPlane();
111 else if (fCentralityClass=="3050OutOfPlane") InitD0toKpi2011PbPb3050OutOfPlane();
cede55f5 112 else if (fCentralityClass=="4060") InitD0toKpi2010PbPb4060CentScan();
113 else if (fCentralityClass=="6080") InitD0toKpi2010PbPb6080CentScan();
aebba8df 114 else if (fCentralityClass=="4080") InitD0toKpi2010PbPb4080();
27360a0e 115 else AliFatal("Not yet implemented");
5541b811 116 }
a8c3295d 117 // else if (fCollisionType==2) InitD0toKpi2010ppLowEn();
0233abe6 118 break;
119 case 2: // D+->Kpipi
a8c3295d 120 if (fCollisionType==0) {
121 if (fIsLowEnergy) InitDplustoKpipi2010ppLowEn();
122 else InitDplustoKpipi2010pp();
123 } else if (fCollisionType==1) {
436b185f 124 if (fCentralityClass=="07half") InitDplustoKpipi2011PbPb07half();
125 else if (fCentralityClass=="010") InitDplustoKpipi2010PbPb010CentScan();
cede55f5 126 else if (fCentralityClass=="1020") InitDplustoKpipi2010PbPb1020CentScan();
127 else if (fCentralityClass=="020") InitDplustoKpipi2010PbPb020();
128 else if (fCentralityClass=="2040") InitDplustoKpipi2010PbPb2040CentScan();
129 else if (fCentralityClass=="4060") InitDplustoKpipi2010PbPb4060CentScan();
130 else if (fCentralityClass=="6080") InitDplustoKpipi2010PbPb6080CentScan();
aebba8df 131 else if (fCentralityClass=="4080") InitDplustoKpipi2010PbPb4080();
27360a0e 132 else AliFatal("Not yet implemented");
5541b811 133 }
0233abe6 134 break;
135 case 3: // D*->D0pi
fa2be30c 136 if (fCollisionType==0) {
137 if(fIsLowEnergy) InitDstartoD0pi2010ppLowEn();
138 else InitDstartoD0pi2010pp();
139 }else if (fCollisionType==1) {
cede55f5 140 if (fCentralityClass=="010") InitDstartoD0pi2010PbPb010CentScan();
9a8b5080 141 else if (fCentralityClass=="07half") InitDstartoD0pi2011PbPb07half();
cede55f5 142 else if (fCentralityClass=="1020") InitDstartoD0pi2010PbPb1020CentScan();
143 else if (fCentralityClass=="020") InitDstartoD0pi2010PbPb020();
144 else if (fCentralityClass=="2040" && fIsCentScan) InitDstartoD0pi2010PbPb2040CentScan();
145 else if (fCentralityClass=="2040") InitDstartoD0pi2010PbPb2040();
146 else if (fCentralityClass=="4060") InitDstartoD0pi2010PbPb4060CentScan();
147 else if (fCentralityClass=="6080") InitDstartoD0pi2010PbPb6080CentScan();
148 else if (fCentralityClass=="4080") InitDstartoD0pi2010PbPb4080();
27360a0e 149 else AliFatal("Not yet implemented");
5541b811 150 }
0233abe6 151 break;
66247513 152 case 4: // D+s->KKpi
153 if (fCollisionType==0) InitDstoKKpi2010pp();
46988859 154 else if (fCollisionType==1) {
155 if (fCentralityClass=="07half") InitDstoKKpi2011PbPb07half();
156 else AliFatal("Not yet implemented");
157 }
27360a0e 158 else AliFatal("Not yet implemented");
66247513 159 break;
160
0233abe6 161 default:
162 printf("Invalid decay type: %d\n",decay);
163 break;
164 }
165
0233abe6 166}
5541b811 167
0233abe6 168//--------------------------------------------------------------------------
5541b811 169void AliHFSystErr::InitD0toKpi2010pp() {
170 //
171 // D0->Kpi syst errors. Responsible: A. Rossi
172 // 2010 pp sample
0233abe6 173 //
174
5541b811 175 // Normalization
f1d72175 176 fNorm = new TH1F("fNorm","fNorm",24,0,24);
27360a0e 177 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.035); // 4% error on sigmaV0and
5541b811 178
179 // Branching ratio
f1d72175 180 fBR = new TH1F("fBR","fBR",24,0,24);
181 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.012); // 1.2% PDG2010
5541b811 182
183 // Tracking efficiency
f1d72175 184 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);
f8bc42d3 185 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.08); // 8% (4% per track)
5541b811 186
187 // Raw yield extraction
f1d72175 188 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
5541b811 189 fRawYield->SetBinContent(1,1);
d2e5959f 190 fRawYield->SetBinContent(2,0.22);
191 fRawYield->SetBinContent(3,0.1);
192 for(Int_t i=4;i<=7;i++) fRawYield->SetBinContent(i,0.04);
193 for(Int_t i=8;i<=12;i++) fRawYield->SetBinContent(i,0.07);
f1d72175 194 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.10);
195 for(Int_t i=17;i<=24;i++) fRawYield->SetBinContent(i,1);
0233abe6 196
5541b811 197 // Cuts efficiency (from cuts variation)
f1d72175 198 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
199 for(Int_t i=1;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
5541b811 200
201 // PID efficiency (from PID/noPID)
f1d72175 202 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
203 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.03); // 3%
dc80fe6b 204 fPIDEff->SetBinContent(2,0.05); // 5%
5541b811 205
206 // MC dN/dpt
f1d72175 207 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
578bfbba 208 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0);
209 fMCPtShape->SetBinContent(1,0.03);
210 fMCPtShape->SetBinContent(2,0.03);
5541b811 211
212 // particle-antiparticle
f1d72175 213 // fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",24,0,24);
214 // fPartAntipart->SetBinContent(1,1);
215 // for(Int_t i=2;i<=24;i++) fPartAntipart->SetBinContent(i,0.05);
5541b811 216
217 return;
0233abe6 218}
219//--------------------------------------------------------------------------
5541b811 220void AliHFSystErr::InitD0toKpi2010PbPb020() {
0233abe6 221 //
aebba8df 222 // D0->Kpi syst errors. Responsible: A. Rossi
5541b811 223 // 2010 PbPb sample, 0-20 CC
0233abe6 224 //
5541b811 225
226 // Normalization
227 fNorm = new TH1F("fNorm","fNorm",20,0,20);
d5e15690 228 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.05); // TAA and pp norm
5541b811 229
230 // Branching ratio
231 fBR = new TH1F("fBR","fBR",20,0,20);
232 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.012); // 1.2% PDG2010
233
234 // Tracking efficiency
235 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
69bcc748 236 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.10);// Jacek, 5% per track
5541b811 237
238 // Raw yield extraction
239 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
240 fRawYield->SetBinContent(1,0);
241 fRawYield->SetBinContent(2,0);
6c388dee 242 fRawYield->SetBinContent(3,0.08);
243 for(Int_t i=4;i<=12;i++) fRawYield->SetBinContent(i,0.06);
244 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.10);
5541b811 245
246 // Cuts efficiency (from cuts variation)
247 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
aebba8df 248 fCutsEff->SetBinContent(1,0.);
249 fCutsEff->SetBinContent(2,0.);
cc4bb301 250 fCutsEff->SetBinContent(3,0.13);
251 fCutsEff->SetBinContent(4,0.11);
252 for(Int_t i=5;i<=16;i++) fCutsEff->SetBinContent(i,0.10);
6c388dee 253 for(Int_t i=17;i<=20;i++) fCutsEff->SetBinContent(i,0.);
5541b811 254
255 // PID efficiency (from PID/noPID)
256 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
6c388dee 257 for(Int_t i=3;i<=16;i++) fPIDEff->SetBinContent(i,0.05);
5541b811 258
259 // MC dN/dpt
260 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
cc4bb301 261 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.01);
262 fMCPtShape->SetBinContent(3,0.04);
263 fMCPtShape->SetBinContent(4,0.02);
b797b51b 264 for(Int_t i=13;i<=16;i++) fMCPtShape->SetBinContent(i,0.03);
578bfbba 265
6c388dee 266// // particle-antiparticle
267// fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
268// for(Int_t i=3;i<=12;i++) fPartAntipart->SetBinContent(i,0.05);
269// fPartAntipart->SetBinContent(3,0.10);
270// fPartAntipart->SetBinContent(4,0.10);
271// fPartAntipart->SetBinContent(7,0.10);
272// fPartAntipart->SetBinContent(8,0.10);
0233abe6 273
5541b811 274 return;
275}
276//--------------------------------------------------------------------------
9a8b5080 277//--------------------------------------------------------------------------
278void AliHFSystErr::InitD0toKpi2011PbPb07half() {
279 //
280 // D0->Kpi syst errors. Responsible: A. Rossi
281 // 2011 PbPb sample, 0-7.5 CC
282 //
283
284 // Normalization
285 fNorm = new TH1F("fNorm","fNorm",36,0,36);
a713683e 286 for(Int_t i=1;i<36;i++) fNorm->SetBinContent(i,0.048); // TAA and pp norm
9a8b5080 287
288 // Branching ratio
289 fBR = new TH1F("fBR","fBR",36,0,36);
290 for(Int_t i=1;i<=36;i++) fBR->SetBinContent(i,0.012); // 1.2% PDG2010
291
292 // Tracking efficiency
293 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",36,0,36);
294 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.10);// Jacek, 5% per track
295 for(Int_t i=25;i<=36;i++) fTrackingEff->SetBinContent(i,0.);// OUT OF MEASUREMENT RANGE
296
297 // Raw yield extraction
298 fRawYield = new TH1F("fRawYield","fRawYield",36,0,36);
299 fRawYield->SetBinContent(1,0);
300 fRawYield->SetBinContent(2,0.1);
301 fRawYield->SetBinContent(3,0.05);
fd8ae434 302 for(Int_t i=4;i<=12;i++) fRawYield->SetBinContent(i,0.05);
303 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.10);
9a8b5080 304 for(Int_t i=17;i<=24;i++) fRawYield->SetBinContent(i,0.30);
305 for(Int_t i=25;i<=36;i++) fRawYield->SetBinContent(i,0.);// OUT OF MEASUREMENT RANGE
306
307 // Cuts efficiency (from cuts variation)
308 fCutsEff = new TH1F("fCutsEff","fCutsEff",36,0,36);
309 fCutsEff->SetBinContent(1,0.);
310 fCutsEff->SetBinContent(2,0.15);
311 fCutsEff->SetBinContent(3,0.13);
312 fCutsEff->SetBinContent(4,0.11);
313 fCutsEff->SetBinContent(5,0.08);
314 for(Int_t i=6;i<=24;i++) fCutsEff->SetBinContent(i,0.06);
315 for(Int_t i=25;i<=36;i++) fCutsEff->SetBinContent(i,0.0);// OUT OF MEASUREMENT RANGE
316
317 // PID efficiency (from PID/noPID)
318 fPIDEff = new TH1F("fPIDEff","fPIDEff",36,0,36);
319 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.05);
320 for(Int_t i=25;i<=36;i++) fPIDEff->SetBinContent(i,0.0);// OUT OF MEASUREMENT RANGE
321
322 // MC dN/dpt
323 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",36,0,36);
324 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0.01);
325 fMCPtShape->SetBinContent(2,0.06);
326 fMCPtShape->SetBinContent(3,0.04);
327 fMCPtShape->SetBinContent(4,0.02);
328 for(Int_t i=13;i<=16;i++) fMCPtShape->SetBinContent(i,0.03);
329 for(Int_t i=17;i<=24;i++) fMCPtShape->SetBinContent(i,0.05);
330 for(Int_t i=25;i<=36;i++) fMCPtShape->SetBinContent(i,0.0);// OUT OF MEASUREMENT RANGE
331
332// // particle-antiparticle
333// fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",36,0,36);
334// for(Int_t i=3;i<=12;i++) fPartAntipart->SetBinContent(i,0.05);
335// fPartAntipart->SetBinContent(3,0.10);
336// fPartAntipart->SetBinContent(4,0.10);
337// fPartAntipart->SetBinContent(7,0.10);
338// fPartAntipart->SetBinContent(8,0.10);
339
340 return;
341}
93da8165 342
343//--------------------------------------------------------------------------
344void AliHFSystErr::InitD0toKpi2011PbPb3050InPlane() {
345 //
346 // D0->Kpi syst errors. Responsible: D. Caffarri
347 // 2011 PbPb sample, 30-50 CC InPlane
348 //
349 InitD0toKpi2011PbPb07half();
350 // Raw yield extraction
351 // fRawYield = new TH1F("fRawYield","fRawYield",36,0,36);
352 fRawYield->SetBinContent(1,0);
353 fRawYield->SetBinContent(2,0);
354 fRawYield->SetBinContent(3,0.05);
355 fRawYield->SetBinContent(4,0.08);
356 for(Int_t i=5;i<=8;i++) fRawYield->SetBinContent(i,0.05);
357 for(Int_t i=9;i<=12;i++) fRawYield->SetBinContent(i,0.05);
358 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.15);
359 for(Int_t i=17;i<=36;i++) fRawYield->SetBinContent(i,0.);// OUT OF MEASUREMENT RANGE
360
361 // Cuts efficiency (from cuts variation)
362 //fCutsEff = new TH1F("fCutsEff","fCutsEff",36,0,36);
363 fCutsEff->SetBinContent(1,0.);
364 fCutsEff->SetBinContent(2,0.0);
365 fCutsEff->SetBinContent(3,0.10);
366 fCutsEff->SetBinContent(4,0.10);
367 fCutsEff->SetBinContent(5,0.10);
368 fCutsEff->SetBinContent(6,0.10);
369 for(Int_t i=7;i<=8;i++) fCutsEff->SetBinContent(i,0.15);
370 for(Int_t i=9;i<=16;i++) fCutsEff->SetBinContent(i,0.15);
371 for(Int_t i=25;i<=36;i++) fCutsEff->SetBinContent(i,0.0);// OUT OF MEASUREMENT RANGE
372}
373
374//--------------------------------------------------------------------------
375void AliHFSystErr::InitD0toKpi2011PbPb3050OutOfPlane() {
376 //
377 // D0->Kpi syst errors. Responsible: D. Caffarri
378 // 2011 PbPb sample, 30-50 CC OutOfPlane
379 //
380 InitD0toKpi2011PbPb07half();
381 // Raw yield extraction
382 //fRawYield = new TH1F("fRawYield","fRawYield",36,0,36);
383 fRawYield->SetBinContent(1,0);
384 fRawYield->SetBinContent(2,0.);
385 fRawYield->SetBinContent(3,0.05);
386 for(Int_t i=4;i<=6;i++) fRawYield->SetBinContent(i,0.07);
387 for(Int_t i=7;i<=8;i++) fRawYield->SetBinContent(i,0.05);
388 for(Int_t i=9;i<=12;i++) fRawYield->SetBinContent(i,0.10);
389 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.15);
390 for(Int_t i=17;i<=36;i++) fRawYield->SetBinContent(i,0.);// OUT OF MEASUREMENT RANGE
391
392 // Cuts efficiency (from cuts variation)
393 // fCutsEff = new TH1F("fCutsEff","fCutsEff",36,0,36);
394 fCutsEff->SetBinContent(1,0.);
395 fCutsEff->SetBinContent(2,0.);
396 fCutsEff->SetBinContent(3,0.10);
397 fCutsEff->SetBinContent(4,0.10);
398 fCutsEff->SetBinContent(5,0.10);
399 fCutsEff->SetBinContent(6,0.10);
400 for(Int_t i=7;i<=8;i++) fCutsEff->SetBinContent(i,0.15);
401 for(Int_t i=9;i<=16;i++) fCutsEff->SetBinContent(i,0.15);
402 for(Int_t i=17;i<=36;i++) fCutsEff->SetBinContent(i,0.0);// OUT OF MEASUREMENT RANGE
403}
404
9a8b5080 405//--------------------------------------------------------------------------
5541b811 406void AliHFSystErr::InitD0toKpi2010PbPb4080() {
93da8165 407 //
aebba8df 408 // D0->Kpi syst errors. Responsible: A. Rossi
5541b811 409 // 2010 PbPb sample, 40-80 CC
410 //
411
0233abe6 412 // Normalization
413 fNorm = new TH1F("fNorm","fNorm",20,0,20);
d5e15690 414 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.07); // TAA and pp norm
0233abe6 415
416 // Branching ratio
417 fBR = new TH1F("fBR","fBR",20,0,20);
844405bc 418 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.012); // 1.2% PDG2010
0233abe6 419
aebba8df 420 // Tracking efficiency
421 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
69bcc748 422 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.10); // Jacek, 5% per track
aebba8df 423
424
0233abe6 425 // Raw yield extraction
426 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
5541b811 427 fRawYield->SetBinContent(1,0);
428 fRawYield->SetBinContent(2,0);
6c388dee 429 for(Int_t i=3;i<=16;i++) fRawYield->SetBinContent(i,0.05);
666cf569 430 //for(Int_t i=13;i<=20;i++) fRawYield->SetBinContent(i,0);
0233abe6 431
432 // Cuts efficiency (from cuts variation)
433 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
aebba8df 434 fCutsEff->SetBinContent(1,0.);
435 fCutsEff->SetBinContent(2,0.);
cc4bb301 436 fCutsEff->SetBinContent(3,0.13);
437 fCutsEff->SetBinContent(4,0.11);
438 for(Int_t i=5;i<=16;i++) fCutsEff->SetBinContent(i,0.10);
6c388dee 439 for(Int_t i=17;i<=20;i++) fCutsEff->SetBinContent(i,0.);
0233abe6 440
441 // PID efficiency (from PID/noPID)
442 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
6c388dee 443// for(Int_t i=3;i<=6;i++) fPIDEff->SetBinContent(i,0.10);
444// for(Int_t i=7;i<=16;i++) fPIDEff->SetBinContent(i,0.05);
445 for(Int_t i=3;i<=16;i++) fPIDEff->SetBinContent(i,0.05);
0233abe6 446
447 // MC dN/dpt
448 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
cc4bb301 449 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.01);
450 // fMCPtShape->SetBinContent(3,0.04); Not set for peripherals (Raa Vs pt is flat)
451 // fMCPtShape->SetBinContent(4,0.02);
452 for(Int_t i=13;i<=16;i++) fMCPtShape->SetBinContent(i,0.03);
453
454 // // particle-antiparticle
455 // fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
456 // for(Int_t i=3;i<=12;i++) fPartAntipart->SetBinContent(i,0.05);
0233abe6 457
458 return;
459}
a8c3295d 460
461//--------------------------------------------------------------------------
462void AliHFSystErr::InitD0toKpi2010ppLowEn() {
463 //
464 // D0->Kpi syst errors. Low energy run
465 // 2011 2.76 TeV pp sample
466 //
467 AliInfo(" Settings for D0 --> K pi, p-p collisions at 2.76 TeV");
468
469 // Normalization
470 fNorm = new TH1F("fNorm","fNorm",20,0,20);
f9a85c82 471 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.031); // 4% error on sigmaV0and
a8c3295d 472
473 // Branching ratio
474 fBR = new TH1F("fBR","fBR",20,0,20);
475 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.012); // 1.2% PDG2010
476
477 // Tracking efficiency
478 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
27360a0e 479 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.10); //10% (5% per track)
a8c3295d 480
481 // Raw yield extraction
482 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
483 fRawYield->SetBinContent(1,1);
f9a85c82 484 for(Int_t i=1;i<=20;i++) fRawYield->SetBinContent(i,0.15);
a8c3295d 485
486 // Cuts efficiency (from cuts variation)
487 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
6c388dee 488 for(Int_t i=1;i<=20;i++) fCutsEff->SetBinContent(i,0.10); // 10%
f9a85c82 489 fCutsEff->SetBinContent(2,0.20);
490 for(Int_t i=7;i<=20;i++) fCutsEff->SetBinContent(i,0.15); // 10%
491
a8c3295d 492
493 // PID efficiency (from PID/noPID)
494 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
f9a85c82 495 for(Int_t i=1;i<=20;i++) fPIDEff->SetBinContent(i,0.15); // 10%
496 // fPIDEff->SetBinContent(2,0.20);
497 for(Int_t i=7;i<=20;i++) fPIDEff->SetBinContent(i,0.05); // 10%
a8c3295d 498
499 // MC dN/dpt
500 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
27360a0e 501 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.01);
502 fMCPtShape->SetBinContent(1,0.03);
503 fMCPtShape->SetBinContent(2,0.03);
a8c3295d 504
f9a85c82 505// // particle-antiparticle
506// fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
507// fPartAntipart->SetBinContent(1,1);
508// fPartAntipart->SetBinContent(2,1);
509// for(Int_t i=3;i<=6;i++) fPartAntipart->SetBinContent(i,0.08);
510// for(Int_t i=1;i<=20;i++) fPartAntipart->SetBinContent(i,0.);
a8c3295d 511
512 return;
513}
514
0233abe6 515//--------------------------------------------------------------------------
5541b811 516void AliHFSystErr::InitDplustoKpipi2010pp() {
0233abe6 517 //
518 // D+->Kpipi syst errors. Responsible: R. Bala
5541b811 519 // 2010 pp sample
0233abe6 520 //
521
1f91ef56 522
523// Normalization
524 fNorm = new TH1F("fNorm","fNorm",24,0,24);
27360a0e 525 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.035); // 4% error on sigmaV0and
626bcf57 526
527 // Branching ratio
1f91ef56 528 fBR = new TH1F("fBR","fBR",24,0,24);
f7c8a2f1 529 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.021); // 2.1% PDG2010
626bcf57 530
531 // Tracking efficiency
1f91ef56 532 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);
f8bc42d3 533 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.12); // 12% (4% per track)
626bcf57 534
535
536 // Raw yield extraction
1f91ef56 537 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
d2e5959f 538 fRawYield->SetBinContent(1,1);
1f91ef56 539 fRawYield->SetBinContent(2,0.25);
540 fRawYield->SetBinContent(3,0.25);
d2e5959f 541 fRawYield->SetBinContent(4,0.20);
1f91ef56 542 fRawYield->SetBinContent(5,0.09);
543 fRawYield->SetBinContent(6,0.09);
d2e5959f 544 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.05);
545 for(Int_t i=12;i<=24;i++) fRawYield->SetBinContent(i,0.10);
1f91ef56 546
626bcf57 547 // Cuts efficiency (from cuts variation)
1f91ef56 548 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
549 for(Int_t i=1;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
626bcf57 550
551 // PID efficiency (from PID/noPID)
1f91ef56 552 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
553 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.05); // 5%
554 fPIDEff->SetBinContent(1,0.15); // 15%
555 fPIDEff->SetBinContent(2,0.15); // 15%
556 fPIDEff->SetBinContent(3,0.15); // 15%
557 fPIDEff->SetBinContent(4,0.15); // 15%
558 for(Int_t i=12;i<=16;i++) fPIDEff->SetBinContent(i,0.10); // 5%
559
560 // MC dN/dpt
561 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
562 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0);
578bfbba 563 fMCPtShape->SetBinContent(1,0.03);
564 fMCPtShape->SetBinContent(2,0.03);
626bcf57 565
566
567 // particle-antiparticle
568 /*
569 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
570 fPartAntipart->SetBinContent(1,1);
571 fPartAntipart->SetBinContent(2,1);
572 fPartAntipart->SetBinContent(3,0.12);
573 for(Int_t i=4;i<=20;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
574 */
0233abe6 575 return;
576}
1f91ef56 577
66247513 578//--------------------------------------------------------------------------
579void AliHFSystErr::InitDstoKKpi2010pp() {
580 //
581 // D+s->KKpi syst errors. Responsible: G.M. Innocenti
582 // 2010 pp sample
583 //
584
585
586// Normalization
587 fNorm = new TH1F("fNorm","fNorm",12,0,12);
494408cc 588 for(Int_t i=1;i<=12;i++) fNorm->SetBinContent(i,0.035); // 3.5% error on sigmaV0and
66247513 589
590 // Branching ratio
591 fBR = new TH1F("fBR","fBR",12,0,12);
494408cc 592 for(Int_t i=1;i<=12;i++) fBR->SetBinContent(i,0.06); // 0.14/2.32 PDG2010
66247513 593
594 // Tracking efficiency
595 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",12,0,12);
494408cc 596 for(Int_t i=1;i<=12;i++) fTrackingEff->SetBinContent(i,0.12); // 12% (4% per track)
66247513 597
598
599 // Raw yield extraction
600 fRawYield = new TH1F("fRawYield","fRawYield",12,0,12);
601 fRawYield->SetBinContent(1,1);
602 fRawYield->SetBinContent(2,1);
603 fRawYield->SetBinContent(3,0.20);
604 fRawYield->SetBinContent(4,0.20);
605 fRawYield->SetBinContent(5,0.15);
606 fRawYield->SetBinContent(6,0.15);
607 fRawYield->SetBinContent(7,0.15);
608 fRawYield->SetBinContent(8,0.15);
609 fRawYield->SetBinContent(9,0.20);
610 fRawYield->SetBinContent(10,0.20);
611 fRawYield->SetBinContent(11,0.20);
612 fRawYield->SetBinContent(12,0.20);
613
614 // Cuts efficiency (from cuts variation)
615 fCutsEff = new TH1F("fCutsEff","fCutsEff",12,0,12);
616 for(Int_t i=1;i<=12;i++) fCutsEff->SetBinContent(i,0.15); // 15%
617
618 // PID efficiency (from PID/noPID)
619 fPIDEff = new TH1F("fPIDEff","fPIDEff",12,0,12);
620 for(Int_t i=1;i<=12;i++) fPIDEff->SetBinContent(i,0.07); // 7%
621
494408cc 622 // MC dN/dpt
623 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",12,0,12);
624 for(Int_t i=1; i<=2; i++) fMCPtShape->SetBinContent(i,1.);
625 for(Int_t i=3; i<=4; i++) fMCPtShape->SetBinContent(i,0.03);
626 for(Int_t i=5; i<=6; i++) fMCPtShape->SetBinContent(i,0.03);
627 for(Int_t i=7; i<=8; i++) fMCPtShape->SetBinContent(i,0.02);
628 for(Int_t i=9; i<=12; i++) fMCPtShape->SetBinContent(i,0.02);
66247513 629
630
631 // particle-antiparticle
632 /*
633 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",12,0,12);
634 fPartAntipart->SetBinContent(1,1);
635 fPartAntipart->SetBinContent(2,1);
636 fPartAntipart->SetBinContent(3,0.12);
637 for(Int_t i=4;i<=12;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
638 */
639 return;
640}
641
642
436b185f 643//--------------------------------------------------------------------------
644void AliHFSystErr::InitDplustoKpipi2011PbPb07half() {
645 //
646 // D+->Kpipi syst errors. Responsible: E. Bruna
647 // 2011 PbPb sample, 0-7.5% CC
648 //
649
650 // Normalization
651 fNorm = new TH1F("fNorm","fNorm",36,0,36);
a713683e 652 for(Int_t i=1;i<=36;i++) fNorm->SetBinContent(i,0.048); // TAA and pp norm
436b185f 653
654 // Branching ratio
655 fBR = new TH1F("fBR","fBR",36,0,36);
656 for(Int_t i=1;i<=36;i++) fBR->SetBinContent(i,0.021); // 2.1% PDG2010
657
658 // Tracking efficiency
659 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",36,0,36);
660 for(Int_t i=1;i<=36;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
661
662 // Raw yield extraction
663 fRawYield = new TH1F("fRawYield","fRawYield",36,0,36);
664 for(Int_t i=1;i<=36;i++) fRawYield->SetBinContent(i,.10); //5 to 10%
eb4886c7 665 fRawYield->SetBinContent(4,0.30);
666 fRawYield->SetBinContent(5,0.20);
667 fRawYield->SetBinContent(6,0.20);
668 for(Int_t i=7; i<=8; i++) fRawYield->SetBinContent(i,0.10);
669 for(Int_t i=9; i<=12; i++) fRawYield->SetBinContent(i,0.08);
436b185f 670 for(Int_t i=13; i<=16; i++) fRawYield->SetBinContent(i,0.05);
eb4886c7 671 for(Int_t i=17; i<=24; i++) fRawYield->SetBinContent(i,0.08);
436b185f 672 for(Int_t i=25; i<=36; i++) fRawYield->SetBinContent(i,0.20);
673
674
675 // Cuts efficiency (from cuts variation)
676 fCutsEff = new TH1F("fCutsEff","fCutsEff",36,0,36);
a7cfa9ed 677 for(Int_t i=1; i<=12; i++) fCutsEff->SetBinContent(i,0.10);
678 for(Int_t i=13; i<=36; i++) fCutsEff->SetBinContent(i,0.08);
eb4886c7 679
436b185f 680
681 // PID efficiency (from PID/noPID)
682 fPIDEff = new TH1F("fPIDEff","fPIDEff",36,0,36);
683 for(Int_t i=1;i<=36;i++) fPIDEff->SetBinContent(i,0.05); // 5%
684
a7cfa9ed 685 // MC dN/dpt (24/7/2012)
436b185f 686 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",36,0,36);
3d446ac8 687 for(Int_t iBin=1; iBin<=5; iBin++) fMCPtShape->SetBinContent(iBin,0.05);
688 for(Int_t iBin=6; iBin<=36; iBin++) fMCPtShape->SetBinContent(iBin,0.03);
689 // for(Int_t iBin=13; iBin<=36; iBin++) fMCPtShape->SetBinContent(iBin,0.05);
436b185f 690
691
692 // particle-antiparticle
693 /*
694 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
695 fPartAntipart->SetBinContent(1,1);
696 fPartAntipart->SetBinContent(2,1);
697 fPartAntipart->SetBinContent(3,0.12);
698 for(Int_t i=4;i<=20;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
699 */
700
701 return;
702}
703
46988859 704//--------------------------------------------------------------------------
705void AliHFSystErr::InitDstoKKpi2011PbPb07half() {
706 //
707 // D+s->Kpipi syst errors. Responsible: G.M. Innocenti
708 // 2011 PbPb sample, 0-7.5% CC
709 //
710
711 // Normalization
712 fNorm = new TH1F("fNorm","fNorm",12,0,12);
a713683e 713 for(Int_t i=1;i<=12;i++) fNorm->SetBinContent(i,0.048); // TAA and pp norm
46988859 714
715 // Branching ratio
716 fBR = new TH1F("fBR","fBR",12,0,12);
d92cd593 717 for(Int_t i=1;i<=12;i++) fBR->SetBinContent(i,0.053); // 0.12/2.28 PDG2012
46988859 718
719 // Tracking efficiency
720 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",12,0,12);
721 for(Int_t i=1;i<=12;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
722
723 // Raw yield extraction
724 fRawYield = new TH1F("fRawYield","fRawYield",12,0,12);
725 for(Int_t i=1;i<=6;i++) fRawYield->SetBinContent(i,.30);
726 for(Int_t i=7; i<=12; i++) fRawYield->SetBinContent(i,0.20);
727
728
729
730 // Cuts efficiency (from cuts variation)
731 fCutsEff = new TH1F("fCutsEff","fCutsEff",12,0,12);
732 for(Int_t i=1;i<=12;i++) fCutsEff->SetBinContent(i,0.20); // 20%
733
734 // PID efficiency (from PID/noPID)
735 fPIDEff = new TH1F("fPIDEff","fPIDEff",12,0,12);
736 for(Int_t i=1;i<=12;i++) fPIDEff->SetBinContent(i,0.1); // 10%
737
738 // MC dN/dpt
739 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",12,0,12);
740 for(Int_t i=1; i<=2; i++) fMCPtShape->SetBinContent(i,1.);
741 for(Int_t i=3; i<=4; i++) fMCPtShape->SetBinContent(i,0.03);
742 for(Int_t i=5; i<=6; i++) fMCPtShape->SetBinContent(i,0.03);
743 for(Int_t i=7; i<=8; i++) fMCPtShape->SetBinContent(i,0.02);
744 for(Int_t i=9; i<=12; i++) fMCPtShape->SetBinContent(i,0.02);
745
746 // particle-antiparticle
747 /*
748 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",12,0,12);
749 fPartAntipart->SetBinContent(1,1);
750 fPartAntipart->SetBinContent(2,1);
751 fPartAntipart->SetBinContent(3,0.12);
752 for(Int_t i=4;i<=12;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
753 */
754
755 return;
756}
757
0233abe6 758//--------------------------------------------------------------------------
5541b811 759void AliHFSystErr::InitDplustoKpipi2010PbPb020() {
760 //
761 // D+->Kpipi syst errors. Responsible: ??
762 // 2010 PbPb sample, 0-20 CC
763 //
aebba8df 764
aebba8df 765 // Normalization
766 fNorm = new TH1F("fNorm","fNorm",20,0,20);
d5e15690 767 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.05); // TAA and pp norm
aebba8df 768
769 // Branching ratio
770 fBR = new TH1F("fBR","fBR",20,0,20);
f7c8a2f1 771 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.021); // 2.1% PDG2010
aebba8df 772
773 // Tracking efficiency
774 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
69bcc748 775 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
aebba8df 776
777 // Raw yield extraction
778 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
6c388dee 779 for(Int_t i=1;i<=20;i++) fRawYield->SetBinContent(i,.10); //5 to 10%
780 // fRawYield->SetBinContent(5,0.23);
781 //fRawYield->SetBinContent(6,0.23);
cb142b90 782 fRawYield->SetBinContent(7,0.20);
783 fRawYield->SetBinContent(8,0.20);
784 fRawYield->SetBinContent(9,0.15);
785 fRawYield->SetBinContent(10,0.15);
786 fRawYield->SetBinContent(11,0.15);
787 fRawYield->SetBinContent(12,0.15);
aebba8df 788
789 // Cuts efficiency (from cuts variation)
790 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
666cf569 791 for(Int_t i=1;i<=20;i++) fCutsEff->SetBinContent(i,0.15); // 10%
aebba8df 792
793 // PID efficiency (from PID/noPID)
794 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
795 for(Int_t i=1;i<=20;i++) fPIDEff->SetBinContent(i,0.05); // 5%
aebba8df 796
f7c8a2f1 797 // MC dN/dpt (2/2/2012)
aebba8df 798 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
578bfbba 799 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.);
f7c8a2f1 800 for(Int_t iBin=7; iBin<=8; iBin++) fMCPtShape->SetBinContent(iBin,0.01);
801 for(Int_t iBin=9; iBin<=12; iBin++) fMCPtShape->SetBinContent(iBin,0.05);
802 for(Int_t iBin=13; iBin<=16; iBin++) fMCPtShape->SetBinContent(iBin,0.05);
aebba8df 803
804
805 // particle-antiparticle
806 /*
807 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
808 fPartAntipart->SetBinContent(1,1);
809 fPartAntipart->SetBinContent(2,1);
810 fPartAntipart->SetBinContent(3,0.12);
811 for(Int_t i=4;i<=20;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
812 */
6c388dee 813
5541b811 814 return;
815}
816
817//--------------------------------------------------------------------------
818void AliHFSystErr::InitDplustoKpipi2010PbPb4080() {
819 //
820 // D+->Kpipi syst errors. Responsible: ??
821 // 2010 PbPb sample, 40-80 CC
822 //
823
aebba8df 824
825 // Normalization
826 fNorm = new TH1F("fNorm","fNorm",20,0,20);
d5e15690 827 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.07); // TAA and pp norm
aebba8df 828
829 // Branching ratio
830 fBR = new TH1F("fBR","fBR",20,0,20);
f7c8a2f1 831 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.021); // 2.1%
aebba8df 832
833 // Tracking efficiency
834 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
69bcc748 835 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
aebba8df 836
837
838 // Raw yield extraction
839 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
840 fRawYield->SetBinContent(1,1);
841 fRawYield->SetBinContent(2,1);
842 fRawYield->SetBinContent(3,1);
6970b225 843 fRawYield->SetBinContent(4,0.15);
cb142b90 844 fRawYield->SetBinContent(5,0.05);
845 fRawYield->SetBinContent(6,0.05);
846 fRawYield->SetBinContent(7,0.15);
847 fRawYield->SetBinContent(8,0.15);
6970b225 848 for(Int_t i=9;i<=12;i++) fRawYield->SetBinContent(i,0.15);
aebba8df 849 for(Int_t i=13;i<=20;i++) fRawYield->SetBinContent(i,1); //5 to 10%
850
851 // Cuts efficiency (from cuts variation)
852 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
853 for(Int_t i=1;i<=20;i++) fCutsEff->SetBinContent(i,0.10); // 10%
854
855 // PID efficiency (from PID/noPID)
856 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
857 for(Int_t i=1;i<=20;i++) fPIDEff->SetBinContent(i,0.05); // 5%
858 fPIDEff->SetBinContent(3,0.13); // 13%
859
860
f7c8a2f1 861 // MC dN/dpt (2/2/2012)
aebba8df 862 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
578bfbba 863 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0);
f7c8a2f1 864 for(Int_t iBin=4; iBin<=8; iBin++) fMCPtShape->SetBinContent(iBin,0.01);
865 for(Int_t iBin=9; iBin<=12; iBin++) fMCPtShape->SetBinContent(iBin,0.03);
866 for(Int_t iBin=13; iBin<=16; iBin++) fMCPtShape->SetBinContent(iBin,0.03);
aebba8df 867
868
869 // particle-antiparticle
870 /*
871 fPartAntipart = new TH1F("fPartAntipart","fPartAntipart",20,0,20);
872 fPartAntipart->SetBinContent(1,1);
873 fPartAntipart->SetBinContent(2,1);
874 fPartAntipart->SetBinContent(3,0.12);
875 for(Int_t i=4;i<=20;i++) fPartAntipart->SetBinContent(i,0.05); //5 to 12%
876 */
5541b811 877 return;
878}
879
a8c3295d 880//--------------------------------------------------------------------------
881void AliHFSystErr::InitDplustoKpipi2010ppLowEn() {
882
883 //
884 // D+->Kpipi syst errors. Responsible: R. Bala
885 // 2011 2.76 TeV pp sample
886 //
887 AliInfo(" Settings for D+ --> K pi pi p-p collisions at 2.76 TeV");
888
889 // Normalization
890 fNorm = new TH1F("fNorm","fNorm",20,0,20);
f9a85c82 891 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.031); // 10% error on sigmaV0and
a8c3295d 892
893 // Branching ratio
894 fBR = new TH1F("fBR","fBR",20,0,20);
f7c8a2f1 895 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.021); // 2.1% PDG2010
a8c3295d 896
897 // Tracking efficiency
898 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
27360a0e 899 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.15); // 3% (1% per track)
a8c3295d 900
901 // Raw yield extraction
902 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
903 fRawYield->SetBinContent(1,1);
904 fRawYield->SetBinContent(2,1);
f9a85c82 905 for(Int_t i=3;i<=6;i++) fRawYield->SetBinContent(i,0.10); //5 to 10%
906 fRawYield->SetBinContent(7,0.15);
907 fRawYield->SetBinContent(8,0.15);
908 for(Int_t i=9;i<=20;i++) fRawYield->SetBinContent(i,0.055); //5 to 10%
a8c3295d 909
910 // Cuts efficiency (from cuts variation)
911 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
f9a85c82 912 for(Int_t i=1;i<=20;i++) fCutsEff->SetBinContent(i,0.15); // 10%
a8c3295d 913
914 // PID efficiency (from PID/noPID)
915 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
916 for(Int_t i=1;i<=20;i++) fPIDEff->SetBinContent(i,0.05); // 5%
f9a85c82 917 fPIDEff->SetBinContent(3,0.10); // 13%
918 fPIDEff->SetBinContent(4,0.10); // 13%
a8c3295d 919
920 // MC dN/dpt (copied from D0 : will update later)
921 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
27360a0e 922 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.01);
578bfbba 923 fMCPtShape->SetBinContent(1,0.03);
924 fMCPtShape->SetBinContent(2,0.03);
a8c3295d 925
926 return;
927}
928
5541b811 929//--------------------------------------------------------------------------
930void AliHFSystErr::InitDstartoD0pi2010pp() {
0233abe6 931 //
2cf98d0d 932 // D*+->D0pi syst errors. Responsible: A. Grelli, Y. Wang
5541b811 933 // 2010 pp sample
0233abe6 934 //
935
2cf98d0d 936 // Normalization
fa2be30c 937 fNorm = new TH1F("fNorm","fNorm",24,0,24);
27360a0e 938 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.035); // 4% error on sigmaV0and
fa2be30c 939
940 // Branching ratio
941 fBR = new TH1F("fBR","fBR",24,0,24);
942 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
943
944 // Tracking efficiency
945 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);
946 fTrackingEff->SetBinContent(1,1.0);
f8bc42d3 947 fTrackingEff->SetBinContent(2,0.13); // 10% (ITSsa) \oplus 8% (4% per ITSTPC track)
948 fTrackingEff->SetBinContent(3,0.12);
949 fTrackingEff->SetBinContent(3,0.12);
950 for(Int_t i=4;i<=24;i++) fTrackingEff->SetBinContent(i,0.12); // 12% (4% per track)
fa2be30c 951
952
953 // Raw yield extraction
954 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
955 fRawYield->SetBinContent(1,1.0);
d2e5959f 956 fRawYield->SetBinContent(2,0.10);
fa2be30c 957 fRawYield->SetBinContent(3,0.04);
d2e5959f 958 fRawYield->SetBinContent(4,0.03);
fa2be30c 959 fRawYield->SetBinContent(5,0.03);
d2e5959f 960 fRawYield->SetBinContent(6,0.05);
961 fRawYield->SetBinContent(7,0.05);
962 fRawYield->SetBinContent(8,0.05);
963 for(Int_t i=9;i<=12;i++) fRawYield->SetBinContent(i,0.04); //4%
964 for(Int_t i=13;i<=16;i++) fRawYield->SetBinContent(i,0.09); //4%
965 for(Int_t i=17;i<=24;i++) fRawYield->SetBinContent(i,0.2); //4%
fa2be30c 966
967 // Cuts efficiency (from cuts variation)
968 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
969 fCutsEff->SetBinContent(2,0.22);
970 for(Int_t i=3;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
971
972 // PID efficiency (from PID/noPID)
973 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
974 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.04); // 3%
975
976
977 // MC dN/dpt (copied from D0 : will update later)
978 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
578bfbba 979 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0);
980 fMCPtShape->SetBinContent(1,0.03);
981 fMCPtShape->SetBinContent(2,0.03);
fa2be30c 982
983 return;
984
985
986}
987//--------------------------------------------------------------------------
988void AliHFSystErr::InitDstartoD0pi2010ppLowEn() {
989
990 //
991 // D+->Kpipi syst errors. Responsible: A. Grelli
992 // 2011 2.76 TeV pp sample
993 //
994 AliInfo(" Settings for D*+ --> D0 pi p-p collisions at 2.76 TeV");
995
996// Normalization
2cf98d0d 997 fNorm = new TH1F("fNorm","fNorm",20,0,20);
f9a85c82 998 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.031); // 10% error on sigmaV0and
2cf98d0d 999
1000 // Branching ratio
1001 fBR = new TH1F("fBR","fBR",20,0,20);
8accac87 1002 for(Int_t i=1;i<=20;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
2cf98d0d 1003
1004 // Tracking efficiency
1005 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",20,0,20);
27360a0e 1006 for(Int_t i=1;i<=20;i++) fTrackingEff->SetBinContent(i,0.15); //10% (to be checked!!)
2cf98d0d 1007
1008 // Raw yield extraction
1009 fRawYield = new TH1F("fRawYield","fRawYield",20,0,20);
8accac87 1010 fRawYield->SetBinContent(1,1);
fa2be30c 1011 fRawYield->SetBinContent(2,1);
f9a85c82 1012 fRawYield->SetBinContent(3,0.14);
1013 fRawYield->SetBinContent(4,0.14);
1014 fRawYield->SetBinContent(5,0.12);
1015 fRawYield->SetBinContent(6,0.12);
1016 fRawYield->SetBinContent(7,0.06);
1017 fRawYield->SetBinContent(8,0.06);
1018 fRawYield->SetBinContent(9,0.08);
1019 fRawYield->SetBinContent(10,0.08);
1020 fRawYield->SetBinContent(11,0.08);
1021 fRawYield->SetBinContent(12,0.08);
fa2be30c 1022 for(Int_t i=9;i<=20;i++) fRawYield->SetBinContent(i,0.065);
2cf98d0d 1023
1024 // Cuts efficiency (from cuts variation)
1025 fCutsEff = new TH1F("fCutsEff","fCutsEff",20,0,20);
f9a85c82 1026 for(Int_t i=1;i<=20;i++) fCutsEff->SetBinContent(i,0.10);
1027 fCutsEff->SetBinContent(3,0.15);
1028 fCutsEff->SetBinContent(4,0.15);
1029 fCutsEff->SetBinContent(5,0.15);
1030 fCutsEff->SetBinContent(6,0.15);
1031 fCutsEff->SetBinContent(7,0.10);
1032 fCutsEff->SetBinContent(8,0.10);
1033 fCutsEff->SetBinContent(9,0.10);
1034 fCutsEff->SetBinContent(10,0.10);
1035 fCutsEff->SetBinContent(11,0.10);
1036 fCutsEff->SetBinContent(12,0.10);
2cf98d0d 1037
1038 // PID efficiency (from PID/noPID)
1039 fPIDEff = new TH1F("fPIDEff","fPIDEff",20,0,20);
fa2be30c 1040 for(Int_t i=1;i<=20;i++) fPIDEff->SetBinContent(i,0.05); // 10%
2cf98d0d 1041
fa2be30c 1042 // MC dN/dpt
2cf98d0d 1043 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",20,0,20);
27360a0e 1044 for(Int_t i=1;i<=20;i++) fMCPtShape->SetBinContent(i,0.01);
578bfbba 1045 fMCPtShape->SetBinContent(1,0.03);
1046 fMCPtShape->SetBinContent(2,0.03);
2cf98d0d 1047
0233abe6 1048 return;
1049}
6c388dee 1050
fa2be30c 1051//------------------------------------------------------------------------
5541b811 1052void AliHFSystErr::InitDstartoD0pi2010PbPb020() {
1053 //
fa2be30c 1054 // D*+->D0pi syst errors. Responsible: A. Grelli
5541b811 1055 // 2010 PbPb sample, 0-20 CC
1056 //
1057
fa2be30c 1058 AliInfo(" Settings for D*+ --> D0pi Pb-Pb collisions at 2.76 TeV - 0-20 centrality - DUMMY");
1059
1060 // Normalization
1061 fNorm = new TH1F("fNorm","fNorm",24,0,24);
d5e15690 1062 for(Int_t i=1;i<=20;i++) fNorm->SetBinContent(i,0.05); // TAA and pp norm
fa2be30c 1063
1064 // Branching ratio
1065 fBR = new TH1F("fBR","fBR",24,0,24);
1066 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
1067
1068 // Tracking efficiency
1069 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);;
69bcc748 1070 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
fa2be30c 1071
1072
1073 // Raw yield extraction
1074 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
6c388dee 1075 for(Int_t i=1;i<=24;i++) fRawYield->SetBinContent(i,0.1); //4%
1076 fRawYield->SetBinContent(3,0.2);
1077 fRawYield->SetBinContent(4,0.2);
1078 fRawYield->SetBinContent(5,0.2);
1079 fRawYield->SetBinContent(6,0.2);
fa2be30c 1080
1081 // Cuts efficiency (from cuts variation)
1082 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
1083 for(Int_t i=1;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
6fd587a4 1084 fCutsEff->SetBinContent(4,0.15);
1085 fCutsEff->SetBinContent(5,0.15);
1086 fCutsEff->SetBinContent(6,0.15);
fa2be30c 1087
1088 // PID efficiency (from PID/noPID)
1089 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
6c388dee 1090 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.05); // 3%
fa2be30c 1091
1092
6fd587a4 1093 // MC dN/dpt (from study on D* pt shape)
fa2be30c 1094 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
6fd587a4 1095 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0.045);
1096 fMCPtShape->SetBinContent(4,0.025);
1097 fMCPtShape->SetBinContent(5,0.025);
1098 fMCPtShape->SetBinContent(6,0.025);
1099 fMCPtShape->SetBinContent(7,0.04);
1100 fMCPtShape->SetBinContent(8,0.04);
1101 fMCPtShape->SetBinContent(9,0.03);
1102 fMCPtShape->SetBinContent(10,0.03);
1103 fMCPtShape->SetBinContent(11,0.03);
1104 fMCPtShape->SetBinContent(12,0.03);
1105
9a8b5080 1106 return;
1107
1108}
1109// ----------------------------- 2011 ----------------------------------
1110void AliHFSystErr::InitDstartoD0pi2011PbPb07half() {
1111 //
1112 // D*+->D0pi syst errors. Responsible: A. Grelli
1113 // 2011 PbPb sample, 0-7.5 CC
1114 //
1115
1116 AliInfo(" Settings for D*+ --> D0pi Pb-Pb collisions at 2.76 TeV - 0-7.5 centrality - DUMMY");
1117
1118
1119 // Normalization
1120 fNorm = new TH1F("fNorm","fNorm",36,0,36);
a713683e 1121 for(Int_t i=1;i<=36;i++) fNorm->SetBinContent(i,0.048); // TAA and pp norm
9a8b5080 1122
1123 // Branching ratio
1124 fBR = new TH1F("fBR","fBR",36,0,36);
1125 for(Int_t i=1;i<=36;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
1126
1127 // Tracking efficiency
1128 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",36,0,36);;
1129 for(Int_t i=1;i<=36;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
1130
1131
1132 // Raw yield extraction
1133 fRawYield = new TH1F("fRawYield","fRawYield",36,0,36);
1134 for(Int_t i=1;i<=36;i++) fRawYield->SetBinContent(i,0.05); //4%
ada850b0 1135 fRawYield->SetBinContent(4,0.2);
9a8b5080 1136 fRawYield->SetBinContent(5,0.10);
ada850b0 1137 fRawYield->SetBinContent(6,0.10);
1138 fRawYield->SetBinContent(7,0.08);
9a8b5080 1139 for(Int_t i=25;i<=36;i++) fRawYield->SetBinContent(i,0.15); //4%
1140
9a8b5080 1141 // Cuts efficiency (from cuts variation)
1142 fCutsEff = new TH1F("fCutsEff","fCutsEff",36,0,36);
1143 for(Int_t i=1;i<=36;i++) fCutsEff->SetBinContent(i,0.10); // 10%
9a8b5080 1144
1145 // PID efficiency (from PID/noPID)
1146 fPIDEff = new TH1F("fPIDEff","fPIDEff",36,0,36);
1147 for(Int_t i=1;i<=36;i++) fPIDEff->SetBinContent(i,0.05); // 3%
ada850b0 1148 fPIDEff->SetBinContent(4,0.09);
9a8b5080 1149
1150 // MC dN/dpt (from study on D* pt shape)
1151 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",36,0,36);
273a7638 1152 for(Int_t i=1;i<=36;i++) fMCPtShape->SetBinContent(i,0.035);
1153 fMCPtShape->SetBinContent(4,0.015);
1154 fMCPtShape->SetBinContent(5,0.015);
1155 fMCPtShape->SetBinContent(6,0.015);
1156 fMCPtShape->SetBinContent(7,0.02);
1157 fMCPtShape->SetBinContent(8,0.02);
9a8b5080 1158 fMCPtShape->SetBinContent(9,0.03);
1159 fMCPtShape->SetBinContent(10,0.03);
1160 fMCPtShape->SetBinContent(11,0.03);
1161 fMCPtShape->SetBinContent(12,0.03);
1162
6fd587a4 1163
fa2be30c 1164
1165 return;
1166
1167}
1168//-------------------------------------------------------------------------
1169void AliHFSystErr::InitDstartoD0pi2010PbPb2040() {
1170 //
1171 // D*+->D0pi syst errors. Responsible: A. Grelli
1172 // 2010 PbPb sample, 20-40 CC
1173 //
1174
1175 AliInfo(" Settings for D*+ --> D0pi Pb-Pb collisions at 2.76 TeV - 20-40 centrality - DUMMY");
1176
1177 // Normalization
1178 fNorm = new TH1F("fNorm","fNorm",24,0,24);
1179 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.10); // 10% error on sigmaV0and
1180
1181 // Branching ratio
1182 fBR = new TH1F("fBR","fBR",24,0,24);
1183 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
1184
1185 // Tracking efficiency
1186 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);;
69bcc748 1187 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
fa2be30c 1188
1189
1190 // Raw yield extraction
1191 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
1192 for(Int_t i=1;i<=24;i++) fRawYield->SetBinContent(i,0.15); //4%
1193
1194 // Cuts efficiency (from cuts variation)
1195 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
1196 for(Int_t i=1;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
1197
1198 // PID efficiency (from PID/noPID)
1199 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
1200 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.04); // 3%
1201
1202
1203 // MC dN/dpt (copied from D0 : will update later)
1204 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
578bfbba 1205 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0.);
1206 fMCPtShape->SetBinContent(1,0.03);
1207 fMCPtShape->SetBinContent(2,0.03);
fa2be30c 1208
5541b811 1209 return;
fa2be30c 1210
5541b811 1211}
6c388dee 1212
5541b811 1213//--------------------------------------------------------------------------
1214void AliHFSystErr::InitDstartoD0pi2010PbPb4080() {
1215 //
fa2be30c 1216 // D*+->D0pi syst errors. Responsible: A. Grelli
5541b811 1217 // 2010 PbPb sample, 40-80 CC
1218 //
1219
fa2be30c 1220 AliInfo(" Settings for D*+ --> D0pi Pb-Pb collisions at 2.76 TeV - 40-80 centrality - DUMMY");
1221
1222 // Normalization
1223 fNorm = new TH1F("fNorm","fNorm",24,0,24);
d5e15690 1224 for(Int_t i=1;i<=24;i++) fNorm->SetBinContent(i,0.07); // TAA and pp norm
fa2be30c 1225
1226 // Branching ratio
1227 fBR = new TH1F("fBR","fBR",24,0,24);
1228 for(Int_t i=1;i<=24;i++) fBR->SetBinContent(i,0.015); // 1.5% PDG2010
1229
1230 // Tracking efficiency
1231 fTrackingEff = new TH1F("fTrackingEff","fTrackingEff",24,0,24);;
69bcc748 1232 for(Int_t i=1;i<=24;i++) fTrackingEff->SetBinContent(i,0.15); // Jacek, 5% per track
fa2be30c 1233
1234
1235 // Raw yield extraction
1236 fRawYield = new TH1F("fRawYield","fRawYield",24,0,24);
6c388dee 1237 for(Int_t i=1;i<=24;i++) fRawYield->SetBinContent(i,0.2); //4%
1238 fRawYield->SetBinContent(1,1);
1239 fRawYield->SetBinContent(2,0.15);
1240 fRawYield->SetBinContent(3,0.15);
1241 fRawYield->SetBinContent(4,0.15);
1242 fRawYield->SetBinContent(5,0.15);
1243 fRawYield->SetBinContent(6,0.10);
1244 fRawYield->SetBinContent(7,0.10);
1245 fRawYield->SetBinContent(8,0.10);
1246 fRawYield->SetBinContent(9,0.11);
1247 fRawYield->SetBinContent(10,0.11);
1248 fRawYield->SetBinContent(11,0.11);
1249 fRawYield->SetBinContent(12,0.11);
1250 fRawYield->SetBinContent(13,0.08);
1251 fRawYield->SetBinContent(14,0.08);
1252 fRawYield->SetBinContent(15,0.08);
1253 fRawYield->SetBinContent(16,0.08);
1254
1255
fa2be30c 1256 // Cuts efficiency (from cuts variation)
1257 fCutsEff = new TH1F("fCutsEff","fCutsEff",24,0,24);
1258 for(Int_t i=1;i<=24;i++) fCutsEff->SetBinContent(i,0.10); // 10%
1259
1260 // PID efficiency (from PID/noPID)
1261 fPIDEff = new TH1F("fPIDEff","fPIDEff",24,0,24);
6c388dee 1262 for(Int_t i=1;i<=24;i++) fPIDEff->SetBinContent(i,0.05); // 3%
fa2be30c 1263
1264
1265 // MC dN/dpt (copied from D0 : will update later)
1266 fMCPtShape = new TH1F("fMCPtShape","fMCPtShape",24,0,24);
6fd587a4 1267 for(Int_t i=1;i<=24;i++) fMCPtShape->SetBinContent(i,0.01);
1268 fMCPtShape->SetBinContent(2,0.05);
1269 fMCPtShape->SetBinContent(3,0.05);
1270 fMCPtShape->SetBinContent(4,0.05);
1271 fMCPtShape->SetBinContent(5,0.04);
1272 fMCPtShape->SetBinContent(6,0.02);
1273 fMCPtShape->SetBinContent(7,0.04);
1274 fMCPtShape->SetBinContent(8,0.04);
1275
5541b811 1276 return;
fa2be30c 1277
5541b811 1278}
6c388dee 1279
414bc6a5 1280//--------------------------------------------------------------------------
1281void AliHFSystErr::InitD0toKpi2010PbPb010CentScan(){
1282 // define errors for RAA vs. centrality
1283 InitD0toKpi2010PbPb020();
41cfcd39 1284 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.05);
27360a0e 1285 for(Int_t i=3;i<=5;i++) fMCPtShape->SetBinContent(i,0.17);
41cfcd39 1286 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1287}
1288//--------------------------------------------------------------------------
1289void AliHFSystErr::InitD0toKpi2010PbPb1020CentScan(){
1290 // define errors for RAA vs. centrality
1291 InitD0toKpi2010PbPb020();
41cfcd39 1292 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.05);
27360a0e 1293 for(Int_t i=3;i<=5;i++) fMCPtShape->SetBinContent(i,0.17);
41cfcd39 1294 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1295}
1296//--------------------------------------------------------------------------
1297void AliHFSystErr::InitD0toKpi2010PbPb2040CentScan(){
1298 // define errors for RAA vs. centrality
41cfcd39 1299 InitD0toKpi2010PbPb4080();
1300 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.05);
27360a0e 1301 for(Int_t i=3;i<=5;i++) fMCPtShape->SetBinContent(i,0.14);
41cfcd39 1302 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1303}
1304//--------------------------------------------------------------------------
1305void AliHFSystErr::InitD0toKpi2010PbPb4060CentScan(){
41cfcd39 1306 // define errors for RAA vs. centrality
414bc6a5 1307 InitD0toKpi2010PbPb4080();
41cfcd39 1308 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.06);
27360a0e 1309 for(Int_t i=3;i<=5;i++) fMCPtShape->SetBinContent(i,0.11);
41cfcd39 1310 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1311}
1312//--------------------------------------------------------------------------
1313void AliHFSystErr::InitD0toKpi2010PbPb6080CentScan(){
41cfcd39 1314 // define errors for RAA vs. centrality
414bc6a5 1315 InitD0toKpi2010PbPb4080();
41cfcd39 1316 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.08);
27360a0e 1317 for(Int_t i=3;i<=5;i++) fMCPtShape->SetBinContent(i,0.08);
41cfcd39 1318 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1319}
1320//--------------------------------------------------------------------------
1321void AliHFSystErr::InitDplustoKpipi2010PbPb010CentScan(){
1322 // define errors for RAA vs. centrality
1323 InitDplustoKpipi2010PbPb020();
7b03f1ec 1324 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.18);
eefab142 1325 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.09);
7b03f1ec 1326
414bc6a5 1327}
1328//--------------------------------------------------------------------------
1329void AliHFSystErr::InitDplustoKpipi2010PbPb1020CentScan(){
1330 // define errors for RAA vs. centrality
1331 InitDplustoKpipi2010PbPb020();
7b03f1ec 1332 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.23);
eefab142 1333 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1334}
1335//--------------------------------------------------------------------------
1336void AliHFSystErr::InitDplustoKpipi2010PbPb2040CentScan(){
1337 // define errors for RAA vs. centrality
1338 InitDplustoKpipi2010PbPb020();
7b03f1ec 1339 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.08);
eefab142 1340 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.095);
414bc6a5 1341}
1342//--------------------------------------------------------------------------
1343void AliHFSystErr::InitDplustoKpipi2010PbPb4060CentScan(){
1344 // define errors for RAA vs. centrality
1345 InitDplustoKpipi2010PbPb4080();
7b03f1ec 1346 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.08);
eefab142 1347 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1348}
1349//--------------------------------------------------------------------------
1350void AliHFSystErr::InitDplustoKpipi2010PbPb6080CentScan(){
1351 // define errors for RAA vs. centrality
1352 InitDplustoKpipi2010PbPb4080();
7b03f1ec 1353 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.15);
eefab142 1354 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.07);
414bc6a5 1355}
1356
1357//--------------------------------------------------------------------------
1358void AliHFSystErr::InitDstartoD0pi2010PbPb010CentScan(){
1359 // define errors for RAA vs. centrality
1360 InitDstartoD0pi2010PbPb020();
1361 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.16);
eefab142 1362 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.15);
414bc6a5 1363}
1364//--------------------------------------------------------------------------
1365void AliHFSystErr::InitDstartoD0pi2010PbPb1020CentScan(){
1366 // define errors for RAA vs. centrality
1367 InitDstartoD0pi2010PbPb020();
1368 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.05);
eefab142 1369 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.15);
414bc6a5 1370}
1371//--------------------------------------------------------------------------
1372void AliHFSystErr::InitDstartoD0pi2010PbPb2040CentScan(){
1373 // define errors for RAA vs. centrality
1374 InitDstartoD0pi2010PbPb2040();
1375 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.10);
eefab142 1376 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.08);
414bc6a5 1377}
1378//--------------------------------------------------------------------------
1379void AliHFSystErr::InitDstartoD0pi2010PbPb4060CentScan(){
1380 // define errors for RAA vs. centrality
1381 InitDstartoD0pi2010PbPb4080();
1382 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.10);
eefab142 1383 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.045);
414bc6a5 1384}
1385//--------------------------------------------------------------------------
1386void AliHFSystErr::InitDstartoD0pi2010PbPb6080CentScan(){
1387 // define errors for RAA vs. centrality
1388 InitDstartoD0pi2010PbPb4080();
1389 for(Int_t i=7;i<=12;i++) fRawYield->SetBinContent(i,0.10);
eefab142 1390 for(Int_t i=7;i<=12;i++) fMCPtShape->SetBinContent(i,0.045);
414bc6a5 1391}
1392
1393
5541b811 1394//--------------------------------------------------------------------------
0233abe6 1395Double_t AliHFSystErr::GetCutsEffErr(Double_t pt) const {
1396 //
1397 // Get error
1398 //
1399
1400 Int_t bin=fCutsEff->FindBin(pt);
1401
1402 return fCutsEff->GetBinContent(bin);
1403}
1404//--------------------------------------------------------------------------
1405Double_t AliHFSystErr::GetMCPtShapeErr(Double_t pt) const {
1406 //
1407 // Get error
1408 //
1409
1410 Int_t bin=fMCPtShape->FindBin(pt);
1411
1412 return fMCPtShape->GetBinContent(bin);
1413}
1414//--------------------------------------------------------------------------
1415Double_t AliHFSystErr::GetSeleEffErr(Double_t pt) const {
1416 //
1417 // Get error
1418 //
1419
1420 Double_t err=GetCutsEffErr(pt)*GetCutsEffErr(pt)+GetMCPtShapeErr(pt)*GetMCPtShapeErr(pt);
1421
1422 return TMath::Sqrt(err);
1423}
1424//--------------------------------------------------------------------------
1425Double_t AliHFSystErr::GetPIDEffErr(Double_t pt) const {
1426 //
1427 // Get error
1428 //
1429
1430 Int_t bin=fPIDEff->FindBin(pt);
1431
1432 return fPIDEff->GetBinContent(bin);
1433}
1434//--------------------------------------------------------------------------
1435Double_t AliHFSystErr::GetTrackingEffErr(Double_t pt) const {
1436 //
1437 // Get error
1438 //
1439
1440 Int_t bin=fTrackingEff->FindBin(pt);
1441
1442 return fTrackingEff->GetBinContent(bin);
1443}
1444//--------------------------------------------------------------------------
1445Double_t AliHFSystErr::GetRawYieldErr(Double_t pt) const {
1446 //
1447 // Get error
1448 //
1449
1450 Int_t bin=fRawYield->FindBin(pt);
1451
1452 return fRawYield->GetBinContent(bin);
1453}
1454//--------------------------------------------------------------------------
1455Double_t AliHFSystErr::GetPartAntipartErr(Double_t pt) const {
1456 //
1457 // Get error
1458 //
1459
1460 Int_t bin=fPartAntipart->FindBin(pt);
1461
1462 return fPartAntipart->GetBinContent(bin);
1463}
1464//--------------------------------------------------------------------------
1465Double_t AliHFSystErr::GetTotalSystErr(Double_t pt,Double_t feeddownErr) const {
1466 //
1467 // Get total syst error (except norm. error)
1468 //
1469
1470 Double_t err=0.;
1471
1472 if(fRawYield) err += GetRawYieldErr(pt)*GetRawYieldErr(pt);
1473 if(fTrackingEff) err += GetTrackingEffErr(pt)*GetTrackingEffErr(pt);
f9a85c82 1474 // if(fBR) err += GetBRErr()*GetBRErr();
0233abe6 1475 if(fCutsEff) err += GetCutsEffErr(pt)*GetCutsEffErr(pt);
1476 if(fPIDEff) err += GetPIDEffErr(pt)*GetPIDEffErr(pt);
1477 if(fMCPtShape) err += GetMCPtShapeErr(pt)*GetMCPtShapeErr(pt);
1478 if(fPartAntipart) err += GetPartAntipartErr(pt)*GetPartAntipartErr(pt);
1479
1480 err += feeddownErr*feeddownErr;
1481
1482 return TMath::Sqrt(err);
1483}
1484//---------------------------------------------------------------------------
5ad8ad40 1485void AliHFSystErr::DrawErrors(TGraphAsymmErrors *grErrFeeddown) const {
0233abe6 1486 //
1487 // Draw errors
1488 //
1489 gStyle->SetOptStat(0);
1490
a07118d0 1491 TCanvas *cSystErr = new TCanvas("cSystErr","Systematic Errors",300,80,640,500);
1492 cSystErr->Range(0.20,-0.5,18.4,0.34);
1493 cSystErr->SetRightMargin(0.318);
0233abe6 1494 cSystErr->SetFillColor(0);
1495
436b185f 1496 TH2F *hFrame = new TH2F("hFrame","Systematic errors; p_{t} (GeV/c); Relative Error",40,0,40,100,-1,+1);
1497 hFrame->SetAxisRange(1.,35.9,"X");
a07118d0 1498 hFrame->SetAxisRange(-0.5,0.5,"Y");
0233abe6 1499 hFrame->Draw();
1500
a07118d0 1501 TLegend *leg = new TLegend(0.69,0.44,0.98,0.86,NULL,"brNDC");
1502 leg->SetTextSize(0.03601695);
0233abe6 1503 leg->SetFillStyle(0);
1504 leg->SetBorderSize(0);
2ee3afe2 1505
436b185f 1506 TH1F *hTotErr=new TH1F("hTotErr","",36,0,36);
2ee3afe2 1507 Int_t nbins = fNorm->GetNbinsX();
1508 TGraphAsymmErrors *gTotErr = new TGraphAsymmErrors(nbins);
436b185f 1509 for(Int_t i=1;i<=36;i++) {
2ee3afe2 1510 Double_t pt = hTotErr->GetBinCenter(i);
1511 Double_t ptwidth = hTotErr->GetBinWidth(i);
1512
1513 if(grErrFeeddown) {
1514 Double_t x=0., y=0., errxl=0., errxh=0., erryl=0., erryh=0.;
1515 Double_t toterryl=0., toterryh=0.;
1516 for(Int_t j=0; j<grErrFeeddown->GetN(); j++) {
1517 grErrFeeddown->GetPoint(j,x,y);
1518 errxh = grErrFeeddown->GetErrorXhigh(j);
1519 errxl = grErrFeeddown->GetErrorXlow(j);
a07118d0 1520 if ( ( (x-errxl) <= pt) && ( (x+errxl) >= pt) ) {
2ee3afe2 1521 erryh = grErrFeeddown->GetErrorYhigh(j);
1522 erryl = grErrFeeddown->GetErrorYlow(j);
1523 }
1524 }
1525 if (erryl>=1e-3) toterryl = GetTotalSystErr(pt,erryl);
1526 else toterryl = GetTotalSystErr(pt);
1527 if (erryh>=1e-3) toterryh = GetTotalSystErr(pt,erryh);
1528 else toterryh = GetTotalSystErr(pt);
1529
1530 hTotErr->SetBinContent(i,toterryh);
1531 gTotErr->SetPoint(i,pt,0.);
1532 gTotErr->SetPointError(i,ptwidth/2.,ptwidth/2.,toterryl,toterryh); // i, exl, exh, eyl, eyh
1533 }
1534 else {
1535 hTotErr->SetBinContent(i,GetTotalSystErr(pt));
1536 gTotErr->SetPoint(i,pt,0.);
1537 gTotErr->SetPointError(i,ptwidth/2.,ptwidth/2.,GetTotalSystErr(pt),GetTotalSystErr(pt)); // i, exl, exh, eyl, eyh
1538 }
1539
1540 }
f968ef30 1541 gTotErr->SetLineColor(kBlack);
1542 gTotErr->SetFillColor(kRed);
1543 gTotErr->SetFillStyle(3002);
2ee3afe2 1544 gTotErr->Draw("2");
1545 leg->AddEntry(gTotErr,"Total (excl. norm.)","f");
1546// hTotErr->SetLineColor(1);
1547// hTotErr->SetLineWidth(3);
1548// hTotErr->Draw("same");
1549// leg->AddEntry(hTotErr,"Total (excl. norm.)","l");
1550
0233abe6 1551
e373b9f0 1552 fNorm->SetFillColor(1);
1553 fNorm->SetFillStyle(3002);
1554 //fNorm->Draw("same");
1555 //TH1F *hNormRefl = ReflectHisto(fNorm);
1556 //hNormRefl->Draw("same");
27360a0e 1557 Double_t norm = fNorm->GetBinContent(1)*100;
1558 leg->AddEntry(fNorm,Form("Normalization (%.1f%s)",norm,"%"),"");
e373b9f0 1559
5ad8ad40 1560 if(grErrFeeddown) {
1561 grErrFeeddown->SetFillColor(kTeal-8);
1562 grErrFeeddown->SetFillStyle(3001);
1563 grErrFeeddown->Draw("2");
1564 leg->AddEntry(grErrFeeddown,"Feed-down from B","f");
1565 }
0233abe6 1566 if(fTrackingEff) {
5ad8ad40 1567 fTrackingEff->SetFillColor(4);
1568 fTrackingEff->SetFillStyle(3006);
0233abe6 1569 fTrackingEff->Draw("same");
f968ef30 1570 TH1F *hTrackingEffRefl = ReflectHisto(fTrackingEff);
1571 hTrackingEffRefl->Draw("same");
0233abe6 1572 leg->AddEntry(fTrackingEff,"Tracking efficiency","f");
1573 }
1574 if(fBR) {
1575 fBR->SetFillColor(6);
1576 fBR->SetFillStyle(3005);
5ad8ad40 1577 //fBR->SetFillStyle(3020);
0233abe6 1578 fBR->Draw("same");
f968ef30 1579 TH1F *hBRRefl = ReflectHisto(fBR);
1580 hBRRefl->Draw("same");
0233abe6 1581 leg->AddEntry(fBR,"Branching ratio","f");
1582 }
1583 if(fRawYield) {
5ad8ad40 1584 Int_t ci; // for color index setting
1585 ci = TColor::GetColor("#00cc00");
1586 fRawYield->SetLineColor(ci);
1587 // fRawYield->SetLineColor(3);
0233abe6 1588 fRawYield->SetLineWidth(3);
1589 fRawYield->Draw("same");
f968ef30 1590 TH1F *hRawYieldRefl = ReflectHisto(fRawYield);
1591 hRawYieldRefl->Draw("same");
844405bc 1592 leg->AddEntry(fRawYield,"Yield extraction","l");
0233abe6 1593 }
1594 if(fCutsEff) {
1595 fCutsEff->SetLineColor(4);
1596 fCutsEff->SetLineWidth(3);
1597 fCutsEff->Draw("same");
f968ef30 1598 TH1F *hCutsEffRefl = ReflectHisto(fCutsEff);
1599 hCutsEffRefl->Draw("same");
0233abe6 1600 leg->AddEntry(fCutsEff,"Cuts efficiency","l");
1601 }
1602 if(fPIDEff) {
1603 fPIDEff->SetLineColor(7);
1604 fPIDEff->SetLineWidth(3);
1605 fPIDEff->Draw("same");
f968ef30 1606 TH1F *hPIDEffRefl = ReflectHisto(fPIDEff);
1607 hPIDEffRefl->Draw("same");
0233abe6 1608 leg->AddEntry(fPIDEff,"PID efficiency","l");
1609 }
1610 if(fMCPtShape) {
5ad8ad40 1611 Int_t ci = TColor::GetColor("#9933ff");
1612 fMCPtShape->SetLineColor(ci);
1613 // fMCPtShape->SetLineColor(8);
0233abe6 1614 fMCPtShape->SetLineWidth(3);
1615 fMCPtShape->Draw("same");
f968ef30 1616 TH1F *hMCPtShapeRefl = ReflectHisto(fMCPtShape);
1617 hMCPtShapeRefl->Draw("same");
0233abe6 1618 leg->AddEntry(fMCPtShape,"MC p_{t} shape","l");
1619 }
1620 if(fPartAntipart) {
5ad8ad40 1621 Int_t ci = TColor::GetColor("#ff6600");
1622 fPartAntipart->SetLineColor(ci);
1623 // fPartAntipart->SetLineColor(9);
0233abe6 1624 fPartAntipart->SetLineWidth(3);
1625 fPartAntipart->Draw("same");
f968ef30 1626 TH1F *hPartAntipartRefl = ReflectHisto(fPartAntipart);
1627 hPartAntipartRefl->Draw("same");
0233abe6 1628 leg->AddEntry(fPartAntipart,"D = #bar{D}","l");
1629 }
0233abe6 1630
0233abe6 1631
1632 leg->Draw();
1633
5ad8ad40 1634 cSystErr->SaveAs("RelativeSystematics.eps");
1635
0233abe6 1636 return;
1637}
f968ef30 1638//-------------------------------------------------------------------------
1639TH1F* AliHFSystErr::ReflectHisto(TH1F *hin) const {
1640 //
1641 // Clones and reflects histogram
1642 //
1643 TH1F *hout=(TH1F*)hin->Clone("hout");
1644 hout->Scale(-1.);
1645
1646 return hout;
1647}
9a8b5080 1648
ada850b0 1649
1650