1 /**************************************************************************
2 * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
19 /////////////////////////////////////////////////////////////
20 // class for systematic uncertainties on D meson -hadron correlation distribution
22 // Author: A. Rossi, andrea.rossi@cern.ch
23 /////////////////////////////////////////////////////////////
24 #include <Riostream.h>
25 #include "AliHFDhadronCorrSystUnc.h"
30 #include <TGraphAsymmErrors.h>
36 ClassImp(AliHFDhadronCorrSystUnc)
38 AliHFDhadronCorrSystUnc::AliHFDhadronCorrSystUnc() : TNamed(),
45 fhBackSubtractionMin(),
46 fhBackSubtractionMax(),
55 fhSecContaminationMin(),
56 fhSecContaminationMax(),
61 fhTotalNonFlatDPhiMin(),
62 fhTotalNonFlatDPhiMax(),
69 fgrSecContamination(),
74 fgrMCcorrectionsRel(),
75 fgrMCDefficiencyRel(),
76 fgrSecContaminationRel(),
77 fgrMCclosureTestRel(),
82 fgrTotalNonFlatDPhi(),
83 fgrTotalNonFlatDPhiRel(),
88 // default constructor
92 AliHFDhadronCorrSystUnc::AliHFDhadronCorrSystUnc(const char* name) :
100 fhBackSubtractionMin(),
101 fhBackSubtractionMax(),
104 fhMCclosureTestMin(),
105 fhMCclosureTestMax(),
106 fhMCcorrectionsMin(),
107 fhMCcorrectionsMax(),
108 fhMCDefficiencyMin(),
109 fhMCDefficiencyMax(),
110 fhSecContaminationMin(),
111 fhSecContaminationMax(),
116 fhTotalNonFlatDPhiMin(),
117 fhTotalNonFlatDPhiMax(),
124 fgrSecContamination(),
129 fgrMCcorrectionsRel(),
130 fgrMCDefficiencyRel(),
131 fgrSecContaminationRel(),
132 fgrMCclosureTestRel(),
137 fgrTotalNonFlatDPhi(),
138 fgrTotalNonFlatDPhiRel(),
140 fgrTotalFlatDPhiRel()
142 // default constructor
147 AliHFDhadronCorrSystUnc::~AliHFDhadronCorrSystUnc(){
150 delete fhDeltaPhiTemplate;
151 delete fhYieldExtraction;
152 delete fhBackSubtractionMin;
153 delete fhBackSubtractionMax;
154 delete fhBeautyFDmin;
155 delete fhBeautyFDmax;
156 delete fhMCclosureTestMin;
157 delete fhMCclosureTestMax;
158 delete fhMCcorrectionsMin;
159 delete fhMCcorrectionsMax;
160 delete fhMCDefficiencyMin;
161 delete fhMCDefficiencyMax;
162 delete fhSecContaminationMin;
163 delete fhSecContaminationMax;
166 delete fhTotalNonFDMin;
167 delete fhTotalNonFDMax;
168 delete fhTotalNonFlatDPhiMin;
169 delete fhTotalNonFlatDPhiMax;
173 delete fgrBackSubUnc;
174 delete fgrMCcorrections;
175 delete fgrMCDefficiency;
176 delete fgrSecContamination;
177 delete fgrMCclosureTest;
179 delete fgrYieldUncRel;
180 delete fgrBackSubUncRel;
181 delete fgrMCcorrectionsRel;
182 delete fgrMCDefficiencyRel;
183 delete fgrSecContaminationRel;
184 delete fgrMCclosureTestRel;
185 delete fgrBeautyFDRel;
188 delete fgrTotalNonFD;
189 delete fgrTotalNonFlatDPhi;
190 delete fgrTotalNonFlatDPhiRel;
191 delete fgrTotalFlatDPhi;
192 delete fgrTotalFlatDPhiRel;
197 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroLowPtAss03HP(){
198 Printf("Loading syst unc for D0 pp2010 3-5 0.3 thr");
201 fstrptAss="ptAsMore03";
203 if(!fhDeltaPhiTemplate){
204 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
207 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
208 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
209 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
210 fhYieldExtraction->SetBinContent(j,0.1);
213 // Background D MESON candidate subtraction (side-band variations, etc.)
214 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
215 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
216 fhBackSubtractionMin->SetBinContent(j,-0.05);
219 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
220 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
221 fhBackSubtractionMax->SetBinContent(j,0.05);
225 // MC CORRECTIONS ( associatate track efficiency):
226 // -5% +10% for assoc track eff
227 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
228 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
229 fhMCcorrectionsMin->SetBinContent(j,-0.05);
232 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
233 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
234 fhMCcorrectionsMax->SetBinContent(j,0.10);
237 // MC D EFF CORRECTION
238 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
239 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
240 fhMCDefficiencyMin->SetBinContent(j,-0.05);
243 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
244 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
245 fhMCDefficiencyMax->SetBinContent(j,0.05);
249 // Contamination from secondary tracks
250 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
251 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
252 fhSecContaminationMin->SetBinContent(j,-0.05);
255 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
256 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
257 fhSecContaminationMax->SetBinContent(j,0.05);
261 // MC CLOSURETEST (D meson efficiency)
262 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
263 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
264 x=fhMCclosureTestMin->GetBinLowEdge(j);
265 fhMCclosureTestMin->SetBinContent(j,-0.08);
268 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
270 else if(-0.2<x&&x<-0.1){
271 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
273 else if(-0.1<x&&x<0.1){
274 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
276 else if(0.1<x&&x<0.2){
277 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
280 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
284 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
285 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
286 // x=fhMCclosureTestMax->GetBinLowEdge(j);
287 fhMCclosureTestMax->SetBinContent(j,0.);
289 // if(-0.4<x&&x<-0.2){
290 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
292 // else if(-0.2<x&&x<-0.1){
293 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
295 // else if(-0.2<x&&x<-0.1){
296 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
298 // else if(-0.1<x&&x<0.1){
299 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
301 // else if(0.1<x&&x<0.2){
302 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
305 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
312 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
313 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
314 x=fhBeautyFDmin->GetBinLowEdge(j);
315 fhBeautyFDmin->SetBinContent(j,-0.05);
317 // if(-0.4<x&&x<-0.2){
318 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
320 // else if(-0.2<x&&x<-0.1){
321 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
323 // else if(-0.2<x&&x<-0.1){
324 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
326 // else if(-0.1<x&&x<0.1){
327 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
329 // else if(0.1<x&&x<0.2){
330 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
333 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
337 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
338 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
339 x=fhBeautyFDmax->GetBinLowEdge(j);
340 fhBeautyFDmax->SetBinContent(j,0.03);
342 // if(-0.4<x&&x<-0.2){
343 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
345 // else if(-0.2<x&&x<-0.1){
346 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
348 // else if(-0.2<x&&x<-0.1){
349 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
351 // else if(-0.1<x&&x<0.1){
352 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
354 // else if(0.1<x&&x<0.2){
355 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
358 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
365 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroMidPtAss03HP(){
366 Printf("Loading syst unc for D0 pp2010 5-8 0.3 thr");
370 fstrptAss="ptAsMore03";
372 if(!fhDeltaPhiTemplate){
373 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
376 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
377 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
378 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
379 fhYieldExtraction->SetBinContent(j,0.1);
382 // Background D MESON candidate subtraction (side-band variations, etc.)
383 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
384 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
385 fhBackSubtractionMin->SetBinContent(j,-0.05);
388 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
389 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
390 fhBackSubtractionMax->SetBinContent(j,0.05);
393 // MC CORRECTIONS: -5% +10% for assoc track eff
394 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
395 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
396 fhMCcorrectionsMin->SetBinContent(j,-0.05);
399 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
400 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
401 fhMCcorrectionsMax->SetBinContent(j,0.10);
405 // MC D EFF CORRECTION
406 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
407 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
408 fhMCDefficiencyMin->SetBinContent(j,-0.05);
411 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
412 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
413 fhMCDefficiencyMax->SetBinContent(j,0.05);
417 // Contamination from secondary tracks
418 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
419 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
420 fhSecContaminationMin->SetBinContent(j,-0.05);
423 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
424 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
425 fhSecContaminationMax->SetBinContent(j,0.05);
428 // MC CLOSURETEST (D meson efficiency)
429 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
430 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
431 x=fhMCclosureTestMin->GetBinLowEdge(j);
432 fhMCclosureTestMin->SetBinContent(j,-0.08);
435 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
437 else if(-0.2<x&&x<-0.1){
438 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
440 else if(-0.1<x&&x<0.1){
441 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
443 else if(0.1<x&&x<0.2){
444 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
447 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
451 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
452 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
453 x=fhMCclosureTestMax->GetBinLowEdge(j);
454 fhMCclosureTestMax->SetBinContent(j,0.);
456 // if(-0.4<x&&x<-0.2){
457 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
459 // else if(-0.2<x&&x<-0.1){
460 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
462 // else if(-0.2<x&&x<-0.1){
463 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
465 // else if(-0.1<x&&x<0.1){
466 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
468 // else if(0.1<x&&x<0.2){
469 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
472 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
479 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
480 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
481 x=fhBeautyFDmin->GetBinLowEdge(j);
482 fhBeautyFDmin->SetBinContent(j,-0.05);
484 // if(-0.4<x&&x<-0.2){
485 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
487 // else if(-0.2<x&&x<-0.1){
488 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
490 // else if(-0.2<x&&x<-0.1){
491 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
493 // else if(-0.1<x&&x<0.1){
494 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
496 // else if(0.1<x&&x<0.2){
497 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
500 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
504 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
505 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
506 x=fhBeautyFDmax->GetBinLowEdge(j);
507 fhBeautyFDmax->SetBinContent(j,0.03);
509 // if(-0.4<x&&x<-0.2){
510 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
512 // else if(-0.2<x&&x<-0.1){
513 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
515 // else if(-0.2<x&&x<-0.1){
516 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
518 // else if(-0.1<x&&x<0.1){
519 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
521 // else if(0.1<x&&x<0.2){
522 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
525 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
533 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroHighPtAss03HP(){
535 Printf("Loading syst unc for D0 pp2010 8-16 0.3 thr");
539 fstrptAss="ptAsMore03";
541 if(!fhDeltaPhiTemplate){
542 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
546 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
547 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
548 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
549 fhYieldExtraction->SetBinContent(j,0.1);
552 // Background D MESON candidate subtraction (side-band variations, etc.)
553 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
554 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
555 fhBackSubtractionMin->SetBinContent(j,-0.05);
558 // Background D MESON candidate subtraction (side-band variations, etc.)
559 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
560 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
561 fhBackSubtractionMax->SetBinContent(j,0.05);
564 // MC CORRECTIONS, -5% 10% for assoc track eff
565 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
566 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
567 fhMCcorrectionsMin->SetBinContent(j,-0.05);
570 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
571 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
572 fhMCcorrectionsMax->SetBinContent(j,0.10);
576 // MC D EFF CORRECTION
577 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
578 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
579 fhMCDefficiencyMin->SetBinContent(j,-0.05);
582 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
583 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
584 fhMCDefficiencyMax->SetBinContent(j,0.05);
588 // Contamination from secondary tracks
589 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
590 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
591 fhSecContaminationMin->SetBinContent(j,-0.05);
594 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
595 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
596 fhSecContaminationMax->SetBinContent(j,0.05);
599 // MC CLOSURETEST (D meson efficiency)
600 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
601 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
602 x=fhMCclosureTestMin->GetBinLowEdge(j);
603 fhMCclosureTestMin->SetBinContent(j,-0.08);
606 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
608 else if(-0.2<x&&x<-0.1){
609 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
611 else if(-0.1<x&&x<0.1){
612 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
614 else if(0.1<x&&x<0.2){
615 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
618 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
622 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
623 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
624 x=fhMCclosureTestMax->GetBinLowEdge(j);
625 fhMCclosureTestMax->SetBinContent(j,0.);
627 // if(-0.4<x&&x<-0.2){
628 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
630 // else if(-0.2<x&&x<-0.1){
631 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
633 // else if(-0.2<x&&x<-0.1){
634 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
636 // else if(-0.1<x&&x<0.1){
637 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
639 // else if(0.1<x&&x<0.2){
640 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
643 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
650 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
651 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
652 x=fhBeautyFDmin->GetBinLowEdge(j);
653 fhBeautyFDmin->SetBinContent(j,-0.05);
655 // if(-0.4<x&&x<-0.2){
656 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
658 // else if(-0.2<x&&x<-0.1){
659 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
661 // else if(-0.2<x&&x<-0.1){
662 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
664 // else if(-0.1<x&&x<0.1){
665 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
667 // else if(0.1<x&&x<0.2){
668 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
671 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
675 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
676 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
677 x=fhBeautyFDmax->GetBinLowEdge(j);
678 fhBeautyFDmax->SetBinContent(j,0.03);
680 // if(-0.4<x&&x<-0.2){
681 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
683 // else if(-0.2<x&&x<-0.1){
684 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
686 // else if(-0.2<x&&x<-0.1){
687 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
689 // else if(-0.1<x&&x<0.1){
690 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
692 // else if(0.1<x&&x<0.2){
693 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
696 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
706 //--------------------------------------------------
707 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarLowPtAss03HP(){
708 Printf("Loading syst unc for D*+ pp 2010, 3<pt(D)<5 GeV/c, pt(assoc)>0.3");
711 fstrptAss="ptAsMore03";
713 if(!fhDeltaPhiTemplate){
714 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
717 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
718 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
719 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
720 fhYieldExtraction->SetBinContent(j,0.1);
723 // Background D MESON candidate subtraction (side-band variations, etc.)
724 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
725 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
726 fhBackSubtractionMin->SetBinContent(j,-0.05);
729 // Background D MESON candidate subtraction (side-band variations, etc.)
730 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
731 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
732 fhBackSubtractionMax->SetBinContent(j,0.05);
735 // MC CORRECTIONS, -5% 10% for assoc track eff
736 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
737 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
738 fhMCcorrectionsMin->SetBinContent(j,-0.05);
741 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
742 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
743 fhMCcorrectionsMax->SetBinContent(j,0.10);
747 // MC D EFF CORRECTION
748 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
749 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
750 fhMCDefficiencyMin->SetBinContent(j,-0.05);
753 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
754 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
755 fhMCDefficiencyMax->SetBinContent(j,0.05);
759 // Contamination from secondary tracks
760 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
761 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
762 fhSecContaminationMin->SetBinContent(j,-0.05);
765 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
766 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
767 fhSecContaminationMax->SetBinContent(j,0.05);
770 // MC CLOSURETEST (D meson efficiency)
771 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
772 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
773 x=fhMCclosureTestMin->GetBinLowEdge(j);
774 fhMCclosureTestMin->SetBinContent(j,-0.08);
777 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
779 else if(-0.2<x&&x<-0.1){
780 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
782 else if(-0.1<x&&x<0.1){
783 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
785 else if(0.1<x&&x<0.2){
786 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
789 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
793 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
794 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
795 x=fhMCclosureTestMax->GetBinLowEdge(j);
796 fhMCclosureTestMax->SetBinContent(j,0.);
798 // if(-0.4<x&&x<-0.2){
799 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
801 // else if(-0.2<x&&x<-0.1){
802 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
804 // else if(-0.2<x&&x<-0.1){
805 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
807 // else if(-0.1<x&&x<0.1){
808 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
810 // else if(0.1<x&&x<0.2){
811 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
814 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
821 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
822 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
823 x=fhBeautyFDmin->GetBinLowEdge(j);
824 fhBeautyFDmin->SetBinContent(j,-0.05);
826 // if(-0.4<x&&x<-0.2){
827 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
829 // else if(-0.2<x&&x<-0.1){
830 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
832 // else if(-0.2<x&&x<-0.1){
833 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
835 // else if(-0.1<x&&x<0.1){
836 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
838 // else if(0.1<x&&x<0.2){
839 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
842 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
846 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
847 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
848 x=fhBeautyFDmax->GetBinLowEdge(j);
849 fhBeautyFDmax->SetBinContent(j,0.03);
851 // if(-0.4<x&&x<-0.2){
852 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
854 // else if(-0.2<x&&x<-0.1){
855 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
857 // else if(-0.2<x&&x<-0.1){
858 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
860 // else if(-0.1<x&&x<0.1){
861 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
863 // else if(0.1<x&&x<0.2){
864 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
867 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
875 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarMidPtAss03HP(){
876 Printf("Loading syst unc for D*+ pp 2010, 5<pt(D)<8 GeV/c, pt(assoc)>0.3");
879 fstrptAss="ptAsMore03";
881 if(!fhDeltaPhiTemplate){
882 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
885 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
886 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
887 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
888 fhYieldExtraction->SetBinContent(j,0.1);
891 // Background D MESON candidate subtraction (side-band variations, etc.)
892 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
893 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
894 fhBackSubtractionMin->SetBinContent(j,-0.05);
897 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
898 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
899 fhBackSubtractionMax->SetBinContent(j,0.05);
902 // MC CORRECTIONS/ -5% 10% for assoc track eff
903 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
904 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
905 fhMCcorrectionsMin->SetBinContent(j,-0.05);
908 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
909 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
910 fhMCcorrectionsMax->SetBinContent(j,0.10);
913 // MC D EFF CORRECTION
914 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
915 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
916 fhMCDefficiencyMin->SetBinContent(j,-0.05);
919 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
920 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
921 fhMCDefficiencyMax->SetBinContent(j,0.05);
925 // Contamination from secondary tracks
926 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
927 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
928 fhSecContaminationMin->SetBinContent(j,-0.05);
931 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
932 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
933 fhSecContaminationMax->SetBinContent(j,0.05);
936 // MC CLOSURETEST (D meson efficiency)
937 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
938 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
939 x=fhMCclosureTestMin->GetBinLowEdge(j);
940 fhMCclosureTestMin->SetBinContent(j,-0.08);
943 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
945 else if(-0.2<x&&x<-0.1){
946 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
948 else if(-0.1<x&&x<0.1){
949 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
951 else if(0.1<x&&x<0.2){
952 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
955 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
959 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
960 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
961 x=fhMCclosureTestMax->GetBinLowEdge(j);
962 fhMCclosureTestMax->SetBinContent(j,0.);
964 // if(-0.4<x&&x<-0.2){
965 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
967 // else if(-0.2<x&&x<-0.1){
968 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
970 // else if(-0.2<x&&x<-0.1){
971 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
973 // else if(-0.1<x&&x<0.1){
974 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
976 // else if(0.1<x&&x<0.2){
977 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
980 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
987 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
988 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
989 x=fhBeautyFDmin->GetBinLowEdge(j);
990 fhBeautyFDmin->SetBinContent(j,-0.05);
992 // if(-0.4<x&&x<-0.2){
993 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
995 // else if(-0.2<x&&x<-0.1){
996 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
998 // else if(-0.2<x&&x<-0.1){
999 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
1001 // else if(-0.1<x&&x<0.1){
1002 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
1004 // else if(0.1<x&&x<0.2){
1005 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
1007 // if(0.2<x&&x<0.4){
1008 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
1012 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
1013 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
1014 x=fhBeautyFDmax->GetBinLowEdge(j);
1015 fhBeautyFDmax->SetBinContent(j,0.03);
1017 // if(-0.4<x&&x<-0.2){
1018 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
1020 // else if(-0.2<x&&x<-0.1){
1021 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1023 // else if(-0.2<x&&x<-0.1){
1024 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1026 // else if(-0.1<x&&x<0.1){
1027 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
1029 // else if(0.1<x&&x<0.2){
1030 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1032 // if(0.2<x&&x<0.4){
1033 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
1042 void AliHFDhadronCorrSystUnc::InitEmptyHistosFromTemplate(){
1043 if(!fhDeltaPhiTemplate){
1044 Printf("Template histo not set, using standard binning");
1045 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
1047 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
1048 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
1049 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
1050 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
1051 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
1052 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
1053 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
1054 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
1055 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
1056 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
1057 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
1058 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
1059 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
1065 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarHighPtAss03HP(){
1066 Printf("Loading syst unc for D*+ pp 2010, 8<pt(D)<16 GeV/c, pt(assoc)>0.3");
1069 fstrptAss="ptAsMore03";
1071 if(!fhDeltaPhiTemplate){
1072 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
1075 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
1076 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
1077 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
1078 fhYieldExtraction->SetBinContent(j,0.1);
1081 // Background D MESON candidate subtraction (side-band variations, etc.)
1082 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
1083 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
1084 fhBackSubtractionMin->SetBinContent(j,-0.05);
1087 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
1088 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
1089 fhBackSubtractionMax->SetBinContent(j,0.05);
1092 // MC CORRECTIONS -5% +10% for assoc track eff
1093 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
1094 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
1095 fhMCcorrectionsMin->SetBinContent(j,-0.05);
1098 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
1099 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
1100 fhMCcorrectionsMax->SetBinContent(j,0.10);
1102 // MC D EFF CORRECTION
1103 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
1104 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
1105 fhMCDefficiencyMin->SetBinContent(j,-0.05);
1108 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
1109 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
1110 fhMCDefficiencyMax->SetBinContent(j,0.05);
1114 // Contamination from secondary tracks
1115 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
1116 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
1117 fhSecContaminationMin->SetBinContent(j,-0.05);
1120 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
1121 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
1122 fhSecContaminationMax->SetBinContent(j,0.05);
1125 // MC CLOSURETEST (D meson efficiency)
1126 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
1127 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
1128 x=fhMCclosureTestMin->GetBinLowEdge(j);
1129 fhMCclosureTestMin->SetBinContent(j,-0.08);
1132 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
1134 else if(-0.2<x&&x<-0.1){
1135 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
1137 else if(-0.1<x&&x<0.1){
1138 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
1140 else if(0.1<x&&x<0.2){
1141 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
1144 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
1148 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
1149 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
1150 x=fhMCclosureTestMax->GetBinLowEdge(j);
1151 fhMCclosureTestMax->SetBinContent(j,0.);
1153 // if(-0.4<x&&x<-0.2){
1154 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
1156 // else if(-0.2<x&&x<-0.1){
1157 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
1159 // else if(-0.2<x&&x<-0.1){
1160 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
1162 // else if(-0.1<x&&x<0.1){
1163 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
1165 // else if(0.1<x&&x<0.2){
1166 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
1168 // if(0.2<x&&x<0.4){
1169 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
1176 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
1177 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
1178 x=fhBeautyFDmin->GetBinLowEdge(j);
1179 fhBeautyFDmin->SetBinContent(j,-0.05);
1181 // if(-0.4<x&&x<-0.2){
1182 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
1184 // else if(-0.2<x&&x<-0.1){
1185 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
1187 // else if(-0.2<x&&x<-0.1){
1188 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
1190 // else if(-0.1<x&&x<0.1){
1191 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
1193 // else if(0.1<x&&x<0.2){
1194 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
1196 // if(0.2<x&&x<0.4){
1197 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
1201 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
1202 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
1203 x=fhBeautyFDmax->GetBinLowEdge(j);
1204 fhBeautyFDmax->SetBinContent(j,0.03);
1206 // if(-0.4<x&&x<-0.2){
1207 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
1209 // else if(-0.2<x&&x<-0.1){
1210 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1212 // else if(-0.2<x&&x<-0.1){
1213 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1215 // else if(-0.1<x&&x<0.1){
1216 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
1218 // else if(0.1<x&&x<0.2){
1219 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
1221 // if(0.2<x&&x<0.4){
1222 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
1231 void AliHFDhadronCorrSystUnc::SetHistoTemplate(TH1D *h,TString strname,Bool_t clone){
1232 if(fhDeltaPhiTemplate)delete fhDeltaPhiTemplate;
1234 fhDeltaPhiTemplate=h;
1237 if(strname.IsNull()){fhDeltaPhiTemplate=(TH1D*)h->Clone("fhDeltaPhiTemplate");
1239 else fhDeltaPhiTemplate=(TH1D*)h->Clone(strname.Data());
1244 void AliHFDhadronCorrSystUnc::SetHistoYieldExtraction(TH1D *h,TString strname,Bool_t clone){
1245 if(fhYieldExtraction)delete fhYieldExtraction;
1247 fhYieldExtraction=h;
1250 if(strname.IsNull()){fhYieldExtraction=(TH1D*)h->Clone("fhYieldExtraction");
1252 else fhYieldExtraction=(TH1D*)h->Clone(strname.Data());
1256 void AliHFDhadronCorrSystUnc::SetHistoBackSubtraction(TH1D *hMax,TString strname,Bool_t clone,TH1D *hMin){
1258 Printf("No Input Histo for back uncertainty");
1261 if(fhBackSubtractionMax)delete fhBackSubtractionMax;
1263 fhBackSubtractionMax=hMax;
1266 if(strname.IsNull()){fhBackSubtractionMax=(TH1D*)hMax->Clone("fhBackSubtractionMax");
1268 else fhBackSubtractionMax=(TH1D*)hMax->Clone(strname.Data());
1271 if(fhBackSubtractionMin)delete fhBackSubtractionMin;
1274 fhBackSubtractionMin=hMin;
1277 if(strname.IsNull()){fhBackSubtractionMin=(TH1D*)hMin->Clone("fhBackSubtractionMin");
1279 else fhBackSubtractionMin=(TH1D*)hMin->Clone(strname.Data());
1283 if(strname.IsNull()){
1284 fhBackSubtractionMin=(TH1D*)hMin->Clone("fhBackSubtractionMin");
1286 else fhBackSubtractionMin=(TH1D*)hMin->Clone(strname.Data());
1287 for(Int_t k=0;k<=fhBackSubtractionMin->GetNbinsX();k++){
1288 fhBackSubtractionMin->SetBinContent(k,-1.*fhBackSubtractionMin->GetBinContent(k));
1298 void AliHFDhadronCorrSystUnc::SetHistoMCclosureTestMax(TH1D *h,TString strname,Bool_t clone){
1299 if(fhMCclosureTestMax)delete fhMCclosureTestMax;
1301 fhMCclosureTestMax=h;
1304 if(strname.IsNull()){fhMCclosureTestMax=(TH1D*)h->Clone("fhMCclosureTestMax");
1306 else fhMCclosureTestMax=(TH1D*)h->Clone(strname.Data());
1310 void AliHFDhadronCorrSystUnc::SetHistoMCclosureTestMin(TH1D *h,TString strname,Bool_t clone){
1311 if(fhMCclosureTestMin)delete fhMCclosureTestMin;
1313 fhMCclosureTestMin=h;
1316 if(strname.IsNull()){fhMCclosureTestMin=(TH1D*)h->Clone("fhMCclosureTestMin");
1318 else fhMCclosureTestMin=(TH1D*)h->Clone(strname.Data());
1323 void AliHFDhadronCorrSystUnc::SetHistoMCcorrectionsMin(TH1D *h,TString strname,Bool_t clone){
1324 if(fhMCcorrectionsMin)delete fhMCcorrectionsMin;
1326 fhMCcorrectionsMin=h;
1329 if(strname.IsNull()){fhMCcorrectionsMin=(TH1D*)h->Clone("fhMCcorrectionsMin");
1331 else fhMCcorrectionsMin=(TH1D*)h->Clone(strname.Data());
1336 void AliHFDhadronCorrSystUnc::SetHistoMCcorrectionsMax(TH1D *h,TString strname,Bool_t clone){
1337 if(fhMCcorrectionsMax)delete fhMCcorrectionsMax;
1339 fhMCcorrectionsMax=h;
1342 if(strname.IsNull()){fhMCcorrectionsMax=(TH1D*)h->Clone("fhMCcorrectionsMax");
1344 else fhMCcorrectionsMax=(TH1D*)h->Clone(strname.Data());
1349 void AliHFDhadronCorrSystUnc::SetHistoMCDefficiencyMin(TH1D *h,TString strname,Bool_t clone){
1350 if(fhMCDefficiencyMin)delete fhMCDefficiencyMin;
1352 fhMCDefficiencyMin=h;
1355 if(strname.IsNull()){fhMCDefficiencyMin=(TH1D*)h->Clone("fhMCDefficiencyMin");
1357 else fhMCDefficiencyMin=(TH1D*)h->Clone(strname.Data());
1362 void AliHFDhadronCorrSystUnc::SetHistoMCDefficiencyMax(TH1D *h,TString strname,Bool_t clone){
1363 if(fhMCDefficiencyMax)delete fhMCDefficiencyMax;
1365 fhMCDefficiencyMax=h;
1368 if(strname.IsNull()){fhMCDefficiencyMax=(TH1D*)h->Clone("fhMCDefficiencyMax");
1370 else fhMCDefficiencyMax=(TH1D*)h->Clone(strname.Data());
1375 void AliHFDhadronCorrSystUnc::SetHistoSecContaminationMin(TH1D *h,TString strname,Bool_t clone){
1376 if(fhSecContaminationMin)delete fhSecContaminationMin;
1378 fhSecContaminationMin=h;
1381 if(strname.IsNull()){fhSecContaminationMin=(TH1D*)h->Clone("fhSecContaminationMin");
1383 else fhSecContaminationMin=(TH1D*)h->Clone(strname.Data());
1388 void AliHFDhadronCorrSystUnc::SetHistoSecContaminationMax(TH1D *h,TString strname,Bool_t clone){
1389 if(fhSecContaminationMax)delete fhSecContaminationMax;
1391 fhSecContaminationMax=h;
1394 if(strname.IsNull()){fhSecContaminationMax=(TH1D*)h->Clone("fhSecContaminationMax");
1396 else fhSecContaminationMax=(TH1D*)h->Clone(strname.Data());
1401 void AliHFDhadronCorrSystUnc::SetHistoBeautyFDmin(TH1D *h,TString strname,Bool_t clone){
1402 if(fhBeautyFDmin)delete fhBeautyFDmin;
1407 if(strname.IsNull()){fhBeautyFDmin=(TH1D*)h->Clone("fhBeautyFDmin");
1409 else fhBeautyFDmin=(TH1D*)h->Clone(strname.Data());
1414 void AliHFDhadronCorrSystUnc::SetHistoBeautyFDmax(TH1D *h,TString strname,Bool_t clone){
1415 if(fhBeautyFDmax)delete fhBeautyFDmax;
1420 if(strname.IsNull()){fhBeautyFDmax=(TH1D*)h->Clone("fhBeautyFDmax");
1422 else fhBeautyFDmax=(TH1D*)h->Clone(strname.Data());
1430 void AliHFDhadronCorrSystUnc::BuildTotalUncHisto(){
1431 if(fhTotalMin)delete fhTotalMin;
1432 if(fhTotalMax)delete fhTotalMax;
1434 fhTotalMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalMin");
1435 fhTotalMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalMax");
1436 Double_t errMin,errMax;
1438 for(Int_t j=1;j<=fhTotalMin->GetNbinsX();j++){
1439 errMin=fhMCclosureTestMin->GetBinContent(j)*fhMCclosureTestMin->GetBinContent(j);
1440 errMin+=fhMCcorrectionsMin->GetBinContent(j)*fhMCcorrectionsMin->GetBinContent(j);
1441 errMin+=fhMCDefficiencyMin->GetBinContent(j)*fhMCDefficiencyMin->GetBinContent(j);
1442 errMin+=fhSecContaminationMin->GetBinContent(j)*fhSecContaminationMin->GetBinContent(j);
1443 errMin+=fhYieldExtraction->GetBinContent(j)*fhYieldExtraction->GetBinContent(j);
1444 errMin+=fhBackSubtractionMin->GetBinContent(j)*fhBackSubtractionMin->GetBinContent(j);
1445 errMin+=fhBeautyFDmin->GetBinContent(j)*fhBeautyFDmin->GetBinContent(j);
1447 fhTotalMin->SetBinContent(j,-TMath::Sqrt(errMin));
1449 errMax=fhMCclosureTestMax->GetBinContent(j)*fhMCclosureTestMax->GetBinContent(j);
1450 errMax+=fhMCcorrectionsMax->GetBinContent(j)*fhMCcorrectionsMax->GetBinContent(j);
1451 errMax+=fhMCDefficiencyMax->GetBinContent(j)*fhMCDefficiencyMax->GetBinContent(j);
1452 errMax+=fhSecContaminationMax->GetBinContent(j)*fhSecContaminationMax->GetBinContent(j);
1453 errMax+=fhYieldExtraction->GetBinContent(j)*fhYieldExtraction->GetBinContent(j);
1454 errMax+=fhBackSubtractionMax->GetBinContent(j)*fhBackSubtractionMax->GetBinContent(j);
1455 errMax+=fhBeautyFDmax->GetBinContent(j)*fhBeautyFDmax->GetBinContent(j);
1457 fhTotalMax->SetBinContent(j,TMath::Sqrt(errMax));
1462 fhTotalMin->SetLineColor(kBlack);
1463 fhTotalMin->SetLineWidth(2);
1464 fhTotalMin->SetFillStyle(0);
1465 fhTotalMin->SetFillColor(kBlack);
1466 fhTotalMin->SetMarkerColor(kBlack);
1467 fhTotalMin->SetMarkerStyle(20);
1469 fhTotalMax->SetLineColor(kBlack);
1470 fhTotalMax->SetLineWidth(2);
1471 fhTotalMax->SetFillStyle(0);
1472 fhTotalMax->SetFillColor(kBlack);
1473 fhTotalMax->SetMarkerColor(kBlack);
1474 fhTotalMax->SetMarkerStyle(20);
1478 void AliHFDhadronCorrSystUnc::BuildTotalNonFlatUncHisto(){
1479 if(fhTotalNonFlatDPhiMin)delete fhTotalNonFlatDPhiMin;
1480 if(fhTotalNonFlatDPhiMax)delete fhTotalNonFlatDPhiMax;
1482 fhTotalNonFlatDPhiMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalNonFlatDPhiMin");
1483 fhTotalNonFlatDPhiMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalNonFlatDPhiMax");
1484 Double_t errMin,errMax,mcClosureMinmax,mcClosureMaxmin;
1486 mcClosureMinmax=fhMCclosureTestMin->GetBinContent(fhMCclosureTestMin->GetMaximumBin());
1487 mcClosureMaxmin=fhMCclosureTestMax->GetBinContent(fhMCclosureTestMax->GetMinimumBin());
1488 Printf("MC closure - The max of min is: %f, the min of max is: %f", mcClosureMinmax, mcClosureMaxmin);
1490 for(Int_t j=1;j<=fhTotalNonFlatDPhiMin->GetNbinsX();j++){
1491 errMin=(fhMCclosureTestMin->GetBinContent(j)*fhMCclosureTestMin->GetBinContent(j)-mcClosureMinmax*mcClosureMinmax);// Forced to this quadrature subtraction, doing: (fhMCclosureTestMin->GetBinContent(j)-mcClosureMinmax)*(fhMCclosureTestMin->GetBinContent(j)-mcClosureMinmax) gives the wrong result.. of course
1493 errMin+=fhBeautyFDmin->GetBinContent(j)*fhBeautyFDmin->GetBinContent(j);
1495 fhTotalNonFlatDPhiMin->SetBinContent(j,-TMath::Sqrt(errMin));
1497 errMax=fhMCclosureTestMax->GetBinContent(j)*fhMCclosureTestMax->GetBinContent(j)-mcClosureMaxmin*mcClosureMaxmin; // Forced to this quadrature subtraction, doing:(fhMCclosureTestMax->GetBinContent(j)-mcClosureMaxmin)*(fhMCclosureTestMax->GetBinContent(j)-mcClosureMaxmin) gives the wrong result.. of course
1499 errMax+=fhBeautyFDmax->GetBinContent(j)*fhBeautyFDmax->GetBinContent(j);
1501 fhTotalNonFlatDPhiMax->SetBinContent(j,TMath::Sqrt(errMax));
1506 fhtotFlatMin=(TH1D*)fhTotalMin->Clone("hTotFlatDPhiMin");
1507 fhtotFlatMin->SetTitle("#Delta#phi indipendent");
1509 fhtotFlatMax=(TH1D*)fhTotalMax->Clone("hTotFlatDPhiMax");
1510 fhtotFlatMax->SetTitle("#Delta#phi indipendent");
1512 for(Int_t jfl=1;jfl<=fhtotFlatMin->GetNbinsX();jfl++){
1513 fhtotFlatMin->SetBinContent(jfl,-TMath::Sqrt(fhTotalMin->GetBinContent(jfl)*fhTotalMin->GetBinContent(jfl)-fhTotalNonFlatDPhiMin->GetBinContent(jfl)*fhTotalNonFlatDPhiMin->GetBinContent(jfl)));
1514 fhtotFlatMax->SetBinContent(jfl,TMath::Sqrt(fhTotalMax->GetBinContent(jfl)*fhTotalMax->GetBinContent(jfl)-fhTotalNonFlatDPhiMax->GetBinContent(jfl)*fhTotalNonFlatDPhiMax->GetBinContent(jfl)));
1517 fhtotFlatMin->SetLineStyle(2);
1518 fhtotFlatMax->SetLineStyle(2);
1523 fhTotalNonFlatDPhiMin->SetLineColor(kBlue);
1524 fhTotalNonFlatDPhiMin->SetLineWidth(2);
1525 fhTotalNonFlatDPhiMin->SetFillStyle(0);
1526 fhTotalNonFlatDPhiMin->SetFillColor(kBlue);
1527 fhTotalNonFlatDPhiMin->SetMarkerColor(kBlue);
1528 fhTotalNonFlatDPhiMin->SetMarkerStyle(20);
1530 fhTotalNonFlatDPhiMax->SetLineColor(kBlue);
1531 fhTotalNonFlatDPhiMax->SetLineWidth(2);
1532 fhTotalNonFlatDPhiMax->SetFillStyle(0);
1533 fhTotalNonFlatDPhiMax->SetFillColor(kBlue);
1534 fhTotalNonFlatDPhiMax->SetMarkerColor(kBlue);
1535 fhTotalNonFlatDPhiMax->SetMarkerStyle(20);
1540 void AliHFDhadronCorrSystUnc::BuildTotalNonFDUncHisto(){
1541 if(fhTotalNonFDMin)delete fhTotalNonFDMin;
1542 if(fhTotalNonFDMax)delete fhTotalNonFDMax;
1544 fhTotalNonFDMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalNonFDMin");
1545 fhTotalNonFDMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhTotalNonFDMax");
1546 Double_t errMin,errMax;
1548 for(Int_t j=1;j<=fhTotalNonFDMin->GetNbinsX();j++){
1549 errMin=fhMCclosureTestMin->GetBinContent(j)*fhMCclosureTestMin->GetBinContent(j);
1550 errMin+=fhMCcorrectionsMin->GetBinContent(j)*fhMCcorrectionsMin->GetBinContent(j);
1551 errMin+=fhMCDefficiencyMin->GetBinContent(j)*fhMCDefficiencyMin->GetBinContent(j);
1552 errMin+=fhSecContaminationMin->GetBinContent(j)*fhSecContaminationMin->GetBinContent(j);
1553 errMin+=fhYieldExtraction->GetBinContent(j)*fhYieldExtraction->GetBinContent(j);
1554 errMin+=fhBackSubtractionMin->GetBinContent(j)*fhBackSubtractionMin->GetBinContent(j);
1556 fhTotalNonFDMin->SetBinContent(j,-TMath::Sqrt(errMin));
1558 errMax=fhMCclosureTestMax->GetBinContent(j)*fhMCclosureTestMax->GetBinContent(j);
1559 errMax+=fhMCcorrectionsMax->GetBinContent(j)*fhMCcorrectionsMax->GetBinContent(j);
1560 errMax+=fhMCDefficiencyMax->GetBinContent(j)*fhMCDefficiencyMax->GetBinContent(j);
1561 errMax+=fhSecContaminationMax->GetBinContent(j)*fhSecContaminationMax->GetBinContent(j);
1562 errMax+=fhYieldExtraction->GetBinContent(j)*fhYieldExtraction->GetBinContent(j);
1563 errMax+=fhBackSubtractionMax->GetBinContent(j)*fhBackSubtractionMax->GetBinContent(j);
1565 fhTotalNonFDMax->SetBinContent(j,TMath::Sqrt(errMax));
1573 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010(Int_t meson,Double_t ptD,Double_t minptAss){
1578 if(TMath::Abs(minptAss-0.3)<0.0001){
1580 InitStandardUncertaintiesPP2010DzeroLowPtAss03HP();
1582 else if(ptD>5&&ptD<8){
1583 InitStandardUncertaintiesPP2010DzeroMidPtAss03HP();
1585 else if(ptD>8&&ptD<16){
1586 InitStandardUncertaintiesPP2010DzeroHighPtAss03HP();
1589 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1593 else if(TMath::Abs(minptAss-0.5)<0.0001){
1595 InitStandardUncertaintiesPP2010DzeroLowPtAss05();
1597 else if(ptD>5&&ptD<8){
1598 InitStandardUncertaintiesPP2010DzeroMidPtAss05();
1600 else if(ptD>8&&ptD<16){
1601 InitStandardUncertaintiesPP2010DzeroHighPtAss05();
1604 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1608 else if(TMath::Abs(minptAss-1.)<0.0001){
1610 InitStandardUncertaintiesPP2010DzeroLowPtAss1();
1612 else if(ptD>5&&ptD<8){
1613 InitStandardUncertaintiesPP2010DzeroMidPtAss1();
1616 else if(ptD>8&&ptD<16){
1617 InitStandardUncertaintiesPP2010DzeroHighPtAss1();
1620 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1624 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1629 if(TMath::Abs(minptAss-0.3)<0.0001){
1631 InitStandardUncertaintiesPP2010DstarLowPtAss03HP();
1633 else if(ptD>5&&ptD<8){
1634 InitStandardUncertaintiesPP2010DstarMidPtAss03HP();
1636 else if(ptD>8&&ptD<16){
1637 InitStandardUncertaintiesPP2010DstarHighPtAss03HP();
1640 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1644 else if(TMath::Abs(minptAss-0.5)<0.0001){
1646 InitStandardUncertaintiesPP2010DstarLowPtAss05();
1648 else if(ptD>5&&ptD<8){
1649 InitStandardUncertaintiesPP2010DstarMidPtAss05();
1651 else if(ptD>8&&ptD<16){
1652 InitStandardUncertaintiesPP2010DstarHighPtAss05();
1655 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1660 else if(TMath::Abs(minptAss-1.)<0.0001){
1662 InitStandardUncertaintiesPP2010DstarLowPtAss1();
1664 else if(ptD>5&&ptD<8){
1665 InitStandardUncertaintiesPP2010DstarMidPtAss1();
1667 else if(ptD>8&&ptD<16){
1668 InitStandardUncertaintiesPP2010DstarHighPtAss1();
1671 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1675 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1680 if(TMath::Abs(minptAss-0.3)<0.0001){
1682 InitStandardUncertaintiesPP2010DplusLowPtAss03();
1684 else if(ptD>5&&ptD<8){
1685 InitStandardUncertaintiesPP2010DplusMidPtAss03();
1687 else if(ptD>8&&ptD<16){
1688 InitStandardUncertaintiesPP2010DplusHighPtAss03();
1691 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1695 else if(TMath::Abs(minptAss-0.5)<0.0001){
1697 InitStandardUncertaintiesPP2010DplusLowPtAss05();
1699 else if(ptD>5&&ptD<8){
1700 InitStandardUncertaintiesPP2010DplusMidPtAss05();
1702 else if(ptD>8&&ptD<16){
1703 InitStandardUncertaintiesPP2010DplusHighPtAss05();
1706 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1710 else if(TMath::Abs(minptAss-1.)<0.0001){
1712 InitStandardUncertaintiesPPb2013DplusLowPtAss1();
1714 else if(ptD>5&&ptD<8){
1715 InitStandardUncertaintiesPPb2013DplusMidPtAss1();
1717 else if(ptD>8&&ptD<16){
1718 InitStandardUncertaintiesPPb2013DplusHighPtAss1();
1721 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1725 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1729 printf("PP:No meson is found Check your input \n");
1733 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013(Int_t meson,Double_t ptD,Double_t minptAss){
1737 if(TMath::Abs(minptAss-0.3)<0.0001){
1739 InitStandardUncertaintiesPPb2013DzeroLowPtAss03();
1741 else if(ptD>5&&ptD<8){
1742 InitStandardUncertaintiesPPb2013DzeroMidPtAss03();
1744 else if(ptD>8&&ptD<16){
1745 InitStandardUncertaintiesPPb2013DzeroHighPtAss03();
1749 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1753 else if(TMath::Abs(minptAss-0.5)<0.0001){
1755 InitStandardUncertaintiesPPb2013DzeroLowPtAss05();
1757 else if(ptD>5&&ptD<8){
1758 InitStandardUncertaintiesPPb2013DzeroMidPtAss05();
1760 else if(ptD>8&&ptD<16){
1761 InitStandardUncertaintiesPPb2013DzeroHighPtAss05();
1765 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1770 else if(TMath::Abs(minptAss-1.)<0.0001){
1772 InitStandardUncertaintiesPPb2013DzeroLowPtAss1();
1774 else if(ptD>5&&ptD<8){
1775 InitStandardUncertaintiesPPb2013DzeroMidPtAss1();
1777 else if(ptD>8&&ptD<16){
1778 InitStandardUncertaintiesPPb2013DzeroHighPtAss1();
1781 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1785 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1790 if(TMath::Abs(minptAss-0.3)<0.0001){
1792 InitStandardUncertaintiesPPb2013DstarLowPtAss03();
1794 else if(ptD>5&&ptD<8){
1795 InitStandardUncertaintiesPPb2013DstarMidPtAss03();
1797 else if(ptD>8&&ptD<16){
1798 InitStandardUncertaintiesPPb2013DstarHighPtAss03();
1801 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1805 else if(TMath::Abs(minptAss-0.5)<0.0001){
1807 InitStandardUncertaintiesPPb2013DstarLowPtAss05();
1809 else if(ptD>5&&ptD<8){
1810 InitStandardUncertaintiesPPb2013DstarMidPtAss05();
1812 else if(ptD>8&&ptD<16){
1813 InitStandardUncertaintiesPPb2013DstarHighPtAss05();
1816 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1820 else if(TMath::Abs(minptAss-1.)<0.0001){
1822 InitStandardUncertaintiesPPb2013DstarLowPtAss1();
1824 else if(ptD>5&&ptD<8){
1825 InitStandardUncertaintiesPPb2013DstarMidPtAss1();
1827 else if(ptD>8&&ptD<16){
1828 InitStandardUncertaintiesPPb2013DstarHighPtAss1();
1831 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1835 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1840 if(TMath::Abs(minptAss-0.3)<0.0001){
1842 InitStandardUncertaintiesPPb2013DplusLowPtAss03();
1844 else if(ptD>5&&ptD<8){
1845 InitStandardUncertaintiesPPb2013DplusMidPtAss03();
1847 else if(ptD>8&&ptD<16){
1848 InitStandardUncertaintiesPPb2013DplusHighPtAss03();
1851 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1855 else if(TMath::Abs(minptAss-0.5)<0.0001){
1857 InitStandardUncertaintiesPPb2013DplusLowPtAss05();
1859 else if(ptD>5&&ptD<8){
1860 InitStandardUncertaintiesPPb2013DplusMidPtAss05();
1862 else if(ptD>8&&ptD<16){
1863 InitStandardUncertaintiesPPb2013DplusHighPtAss05();
1866 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1870 else if(TMath::Abs(minptAss-1.)<0.0001){
1872 InitStandardUncertaintiesPPb2013DplusLowPtAss1();
1874 else if(ptD>5&&ptD<8){
1875 InitStandardUncertaintiesPPb2013DplusMidPtAss1();
1877 else if(ptD>8&&ptD<16){
1878 InitStandardUncertaintiesPPb2013DplusHighPtAss1();
1881 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1885 printf("Methods for syst unc not ready yet for this pt(ass) bin \n");
1889 printf("pPb-No meson is found Check your input \n");
1894 TGraphAsymmErrors* AliHFDhadronCorrSystUnc::GetUncGraphFromHistos(TH1D *hRef,TH1D *hMin,TH1D *hMax){
1896 // Int_t npoints=hMin->GetNbinsX();
1897 Double_t ew=hMin->GetBinWidth(1)/2.;
1898 Double_t value,eyl,eym;
1900 TGraphAsymmErrors *gr=new TGraphAsymmErrors();
1901 for(Int_t j=1;j<=hMin->GetNbinsX();j++){
1903 value=hRef->GetBinContent(j);
1904 eyl=hMin->GetBinContent(j)*value;
1906 if(hMax)eym=hMax->GetBinContent(j)*value;
1911 eyl=hMin->GetBinContent(j);
1913 if(hMax)eym=hMax->GetBinContent(j);
1917 gr->SetPoint(j-1,hMin->GetBinCenter(j),value);
1918 gr->SetPointError(j-1,ew,ew,eyl,eym);
1924 void AliHFDhadronCorrSystUnc::BuildGraphsRelUnc(){
1925 if(fgrYieldUncRel)delete fgrYieldUncRel;
1926 if(fgrBackSubUncRel)delete fgrBackSubUncRel;
1927 if(fgrMCcorrectionsRel)delete fgrMCcorrectionsRel;
1928 if(fgrMCDefficiencyRel)delete fgrMCDefficiencyRel;
1929 if(fgrSecContaminationRel)delete fgrSecContaminationRel;
1930 if(fgrMCclosureTestRel)delete fgrMCclosureTestRel;
1931 if(fgrBeautyFDRel)delete fgrBeautyFDRel;
1933 fgrYieldUncRel=GetUncGraphFromHistos(0x0,fhYieldExtraction,0x0);
1934 fgrYieldUncRel->SetName("fgrYieldUncRel");
1935 fgrYieldUncRel->SetTitle("D meson yield");
1938 fgrBackSubUncRel=GetUncGraphFromHistos(0x0,fhBackSubtractionMin,fhBackSubtractionMax);
1939 fgrBackSubUncRel->SetName("fgrBackSubUncRel");
1940 fgrBackSubUncRel->SetTitle("Background D correlation subtraction");
1944 fgrMCcorrectionsRel=GetUncGraphFromHistos(0x0,fhMCcorrectionsMin,fhMCcorrectionsMax);
1945 fgrMCcorrectionsRel->SetName("fgrMCcorrectionsRel");
1946 fgrMCcorrectionsRel->SetTitle("Associated track efficiency");
1948 fgrMCDefficiencyRel=GetUncGraphFromHistos(0x0,fhMCDefficiencyMin,fhMCDefficiencyMax);
1949 fgrMCDefficiencyRel->SetName("fgrMCDefficiencyRel");
1950 fgrMCDefficiencyRel->SetTitle("D meson efficiency");
1952 fgrSecContaminationRel=GetUncGraphFromHistos(0x0,fhSecContaminationMin,fhSecContaminationMax);
1953 fgrSecContaminationRel->SetName("fgrSecContaminationRel");
1954 fgrSecContaminationRel->SetTitle("Secondary contamination");
1956 fgrMCclosureTestRel=GetUncGraphFromHistos(0x0,fhMCclosureTestMin,fhMCclosureTestMax);
1957 fgrMCclosureTestRel->SetName("fgrMCclosureTestRel");
1958 fgrMCclosureTestRel->SetTitle("MC closure test");
1960 fgrBeautyFDRel=GetUncGraphFromHistos(0x0,fhBeautyFDmin,fhBeautyFDmax);
1961 fgrBeautyFDRel->SetName("fgrBeautyFDRel");
1962 fgrBeautyFDRel->SetTitle("Feed-down");
1964 fgrYieldUncRel->SetLineColor(kBlue);
1965 fgrYieldUncRel->SetLineWidth(2);
1966 fgrYieldUncRel->SetFillStyle(3002);
1967 fgrYieldUncRel->SetFillColor(kBlue);
1968 fgrYieldUncRel->SetMarkerColor(kBlue);
1969 fgrYieldUncRel->SetMarkerStyle(20);
1972 fgrBackSubUncRel->SetLineColor(kMagenta);
1973 fgrBackSubUncRel->SetLineWidth(2);
1974 fgrBackSubUncRel->SetFillStyle(3008);
1975 fgrBackSubUncRel->SetFillColor(kMagenta);
1976 fgrBackSubUncRel->SetMarkerColor(kBlue);
1977 fgrBackSubUncRel->SetMarkerStyle(20);
1980 fgrMCcorrectionsRel->SetLineColor(kGreen);
1981 fgrMCcorrectionsRel->SetLineWidth(2);
1982 fgrMCcorrectionsRel->SetFillStyle(3006);
1983 fgrMCcorrectionsRel->SetFillColor(kGreen);
1984 fgrMCcorrectionsRel->SetMarkerColor(kGreen);
1985 fgrMCcorrectionsRel->SetMarkerStyle(22);
1987 fgrMCDefficiencyRel->SetLineColor(kCyan);
1988 fgrMCDefficiencyRel->SetLineWidth(2);
1989 fgrMCDefficiencyRel->SetFillStyle(3004);
1990 fgrMCDefficiencyRel->SetFillColor(kCyan);
1991 fgrMCDefficiencyRel->SetMarkerColor(kCyan);
1992 fgrMCDefficiencyRel->SetMarkerStyle(22);
1994 fgrSecContaminationRel->SetLineColor(kOrange);
1995 fgrSecContaminationRel->SetLineWidth(2);
1996 fgrSecContaminationRel->SetFillStyle(3007);
1997 fgrSecContaminationRel->SetFillColor(kOrange);
1998 fgrSecContaminationRel->SetMarkerColor(kOrange);
1999 fgrSecContaminationRel->SetMarkerStyle(22);
2001 fgrMCclosureTestRel->SetLineColor(kRed);
2002 fgrMCclosureTestRel->SetLineWidth(2);
2003 fgrMCclosureTestRel->SetFillStyle(3005);
2004 fgrMCclosureTestRel->SetFillColor(kRed);
2005 fgrMCclosureTestRel->SetMarkerColor(kRed);
2006 fgrMCclosureTestRel->SetMarkerStyle(26);
2008 fgrBeautyFDRel->SetLineColor(kViolet);
2009 fgrBeautyFDRel->SetLineWidth(2);
2010 fgrBeautyFDRel->SetFillStyle(3021);
2011 fgrBeautyFDRel->SetFillColor(kViolet);
2012 fgrBeautyFDRel->SetMarkerColor(kViolet);
2013 fgrBeautyFDRel->SetMarkerStyle(28);
2020 void AliHFDhadronCorrSystUnc::BuildGraphsUnc(TH1D *hRef){
2022 if(fgrYieldUnc)delete fgrYieldUnc;
2023 if(fgrBackSubUnc)delete fgrBackSubUnc;
2024 if(fgrMCcorrections)delete fgrMCcorrections;
2025 if(fgrMCDefficiency)delete fgrMCDefficiency;
2026 if(fgrSecContamination)delete fgrSecContamination;
2027 if(fgrMCclosureTest)delete fgrMCclosureTest;
2028 if(fgrBeautyFD)delete fgrBeautyFD;
2029 if(fgrTotalRel)delete fgrTotalRel;
2030 if(fgrTotal)delete fgrTotal;
2031 if(fgrTotalNonFlatDPhi)delete fgrTotalNonFlatDPhi;
2032 if(fgrTotalNonFlatDPhiRel)delete fgrTotalNonFlatDPhiRel;
2033 if(fgrTotalFlatDPhi)delete fgrTotalFlatDPhi;
2034 if(fgrTotalFlatDPhiRel)delete fgrTotalFlatDPhiRel;
2036 fgrYieldUnc=GetUncGraphFromHistos(hRef,fhYieldExtraction,0x0);
2037 fgrYieldUnc->SetName("fgrYieldUnc");
2038 fgrYieldUnc->SetTitle("D meson yield");
2040 fgrBackSubUnc=GetUncGraphFromHistos(hRef,fhBackSubtractionMin,fhBackSubtractionMax);
2041 fgrBackSubUnc->SetName("fgrBackSubUnc");
2042 fgrBackSubUnc->SetTitle("Background D correlation subtraction");
2045 fgrMCcorrections=GetUncGraphFromHistos(hRef,fhMCcorrectionsMin,fhMCcorrectionsMax);
2046 fgrMCcorrections->SetName("fgrMCcorrections");
2047 fgrMCcorrections->SetTitle("Associated track efficiency");
2049 fgrMCDefficiency=GetUncGraphFromHistos(hRef,fhMCDefficiencyMin,fhMCDefficiencyMax);
2050 fgrMCDefficiency->SetName("fgrMCDefficiency");
2051 fgrMCDefficiency->SetTitle("D meson efficiency");
2053 fgrSecContamination=GetUncGraphFromHistos(hRef,fhSecContaminationMin,fhSecContaminationMax);
2054 fgrSecContamination->SetName("fgrSecContamination");
2055 fgrSecContamination->SetTitle("Secondary contamination");
2057 fgrMCclosureTest=GetUncGraphFromHistos(hRef,fhMCclosureTestMin,fhMCclosureTestMax);
2058 fgrMCclosureTest->SetName("fgrMCclosureTest");
2059 fgrMCclosureTest->SetTitle("MC closure test");
2061 fgrBeautyFD=GetUncGraphFromHistos(hRef,fhBeautyFDmin,fhBeautyFDmax);
2062 fgrBeautyFD->SetName("fgrBeautyFD");
2063 fgrBeautyFD->SetTitle("Feed-down");
2065 fgrYieldUnc->SetLineColor(kBlue);
2066 fgrYieldUnc->SetLineWidth(2);
2067 fgrYieldUnc->SetFillStyle(0);
2068 fgrYieldUnc->SetFillColor(kBlue);
2069 fgrYieldUnc->SetMarkerColor(kBlue);
2070 fgrYieldUnc->SetMarkerStyle(20);
2073 fgrBackSubUnc->SetLineColor(kMagenta);
2074 fgrBackSubUnc->SetLineWidth(2);
2075 fgrBackSubUnc->SetFillStyle(0);
2076 fgrBackSubUnc->SetFillColor(kMagenta);
2077 fgrBackSubUnc->SetMarkerColor(kBlue);
2078 fgrBackSubUnc->SetMarkerStyle(20);
2081 fgrMCcorrections->SetLineColor(kGreen);
2082 fgrMCcorrections->SetLineWidth(2);
2083 fgrMCcorrections->SetFillStyle(0);
2084 fgrMCcorrections->SetFillColor(kGreen);
2085 fgrMCcorrections->SetMarkerColor(kGreen);
2086 fgrMCcorrections->SetMarkerStyle(22);
2088 fgrMCDefficiency->SetLineColor(kCyan);
2089 fgrMCDefficiency->SetLineWidth(2);
2090 fgrMCDefficiency->SetFillStyle(0);
2091 fgrMCDefficiency->SetFillColor(kCyan);
2092 fgrMCDefficiency->SetMarkerColor(kCyan);
2093 fgrMCDefficiency->SetMarkerStyle(22);
2095 fgrSecContamination->SetLineColor(kOrange);
2096 fgrSecContamination->SetLineWidth(2);
2097 fgrSecContamination->SetFillStyle(0);
2098 fgrSecContamination->SetFillColor(kOrange);
2099 fgrSecContamination->SetMarkerColor(kOrange);
2100 fgrSecContamination->SetMarkerStyle(22);
2102 fgrMCclosureTest->SetLineColor(kRed);
2103 fgrMCclosureTest->SetLineWidth(2);
2104 fgrMCclosureTest->SetFillStyle(0);
2105 fgrMCclosureTest->SetFillColor(kRed);
2106 fgrMCclosureTest->SetMarkerColor(kRed);
2107 fgrMCclosureTest->SetMarkerStyle(26);
2109 fgrBeautyFD->SetLineColor(kViolet);
2110 fgrBeautyFD->SetLineWidth(2);
2111 fgrBeautyFD->SetFillStyle(0);
2112 fgrBeautyFD->SetFillColor(kViolet);
2113 fgrBeautyFD->SetMarkerColor(kViolet);
2114 fgrBeautyFD->SetMarkerStyle(28);
2116 // fgrTotalRel=GetUncGraphFromHistos(0x0,fhTotalMin,fhTotalMax);
2118 fgrTotalRel=GetUncGraphFromHistos(0x0,fhTotalMin,fhTotalMax);
2119 fgrTotalRel->SetLineColor(kBlack);
2120 fgrTotalRel->SetLineWidth(2);
2121 fgrTotalRel->SetFillStyle(0);
2122 // fgrTotalRel->SetFillColor(kRed);
2123 fgrTotalRel->SetMarkerColor(kBlack);
2124 fgrTotalRel->SetMarkerStyle(26);
2126 fgrTotal=GetUncGraphFromHistos(hRef,fhTotalMin,fhTotalMax);
2127 fgrTotal->SetLineColor(kBlack);
2128 fgrTotal->SetLineWidth(2);
2129 fgrTotal->SetFillStyle(0);
2130 fgrTotal->SetFillColor(kRed);
2131 fgrTotal->SetMarkerColor(kBlack);
2132 fgrTotal->SetMarkerStyle(26);
2135 if(fhTotalNonFDMin){
2136 fgrTotalNonFD=GetUncGraphFromHistos(hRef,fhTotalNonFDMin,fhTotalNonFDMax);
2137 fgrTotalNonFD->SetLineColor(kBlue);
2138 fgrTotalNonFD->SetLineWidth(2);
2139 fgrTotalNonFD->SetFillStyle(3005);
2140 fgrTotalNonFD->SetFillColor(kBlue);
2141 fgrTotalNonFD->SetMarkerColor(kBlue);
2142 fgrTotalNonFD->SetMarkerStyle(26);
2145 if(fhTotalNonFlatDPhiMin){
2146 fgrTotalNonFlatDPhiRel=GetUncGraphFromHistos(0x0,fhTotalNonFlatDPhiMin,fhTotalNonFlatDPhiMax);
2147 fgrTotalNonFlatDPhiRel->SetLineColor(kBlack);
2148 fgrTotalNonFlatDPhiRel->SetLineWidth(2);
2149 fgrTotalNonFlatDPhiRel->SetFillStyle(0);
2150 // fgrTotalRel->SetFillColor(kRed);
2151 fgrTotalNonFlatDPhiRel->SetMarkerColor(kBlack);
2152 fgrTotalNonFlatDPhiRel->SetMarkerStyle(26);
2154 fgrTotalNonFlatDPhi=GetUncGraphFromHistos(hRef,fhTotalNonFlatDPhiMin,fhTotalNonFlatDPhiMax);
2155 fgrTotalNonFlatDPhi->SetLineColor(kBlack);
2156 fgrTotalNonFlatDPhi->SetLineWidth(2);
2157 fgrTotalNonFlatDPhi->SetFillStyle(3005);
2158 fgrTotalNonFlatDPhi->SetFillColor(kRed);
2159 fgrTotalNonFlatDPhi->SetMarkerColor(kBlack);
2160 fgrTotalNonFlatDPhi->SetMarkerStyle(26);
2162 fgrTotalFlatDPhiRel=GetUncGraphFromHistos(0x0,fhtotFlatMin,fhtotFlatMax);
2163 fgrTotalFlatDPhiRel->SetLineColor(kBlack);
2164 fgrTotalFlatDPhiRel->SetLineWidth(2);
2165 fgrTotalFlatDPhiRel->SetFillStyle(0);
2166 // fgrTotalRel->SetFillColor(kRed);
2167 fgrTotalFlatDPhiRel->SetMarkerColor(kBlack);
2168 fgrTotalFlatDPhiRel->SetMarkerStyle(26);
2170 fgrTotalFlatDPhi=GetUncGraphFromHistos(hRef,fhtotFlatMin,fhtotFlatMax);
2171 fgrTotalFlatDPhi->SetLineColor(kBlack);
2172 fgrTotalFlatDPhi->SetLineWidth(2);
2173 fgrTotalFlatDPhi->SetFillStyle(3005);
2174 fgrTotalFlatDPhi->SetFillColor(kBlack);
2175 fgrTotalFlatDPhi->SetMarkerColor(kBlack);
2176 fgrTotalFlatDPhi->SetMarkerStyle(26);
2182 TCanvas* AliHFDhadronCorrSystUnc::BuildSystUncertaintyPlotVsDeltaPhi(TH1D *hCorrPlot,Int_t doInit){
2185 BuildTotalUncHisto();
2186 BuildTotalNonFDUncHisto();
2187 BuildTotalNonFlatUncHisto();
2188 BuildGraphsUnc(hCorrPlot);
2189 BuildGraphsRelUnc();
2193 // Easy canva with relative uncertainties
2194 TCanvas *cCanvaRelUnc=new TCanvas("cCanvaRelUnc","cCanvaRelUnc",700,700);
2196 TH2D *hDraw=new TH2D("hDraw","hDraw",32,-TMath::Pi()/2.,3./2.*TMath::Pi(),200,-2.,2.);
2197 hDraw->SetXTitle("#Delta#phi (rad)");
2198 hDraw->SetYTitle("Relative uncertainty");
2202 fgrYieldUncRel->Draw("E2");
2203 fgrBackSubUncRel->Draw("E2");
2204 fgrMCcorrectionsRel->Draw("E2");
2205 fgrMCDefficiencyRel->Draw("E2");
2206 fgrSecContaminationRel->Draw("E2");
2207 fgrMCclosureTestRel->Draw("E2");
2208 fgrBeautyFDRel->Draw("E2");
2209 // fgrTotalRel->Draw("E2");
2211 fhtotFlatMin->Draw("same");
2212 fhtotFlatMax->Draw("same");
2214 fhTotalMin->Draw("same");
2215 fhTotalMax->Draw("same");
2217 TCanvas *cCanvaFinalPlot=new TCanvas("cCanvaFinalPlot","cCanvaFinalPlot",700,700);
2218 cCanvaFinalPlot->cd();
2220 // fgrYieldUnc->Draw("pE2");
2221 // fgrBackSubUnc->Draw("pE2");
2222 // fgrMCcorrections->Draw("pE2");
2223 // fgrMCclosureTest->Draw("pE2");
2224 // fgrBeautyFD->Draw("pE2");
2225 fgrTotal->Draw("E2");
2228 TCanvas *cCanvaFinalPlotFD=new TCanvas("cCanvaFinalPlotFD","cCanvaFinalPlotFD",700,700);
2229 cCanvaFinalPlotFD->cd();
2231 // fgrYieldUnc->Draw("pE2");
2232 // fgrBackSubUnc->Draw("pE2");
2233 // fgrMCcorrections->Draw("pE2");
2234 // fgrMCclosureTest->Draw("pE2");
2235 // fgrBeautyFD->Draw("pE2");
2236 fgrBeautyFD->Draw("E2");
2237 fgrTotalNonFD->Draw("E2");
2238 fgrTotalNonFlatDPhi->Draw("E2");
2239 fgrTotalFlatDPhi->Draw("E2");
2241 return cCanvaFinalPlot;
2245 TH1D* AliHFDhadronCorrSystUnc::GetVariedHisto(const TH1D *hIn,const TGraphAsymmErrors *gr,Int_t minmax){
2249 hOut=(TH1D*)hIn->Clone(Form("%sVariedMin",hIn->GetName()));
2252 hOut=(TH1D*)hIn->Clone(Form("%sVariedMax",hIn->GetName()));
2254 // Int_t np=gr->GetN();
2255 Double_t *x,*y,*ely,*ehy;//*elx,*ehx,
2258 // elx=gr->GetEXlow();
2259 // ehx=gr->GetEXhigh();
2261 ehy=gr->GetEYhigh();
2263 for(Int_t jp=1;jp<=hIn->GetNbinsX();jp++){
2264 if(TMath::Abs(x[jp-1]-hIn->GetBinCenter(jp))>0.0001){
2265 Printf("Bin Mismatch: this method assumes that the graph has the points in the center of the histo bin centers");
2268 if(TMath::Abs(y[jp-1]-hIn->GetBinContent(jp))>0.0001){
2269 Printf("Value Mismatch: this method relies on the fact that the graph central values are the same as those of the histo");
2273 hOut->SetBinContent(jp,y[jp-1]-ely[jp-1]);
2276 hOut->SetBinContent(jp,y[jp-1]+ehy[jp-1]);
2278 hOut->SetBinError(jp,hIn->GetBinError(jp));
2286 ////////////////////////////////////////////////////////////////////////////////////////////////////////
2288 ///// METHODS WITH UNCERTAINTIES: PP 2010, for kinematic cases approved after HP2013
2290 ////////////////////////////////////////////////////////////////////////////////////////////////////////
2293 // START FROM DPLUS FOR PT(ASSOC)>0.3
2294 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusLowPtAss03(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
2297 fstrptAss="ptAsMore03";
2299 if(!fhDeltaPhiTemplate){
2300 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
2303 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
2304 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
2305 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
2306 fhYieldExtraction->SetBinContent(j,0.1);
2309 // Background D MESON candidate subtraction (side-band variations, etc.)
2310 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
2311 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
2312 fhBackSubtractionMin->SetBinContent(j,-0.05);
2315 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
2316 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
2317 fhBackSubtractionMax->SetBinContent(j,0.05);
2321 // MC CORRECTIONS ( associatate track efficiency):
2322 // -5% +10% for assoc track eff
2323 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
2324 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
2325 fhMCcorrectionsMin->SetBinContent(j,-0.05);
2328 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
2329 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
2330 fhMCcorrectionsMax->SetBinContent(j,0.10);
2333 // MC D EFF CORRECTION
2334 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
2335 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
2336 fhMCDefficiencyMin->SetBinContent(j,-0.05);
2339 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
2340 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
2341 fhMCDefficiencyMax->SetBinContent(j,0.05);
2345 // Contamination from secondary tracks
2346 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
2347 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
2348 fhSecContaminationMin->SetBinContent(j,-0.05);
2351 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
2352 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
2353 fhSecContaminationMax->SetBinContent(j,0.05);
2357 // MC CLOSURETEST (D meson efficiency)
2358 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
2359 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
2360 x=fhMCclosureTestMin->GetBinLowEdge(j);
2361 fhMCclosureTestMin->SetBinContent(j,-0.0);
2364 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2366 else if(-0.2<x&&x<-0.1){
2367 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2369 else if(-0.1<x&&x<0.1){
2370 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
2372 else if(0.1<x&&x<0.2){
2373 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2376 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2380 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
2381 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
2382 // x=fhMCclosureTestMax->GetBinLowEdge(j);
2383 fhMCclosureTestMax->SetBinContent(j,0.);
2385 // if(-0.4<x&&x<-0.2){
2386 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2388 // else if(-0.2<x&&x<-0.1){
2389 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2391 // else if(-0.2<x&&x<-0.1){
2392 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2394 // else if(-0.1<x&&x<0.1){
2395 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
2397 // else if(0.1<x&&x<0.2){
2398 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2400 // if(0.2<x&&x<0.4){
2401 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2408 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
2409 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
2410 x=fhBeautyFDmin->GetBinLowEdge(j);
2411 fhBeautyFDmin->SetBinContent(j,-0.05);
2413 // if(-0.4<x&&x<-0.2){
2414 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2416 // else if(-0.2<x&&x<-0.1){
2417 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2419 // else if(-0.2<x&&x<-0.1){
2420 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2422 // else if(-0.1<x&&x<0.1){
2423 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
2425 // else if(0.1<x&&x<0.2){
2426 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2428 // if(0.2<x&&x<0.4){
2429 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2433 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
2434 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
2435 x=fhBeautyFDmax->GetBinLowEdge(j);
2436 fhBeautyFDmax->SetBinContent(j,0.03);
2438 // if(-0.4<x&&x<-0.2){
2439 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2441 // else if(-0.2<x&&x<-0.1){
2442 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2444 // else if(-0.2<x&&x<-0.1){
2445 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2447 // else if(-0.1<x&&x<0.1){
2448 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
2450 // else if(0.1<x&&x<0.2){
2451 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2453 // if(0.2<x&&x<0.4){
2454 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2461 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusMidPtAss03(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
2465 fstrptAss="ptAsMore03";
2467 if(!fhDeltaPhiTemplate){
2468 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
2471 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
2472 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
2473 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
2474 fhYieldExtraction->SetBinContent(j,0.1);
2477 // Background D MESON candidate subtraction (side-band variations, etc.)
2478 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
2479 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
2480 fhBackSubtractionMin->SetBinContent(j,-0.05);
2483 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
2484 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
2485 fhBackSubtractionMax->SetBinContent(j,0.05);
2488 // MC CORRECTIONS: -5% +10% for assoc track eff
2489 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
2490 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
2491 fhMCcorrectionsMin->SetBinContent(j,-0.05);
2494 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
2495 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
2496 fhMCcorrectionsMax->SetBinContent(j,0.10);
2500 // MC D EFF CORRECTION
2501 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
2502 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
2503 fhMCDefficiencyMin->SetBinContent(j,-0.05);
2506 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
2507 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
2508 fhMCDefficiencyMax->SetBinContent(j,0.05);
2512 // Contamination from secondary tracks
2513 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
2514 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
2515 fhSecContaminationMin->SetBinContent(j,-0.05);
2518 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
2519 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
2520 fhSecContaminationMax->SetBinContent(j,0.05);
2523 // MC CLOSURETEST (D meson efficiency)
2524 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
2525 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
2526 x=fhMCclosureTestMin->GetBinLowEdge(j);
2527 fhMCclosureTestMin->SetBinContent(j,-0.0);
2530 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2532 else if(-0.2<x&&x<-0.1){
2533 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2535 else if(-0.1<x&&x<0.1){
2536 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
2538 else if(0.1<x&&x<0.2){
2539 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2542 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2546 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
2547 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
2548 x=fhMCclosureTestMax->GetBinLowEdge(j);
2549 fhMCclosureTestMax->SetBinContent(j,0.);
2551 // if(-0.4<x&&x<-0.2){
2552 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2554 // else if(-0.2<x&&x<-0.1){
2555 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2557 // else if(-0.2<x&&x<-0.1){
2558 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2560 // else if(-0.1<x&&x<0.1){
2561 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
2563 // else if(0.1<x&&x<0.2){
2564 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2566 // if(0.2<x&&x<0.4){
2567 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2574 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
2575 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
2576 x=fhBeautyFDmin->GetBinLowEdge(j);
2577 fhBeautyFDmin->SetBinContent(j,-0.05);
2579 // if(-0.4<x&&x<-0.2){
2580 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2582 // else if(-0.2<x&&x<-0.1){
2583 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2585 // else if(-0.2<x&&x<-0.1){
2586 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2588 // else if(-0.1<x&&x<0.1){
2589 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
2591 // else if(0.1<x&&x<0.2){
2592 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2594 // if(0.2<x&&x<0.4){
2595 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2599 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
2600 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
2601 x=fhBeautyFDmax->GetBinLowEdge(j);
2602 fhBeautyFDmax->SetBinContent(j,0.03);
2604 // if(-0.4<x&&x<-0.2){
2605 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2607 // else if(-0.2<x&&x<-0.1){
2608 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2610 // else if(-0.2<x&&x<-0.1){
2611 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2613 // else if(-0.1<x&&x<0.1){
2614 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
2616 // else if(0.1<x&&x<0.2){
2617 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2619 // if(0.2<x&&x<0.4){
2620 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2628 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusHighPtAss03(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
2632 fstrptAss="ptAsMore03";
2634 if(!fhDeltaPhiTemplate){
2635 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
2639 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
2640 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
2641 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
2642 fhYieldExtraction->SetBinContent(j,0.1);
2645 // Background D MESON candidate subtraction (side-band variations, etc.)
2646 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
2647 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
2648 fhBackSubtractionMin->SetBinContent(j,-0.05);
2651 // Background D MESON candidate subtraction (side-band variations, etc.)
2652 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
2653 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
2654 fhBackSubtractionMax->SetBinContent(j,0.05);
2657 // MC CORRECTIONS, -5% 10% for assoc track eff
2658 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
2659 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
2660 fhMCcorrectionsMin->SetBinContent(j,-0.05);
2663 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
2664 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
2665 fhMCcorrectionsMax->SetBinContent(j,0.10);
2669 // MC D EFF CORRECTION
2670 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
2671 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
2672 fhMCDefficiencyMin->SetBinContent(j,-0.05);
2675 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
2676 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
2677 fhMCDefficiencyMax->SetBinContent(j,0.05);
2681 // Contamination from secondary tracks
2682 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
2683 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
2684 fhSecContaminationMin->SetBinContent(j,-0.05);
2687 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
2688 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
2689 fhSecContaminationMax->SetBinContent(j,0.05);
2692 // MC CLOSURETEST (D meson efficiency)
2693 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
2694 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
2695 x=fhMCclosureTestMin->GetBinLowEdge(j);
2696 fhMCclosureTestMin->SetBinContent(j,-0.0);
2699 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2701 else if(-0.2<x&&x<-0.1){
2702 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2704 else if(-0.1<x&&x<0.1){
2705 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
2707 else if(0.1<x&&x<0.2){
2708 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2711 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2715 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
2716 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
2717 x=fhMCclosureTestMax->GetBinLowEdge(j);
2718 fhMCclosureTestMax->SetBinContent(j,0.);
2720 // if(-0.4<x&&x<-0.2){
2721 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2723 // else if(-0.2<x&&x<-0.1){
2724 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2726 // else if(-0.2<x&&x<-0.1){
2727 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2729 // else if(-0.1<x&&x<0.1){
2730 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
2732 // else if(0.1<x&&x<0.2){
2733 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2735 // if(0.2<x&&x<0.4){
2736 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2743 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
2744 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
2745 x=fhBeautyFDmin->GetBinLowEdge(j);
2746 fhBeautyFDmin->SetBinContent(j,-0.05);
2748 // if(-0.4<x&&x<-0.2){
2749 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2751 // else if(-0.2<x&&x<-0.1){
2752 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2754 // else if(-0.2<x&&x<-0.1){
2755 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2757 // else if(-0.1<x&&x<0.1){
2758 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
2760 // else if(0.1<x&&x<0.2){
2761 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2763 // if(0.2<x&&x<0.4){
2764 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2768 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
2769 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
2770 x=fhBeautyFDmax->GetBinLowEdge(j);
2771 fhBeautyFDmax->SetBinContent(j,0.03);
2773 // if(-0.4<x&&x<-0.2){
2774 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2776 // else if(-0.2<x&&x<-0.1){
2777 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2779 // else if(-0.2<x&&x<-0.1){
2780 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2782 // else if(-0.1<x&&x<0.1){
2783 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
2785 // else if(0.1<x&&x<0.2){
2786 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2788 // if(0.2<x&&x<0.4){
2789 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2798 //////// HIGHER PT ASS THRESHOLDS
2800 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroLowPtAss05(){
2801 Printf("Setting syst for D0 pp 2010 3-5 0.5 thr");
2804 fstrptAss="ptAsMore05";
2806 if(!fhDeltaPhiTemplate){
2807 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
2810 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
2811 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
2812 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
2813 fhYieldExtraction->SetBinContent(j,0.1);
2816 // Background D MESON candidate subtraction (side-band variations, etc.)
2817 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
2818 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
2819 fhBackSubtractionMin->SetBinContent(j,-0.05);
2822 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
2823 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
2824 fhBackSubtractionMax->SetBinContent(j,0.05);
2828 // MC CORRECTIONS ( associatate track efficiency):
2829 // -5% +10% for assoc track eff
2830 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
2831 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
2832 fhMCcorrectionsMin->SetBinContent(j,-0.05);
2835 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
2836 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
2837 fhMCcorrectionsMax->SetBinContent(j,0.10);
2840 // MC D EFF CORRECTION
2841 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
2842 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
2843 fhMCDefficiencyMin->SetBinContent(j,-0.05);
2846 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
2847 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
2848 fhMCDefficiencyMax->SetBinContent(j,0.05);
2852 // Contamination from secondary tracks
2853 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
2854 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
2855 fhSecContaminationMin->SetBinContent(j,-0.05);
2858 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
2859 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
2860 fhSecContaminationMax->SetBinContent(j,0.05);
2864 // MC CLOSURETEST (D meson efficiency)
2865 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
2866 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
2867 x=fhMCclosureTestMin->GetBinLowEdge(j);
2868 fhMCclosureTestMin->SetBinContent(j,-0.);
2871 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2873 else if(-0.2<x&&x<-0.1){
2874 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2876 else if(-0.1<x&&x<0.1){
2877 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
2879 else if(0.1<x&&x<0.2){
2880 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
2883 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
2887 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
2888 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
2889 // x=fhMCclosureTestMax->GetBinLowEdge(j);
2890 fhMCclosureTestMax->SetBinContent(j,0.);
2892 // if(-0.4<x&&x<-0.2){
2893 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2895 // else if(-0.2<x&&x<-0.1){
2896 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2898 // else if(-0.2<x&&x<-0.1){
2899 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2901 // else if(-0.1<x&&x<0.1){
2902 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
2904 // else if(0.1<x&&x<0.2){
2905 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
2907 // if(0.2<x&&x<0.4){
2908 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
2915 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
2916 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
2917 x=fhBeautyFDmin->GetBinLowEdge(j);
2918 fhBeautyFDmin->SetBinContent(j,-0.05);
2920 // if(-0.4<x&&x<-0.2){
2921 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2923 // else if(-0.2<x&&x<-0.1){
2924 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2926 // else if(-0.2<x&&x<-0.1){
2927 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2929 // else if(-0.1<x&&x<0.1){
2930 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
2932 // else if(0.1<x&&x<0.2){
2933 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
2935 // if(0.2<x&&x<0.4){
2936 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
2940 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
2941 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
2942 x=fhBeautyFDmax->GetBinLowEdge(j);
2943 fhBeautyFDmax->SetBinContent(j,0.03);
2945 // if(-0.4<x&&x<-0.2){
2946 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2948 // else if(-0.2<x&&x<-0.1){
2949 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2951 // else if(-0.2<x&&x<-0.1){
2952 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2954 // else if(-0.1<x&&x<0.1){
2955 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
2957 // else if(0.1<x&&x<0.2){
2958 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
2960 // if(0.2<x&&x<0.4){
2961 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
2968 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroMidPtAss05(){
2969 Printf("Setting syst for D0 pp 2010 5-8 0.5 thr");
2973 fstrptAss="ptAsMore05";
2975 if(!fhDeltaPhiTemplate){
2976 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
2979 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
2980 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
2981 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
2982 fhYieldExtraction->SetBinContent(j,0.1);
2985 // Background D MESON candidate subtraction (side-band variations, etc.)
2986 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
2987 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
2988 fhBackSubtractionMin->SetBinContent(j,-0.05);
2991 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
2992 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
2993 fhBackSubtractionMax->SetBinContent(j,0.05);
2996 // MC CORRECTIONS: -5% +10% for assoc track eff
2997 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
2998 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
2999 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3002 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3003 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3004 fhMCcorrectionsMax->SetBinContent(j,0.10);
3008 // MC D EFF CORRECTION
3009 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3010 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3011 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3014 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3015 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3016 fhMCDefficiencyMax->SetBinContent(j,0.05);
3020 // Contamination from secondary tracks
3021 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3022 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3023 fhSecContaminationMin->SetBinContent(j,-0.05);
3026 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3027 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3028 fhSecContaminationMax->SetBinContent(j,0.05);
3031 // MC CLOSURETEST (D meson efficiency)
3032 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3033 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3034 x=fhMCclosureTestMin->GetBinLowEdge(j);
3035 fhMCclosureTestMin->SetBinContent(j,-0.);
3038 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3040 else if(-0.2<x&&x<-0.1){
3041 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3043 else if(-0.1<x&&x<0.1){
3044 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3046 else if(0.1<x&&x<0.2){
3047 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3050 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3054 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3055 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3056 x=fhMCclosureTestMax->GetBinLowEdge(j);
3057 fhMCclosureTestMax->SetBinContent(j,0.);
3059 // if(-0.4<x&&x<-0.2){
3060 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3062 // else if(-0.2<x&&x<-0.1){
3063 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3065 // else if(-0.2<x&&x<-0.1){
3066 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3068 // else if(-0.1<x&&x<0.1){
3069 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3071 // else if(0.1<x&&x<0.2){
3072 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3074 // if(0.2<x&&x<0.4){
3075 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3082 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3083 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3084 x=fhBeautyFDmin->GetBinLowEdge(j);
3085 fhBeautyFDmin->SetBinContent(j,-0.05);
3087 // if(-0.4<x&&x<-0.2){
3088 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3090 // else if(-0.2<x&&x<-0.1){
3091 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3093 // else if(-0.2<x&&x<-0.1){
3094 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3096 // else if(-0.1<x&&x<0.1){
3097 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3099 // else if(0.1<x&&x<0.2){
3100 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3102 // if(0.2<x&&x<0.4){
3103 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3107 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3108 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3109 x=fhBeautyFDmax->GetBinLowEdge(j);
3110 fhBeautyFDmax->SetBinContent(j,0.03);
3112 // if(-0.4<x&&x<-0.2){
3113 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3115 // else if(-0.2<x&&x<-0.1){
3116 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3118 // else if(-0.2<x&&x<-0.1){
3119 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3121 // else if(-0.1<x&&x<0.1){
3122 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3124 // else if(0.1<x&&x<0.2){
3125 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3127 // if(0.2<x&&x<0.4){
3128 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3136 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroHighPtAss05(){
3137 Printf("Setting syst for D0 pp 2010 8-16 0.5 thr");
3141 fstrptAss="ptAsMore05";
3143 if(!fhDeltaPhiTemplate){
3144 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3148 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3149 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3150 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3151 fhYieldExtraction->SetBinContent(j,0.1);
3154 // Background D MESON candidate subtraction (side-band variations, etc.)
3155 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3156 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3157 fhBackSubtractionMin->SetBinContent(j,-0.05);
3160 // Background D MESON candidate subtraction (side-band variations, etc.)
3161 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
3162 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
3163 fhBackSubtractionMax->SetBinContent(j,0.05);
3166 // MC CORRECTIONS, -5% 10% for assoc track eff
3167 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
3168 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
3169 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3172 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3173 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3174 fhMCcorrectionsMax->SetBinContent(j,0.10);
3178 // MC D EFF CORRECTION
3179 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3180 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3181 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3184 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3185 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3186 fhMCDefficiencyMax->SetBinContent(j,0.05);
3190 // Contamination from secondary tracks
3191 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3192 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3193 fhSecContaminationMin->SetBinContent(j,-0.05);
3196 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3197 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3198 fhSecContaminationMax->SetBinContent(j,0.05);
3201 // MC CLOSURETEST (D meson efficiency)
3202 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3203 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3204 x=fhMCclosureTestMin->GetBinLowEdge(j);
3205 fhMCclosureTestMin->SetBinContent(j,-0.);
3208 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3210 else if(-0.2<x&&x<-0.1){
3211 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3213 else if(-0.1<x&&x<0.1){
3214 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3216 else if(0.1<x&&x<0.2){
3217 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3220 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3224 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3225 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3226 x=fhMCclosureTestMax->GetBinLowEdge(j);
3227 fhMCclosureTestMax->SetBinContent(j,0.);
3229 // if(-0.4<x&&x<-0.2){
3230 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3232 // else if(-0.2<x&&x<-0.1){
3233 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3235 // else if(-0.2<x&&x<-0.1){
3236 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3238 // else if(-0.1<x&&x<0.1){
3239 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3241 // else if(0.1<x&&x<0.2){
3242 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3244 // if(0.2<x&&x<0.4){
3245 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3252 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3253 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3254 x=fhBeautyFDmin->GetBinLowEdge(j);
3255 fhBeautyFDmin->SetBinContent(j,-0.05);
3257 // if(-0.4<x&&x<-0.2){
3258 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3260 // else if(-0.2<x&&x<-0.1){
3261 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3263 // else if(-0.2<x&&x<-0.1){
3264 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3266 // else if(-0.1<x&&x<0.1){
3267 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3269 // else if(0.1<x&&x<0.2){
3270 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3272 // if(0.2<x&&x<0.4){
3273 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3277 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3278 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3279 x=fhBeautyFDmax->GetBinLowEdge(j);
3280 fhBeautyFDmax->SetBinContent(j,0.03);
3282 // if(-0.4<x&&x<-0.2){
3283 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3285 // else if(-0.2<x&&x<-0.1){
3286 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3288 // else if(-0.2<x&&x<-0.1){
3289 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3291 // else if(-0.1<x&&x<0.1){
3292 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3294 // else if(0.1<x&&x<0.2){
3295 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3297 // if(0.2<x&&x<0.4){
3298 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3308 //--------------------------------------------------
3309 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarLowPtAss05(){
3310 Printf("Setting uncertainties for Dstar pp 2010, 3<pt(D)<5, pt(assoc)>0.5 GeV/c ");
3313 fstrptAss="ptAsMore05";
3315 if(!fhDeltaPhiTemplate){
3316 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3319 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3320 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3321 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3322 fhYieldExtraction->SetBinContent(j,0.1);
3325 // Background D MESON candidate subtraction (side-band variations, etc.)
3326 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3327 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3328 fhBackSubtractionMin->SetBinContent(j,-0.05);
3331 // Background D MESON candidate subtraction (side-band variations, etc.)
3332 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
3333 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
3334 fhBackSubtractionMax->SetBinContent(j,0.05);
3337 // MC CORRECTIONS, -5% 10% for assoc track eff
3338 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
3339 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
3340 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3343 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3344 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3345 fhMCcorrectionsMax->SetBinContent(j,0.10);
3349 // MC D EFF CORRECTION
3350 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3351 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3352 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3355 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3356 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3357 fhMCDefficiencyMax->SetBinContent(j,0.05);
3361 // Contamination from secondary tracks
3362 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3363 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3364 fhSecContaminationMin->SetBinContent(j,-0.05);
3367 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3368 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3369 fhSecContaminationMax->SetBinContent(j,0.05);
3372 // MC CLOSURETEST (D meson efficiency)
3373 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3374 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3375 x=fhMCclosureTestMin->GetBinLowEdge(j);
3376 fhMCclosureTestMin->SetBinContent(j,-0.08);
3379 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3381 else if(-0.2<x&&x<-0.1){
3382 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3384 else if(-0.1<x&&x<0.1){
3385 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3387 else if(0.1<x&&x<0.2){
3388 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3391 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3395 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3396 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3397 x=fhMCclosureTestMax->GetBinLowEdge(j);
3398 fhMCclosureTestMax->SetBinContent(j,0.);
3400 // if(-0.4<x&&x<-0.2){
3401 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3403 // else if(-0.2<x&&x<-0.1){
3404 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3406 // else if(-0.2<x&&x<-0.1){
3407 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3409 // else if(-0.1<x&&x<0.1){
3410 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3412 // else if(0.1<x&&x<0.2){
3413 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3415 // if(0.2<x&&x<0.4){
3416 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3423 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3424 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3425 x=fhBeautyFDmin->GetBinLowEdge(j);
3426 fhBeautyFDmin->SetBinContent(j,-0.05);
3428 // if(-0.4<x&&x<-0.2){
3429 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3431 // else if(-0.2<x&&x<-0.1){
3432 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3434 // else if(-0.2<x&&x<-0.1){
3435 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3437 // else if(-0.1<x&&x<0.1){
3438 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3440 // else if(0.1<x&&x<0.2){
3441 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3443 // if(0.2<x&&x<0.4){
3444 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3448 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3449 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3450 x=fhBeautyFDmax->GetBinLowEdge(j);
3451 fhBeautyFDmax->SetBinContent(j,0.03);
3453 // if(-0.4<x&&x<-0.2){
3454 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3456 // else if(-0.2<x&&x<-0.1){
3457 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3459 // else if(-0.2<x&&x<-0.1){
3460 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3462 // else if(-0.1<x&&x<0.1){
3463 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3465 // else if(0.1<x&&x<0.2){
3466 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3468 // if(0.2<x&&x<0.4){
3469 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3477 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarMidPtAss05(){
3478 Printf("Setting uncertainties for Dstar pp 2010, 5<pt(D)<8, pt(assoc)>0.5 GeV/c ");
3481 fstrptAss="ptAsMore05";
3483 if(!fhDeltaPhiTemplate){
3484 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3487 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3488 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3489 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3490 fhYieldExtraction->SetBinContent(j,0.1);
3493 // Background D MESON candidate subtraction (side-band variations, etc.)
3494 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3495 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3496 fhBackSubtractionMin->SetBinContent(j,-0.05);
3499 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
3500 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
3501 fhBackSubtractionMax->SetBinContent(j,0.05);
3504 // MC CORRECTIONS/ -5% 10% for assoc track eff
3505 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
3506 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
3507 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3510 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3511 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3512 fhMCcorrectionsMax->SetBinContent(j,0.10);
3515 // MC D EFF CORRECTION
3516 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3517 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3518 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3521 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3522 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3523 fhMCDefficiencyMax->SetBinContent(j,0.05);
3527 // Contamination from secondary tracks
3528 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3529 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3530 fhSecContaminationMin->SetBinContent(j,-0.05);
3533 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3534 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3535 fhSecContaminationMax->SetBinContent(j,0.05);
3538 // MC CLOSURETEST (D meson efficiency)
3539 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3540 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3541 x=fhMCclosureTestMin->GetBinLowEdge(j);
3542 fhMCclosureTestMin->SetBinContent(j,-0.0);
3545 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3547 else if(-0.2<x&&x<-0.1){
3548 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3550 else if(-0.1<x&&x<0.1){
3551 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3553 else if(0.1<x&&x<0.2){
3554 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3557 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3561 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3562 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3563 x=fhMCclosureTestMax->GetBinLowEdge(j);
3564 fhMCclosureTestMax->SetBinContent(j,0.);
3566 // if(-0.4<x&&x<-0.2){
3567 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3569 // else if(-0.2<x&&x<-0.1){
3570 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3572 // else if(-0.2<x&&x<-0.1){
3573 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3575 // else if(-0.1<x&&x<0.1){
3576 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3578 // else if(0.1<x&&x<0.2){
3579 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3581 // if(0.2<x&&x<0.4){
3582 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3589 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3590 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3591 x=fhBeautyFDmin->GetBinLowEdge(j);
3592 fhBeautyFDmin->SetBinContent(j,-0.05);
3594 // if(-0.4<x&&x<-0.2){
3595 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3597 // else if(-0.2<x&&x<-0.1){
3598 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3600 // else if(-0.2<x&&x<-0.1){
3601 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3603 // else if(-0.1<x&&x<0.1){
3604 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3606 // else if(0.1<x&&x<0.2){
3607 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3609 // if(0.2<x&&x<0.4){
3610 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3614 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3615 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3616 x=fhBeautyFDmax->GetBinLowEdge(j);
3617 fhBeautyFDmax->SetBinContent(j,0.03);
3619 // if(-0.4<x&&x<-0.2){
3620 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3622 // else if(-0.2<x&&x<-0.1){
3623 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3625 // else if(-0.2<x&&x<-0.1){
3626 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3628 // else if(-0.1<x&&x<0.1){
3629 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3631 // else if(0.1<x&&x<0.2){
3632 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3634 // if(0.2<x&&x<0.4){
3635 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3644 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarHighPtAss05(){
3645 Printf("Setting uncertainties for Dstar pp 2010, 8<pt(D)<16, pt(assoc)>0.5 GeV/c ");
3648 fstrptAss="ptAsMore05";
3650 if(!fhDeltaPhiTemplate){
3651 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3654 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3655 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3656 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3657 fhYieldExtraction->SetBinContent(j,0.1);
3660 // Background D MESON candidate subtraction (side-band variations, etc.)
3661 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3662 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3663 fhBackSubtractionMin->SetBinContent(j,-0.05);
3665 // check those values
3666 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
3667 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
3668 fhBackSubtractionMax->SetBinContent(j,0.2); // check this one in particular
3671 // MC CORRECTIONS -5% +10% for assoc track eff
3672 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
3673 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
3674 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3677 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3678 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3679 fhMCcorrectionsMax->SetBinContent(j,0.10);
3681 // MC D EFF CORRECTION
3682 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3683 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3684 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3687 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3688 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3689 fhMCDefficiencyMax->SetBinContent(j,0.05);
3693 // Contamination from secondary tracks
3694 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3695 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3696 fhSecContaminationMin->SetBinContent(j,-0.05);
3699 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3700 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3701 fhSecContaminationMax->SetBinContent(j,0.05);
3704 // MC CLOSURETEST (D meson efficiency)
3705 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3706 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3707 x=fhMCclosureTestMin->GetBinLowEdge(j);
3708 fhMCclosureTestMin->SetBinContent(j,-0);
3711 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3713 else if(-0.2<x&&x<-0.1){
3714 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3716 else if(-0.1<x&&x<0.1){
3717 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3719 else if(0.1<x&&x<0.2){
3720 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3723 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3727 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3728 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3729 x=fhMCclosureTestMax->GetBinLowEdge(j);
3730 fhMCclosureTestMax->SetBinContent(j,0.);
3732 // if(-0.4<x&&x<-0.2){
3733 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3735 // else if(-0.2<x&&x<-0.1){
3736 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3738 // else if(-0.2<x&&x<-0.1){
3739 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3741 // else if(-0.1<x&&x<0.1){
3742 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3744 // else if(0.1<x&&x<0.2){
3745 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3747 // if(0.2<x&&x<0.4){
3748 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3755 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3756 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3757 x=fhBeautyFDmin->GetBinLowEdge(j);
3758 fhBeautyFDmin->SetBinContent(j,-0.05);
3760 // if(-0.4<x&&x<-0.2){
3761 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3763 // else if(-0.2<x&&x<-0.1){
3764 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3766 // else if(-0.2<x&&x<-0.1){
3767 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3769 // else if(-0.1<x&&x<0.1){
3770 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3772 // else if(0.1<x&&x<0.2){
3773 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3775 // if(0.2<x&&x<0.4){
3776 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3780 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3781 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3782 x=fhBeautyFDmax->GetBinLowEdge(j);
3783 fhBeautyFDmax->SetBinContent(j,0.03);
3785 // if(-0.4<x&&x<-0.2){
3786 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3788 // else if(-0.2<x&&x<-0.1){
3789 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3791 // else if(-0.2<x&&x<-0.1){
3792 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3794 // else if(-0.1<x&&x<0.1){
3795 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3797 // else if(0.1<x&&x<0.2){
3798 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3800 // if(0.2<x&&x<0.4){
3801 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3811 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusLowPtAss05(){
3812 Printf("Setting uncertainties for Dplus pp 2010, 3<pt(D)<5, pt(assoc)>0.5 GeV/c ");
3815 fstrptAss="ptAsMore05";
3817 if(!fhDeltaPhiTemplate){
3818 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3821 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3822 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3823 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3824 fhYieldExtraction->SetBinContent(j,0.1);
3827 // Background D MESON candidate subtraction (side-band variations, etc.)
3828 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3829 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3830 fhBackSubtractionMin->SetBinContent(j,-0.05);
3833 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
3834 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
3835 fhBackSubtractionMax->SetBinContent(j,0.05);
3839 // MC CORRECTIONS ( associatate track efficiency):
3840 // -5% +10% for assoc track eff
3841 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
3842 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
3843 fhMCcorrectionsMin->SetBinContent(j,-0.05);
3846 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
3847 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
3848 fhMCcorrectionsMax->SetBinContent(j,0.10);
3851 // MC D EFF CORRECTION
3852 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
3853 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
3854 fhMCDefficiencyMin->SetBinContent(j,-0.05);
3857 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
3858 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
3859 fhMCDefficiencyMax->SetBinContent(j,0.05);
3863 // Contamination from secondary tracks
3864 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
3865 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
3866 fhSecContaminationMin->SetBinContent(j,-0.05);
3869 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
3870 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
3871 fhSecContaminationMax->SetBinContent(j,0.05);
3875 // MC CLOSURETEST (D meson efficiency)
3876 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
3877 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
3878 x=fhMCclosureTestMin->GetBinLowEdge(j);
3879 fhMCclosureTestMin->SetBinContent(j,-0.0);
3882 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3884 else if(-0.2<x&&x<-0.1){
3885 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3887 else if(-0.1<x&&x<0.1){
3888 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
3890 else if(0.1<x&&x<0.2){
3891 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
3894 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
3898 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
3899 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
3900 // x=fhMCclosureTestMax->GetBinLowEdge(j);
3901 fhMCclosureTestMax->SetBinContent(j,0.);
3903 // if(-0.4<x&&x<-0.2){
3904 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3906 // else if(-0.2<x&&x<-0.1){
3907 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3909 // else if(-0.2<x&&x<-0.1){
3910 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3912 // else if(-0.1<x&&x<0.1){
3913 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
3915 // else if(0.1<x&&x<0.2){
3916 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
3918 // if(0.2<x&&x<0.4){
3919 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
3926 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
3927 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
3928 x=fhBeautyFDmin->GetBinLowEdge(j);
3929 fhBeautyFDmin->SetBinContent(j,-0.05);
3931 // if(-0.4<x&&x<-0.2){
3932 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3934 // else if(-0.2<x&&x<-0.1){
3935 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3937 // else if(-0.2<x&&x<-0.1){
3938 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3940 // else if(-0.1<x&&x<0.1){
3941 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
3943 // else if(0.1<x&&x<0.2){
3944 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
3946 // if(0.2<x&&x<0.4){
3947 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
3951 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
3952 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
3953 x=fhBeautyFDmax->GetBinLowEdge(j);
3954 fhBeautyFDmax->SetBinContent(j,0.03);
3956 // if(-0.4<x&&x<-0.2){
3957 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3959 // else if(-0.2<x&&x<-0.1){
3960 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3962 // else if(-0.2<x&&x<-0.1){
3963 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3965 // else if(-0.1<x&&x<0.1){
3966 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
3968 // else if(0.1<x&&x<0.2){
3969 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
3971 // if(0.2<x&&x<0.4){
3972 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
3979 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusMidPtAss05(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
3980 Printf("Setting uncertainties for Dstar pp 2010, 5<pt(D)<8, pt(assoc)>0.5 GeV/c ");
3983 fstrptAss="ptAsMore05";
3985 if(!fhDeltaPhiTemplate){
3986 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
3989 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
3990 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
3991 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
3992 fhYieldExtraction->SetBinContent(j,0.1);
3995 // Background D MESON candidate subtraction (side-band variations, etc.)
3996 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
3997 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
3998 fhBackSubtractionMin->SetBinContent(j,-0.05);
4001 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4002 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4003 fhBackSubtractionMax->SetBinContent(j,0.05);
4006 // MC CORRECTIONS: -5% +10% for assoc track eff
4007 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4008 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4009 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4012 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4013 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4014 fhMCcorrectionsMax->SetBinContent(j,0.10);
4018 // MC D EFF CORRECTION
4019 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4020 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4021 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4024 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4025 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4026 fhMCDefficiencyMax->SetBinContent(j,0.05);
4030 // Contamination from secondary tracks
4031 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4032 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4033 fhSecContaminationMin->SetBinContent(j,-0.05);
4036 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4037 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4038 fhSecContaminationMax->SetBinContent(j,0.05);
4041 // MC CLOSURETEST (D meson efficiency)
4042 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4043 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4044 x=fhMCclosureTestMin->GetBinLowEdge(j);
4045 fhMCclosureTestMin->SetBinContent(j,-0.0);
4048 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4050 else if(-0.2<x&&x<-0.1){
4051 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4053 else if(-0.1<x&&x<0.1){
4054 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4056 else if(0.1<x&&x<0.2){
4057 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4060 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4064 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4065 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4066 x=fhMCclosureTestMax->GetBinLowEdge(j);
4067 fhMCclosureTestMax->SetBinContent(j,0.);
4069 // if(-0.4<x&&x<-0.2){
4070 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4072 // else if(-0.2<x&&x<-0.1){
4073 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4075 // else if(-0.2<x&&x<-0.1){
4076 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4078 // else if(-0.1<x&&x<0.1){
4079 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4081 // else if(0.1<x&&x<0.2){
4082 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4084 // if(0.2<x&&x<0.4){
4085 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4092 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4093 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4094 x=fhBeautyFDmin->GetBinLowEdge(j);
4095 fhBeautyFDmin->SetBinContent(j,-0.05);
4097 // if(-0.4<x&&x<-0.2){
4098 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4100 // else if(-0.2<x&&x<-0.1){
4101 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4103 // else if(-0.2<x&&x<-0.1){
4104 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4106 // else if(-0.1<x&&x<0.1){
4107 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4109 // else if(0.1<x&&x<0.2){
4110 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4112 // if(0.2<x&&x<0.4){
4113 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4117 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4118 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4119 x=fhBeautyFDmax->GetBinLowEdge(j);
4120 fhBeautyFDmax->SetBinContent(j,0.03);
4122 // if(-0.4<x&&x<-0.2){
4123 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4125 // else if(-0.2<x&&x<-0.1){
4126 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4128 // else if(-0.2<x&&x<-0.1){
4129 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4131 // else if(-0.1<x&&x<0.1){
4132 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4134 // else if(0.1<x&&x<0.2){
4135 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4137 // if(0.2<x&&x<0.4){
4138 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4146 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusHighPtAss05(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
4147 Printf("Setting uncertainties for Dstar pp 2010, 8<pt(D)<16, pt(assoc)>0.5 GeV/c ");
4150 fstrptAss="ptAsMore05";
4152 if(!fhDeltaPhiTemplate){
4153 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
4157 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
4158 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
4159 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
4160 fhYieldExtraction->SetBinContent(j,0.1);
4163 // Background D MESON candidate subtraction (side-band variations, etc.)
4164 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
4165 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
4166 fhBackSubtractionMin->SetBinContent(j,-0.05);
4169 // Background D MESON candidate subtraction (side-band variations, etc.)
4170 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4171 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4172 fhBackSubtractionMax->SetBinContent(j,0.05);
4175 // MC CORRECTIONS, -5% 10% for assoc track eff
4176 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4177 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4178 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4181 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4182 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4183 fhMCcorrectionsMax->SetBinContent(j,0.10);
4187 // MC D EFF CORRECTION
4188 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4189 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4190 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4193 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4194 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4195 fhMCDefficiencyMax->SetBinContent(j,0.05);
4199 // Contamination from secondary tracks
4200 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4201 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4202 fhSecContaminationMin->SetBinContent(j,-0.05);
4205 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4206 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4207 fhSecContaminationMax->SetBinContent(j,0.05);
4210 // MC CLOSURETEST (D meson efficiency)
4211 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4212 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4213 x=fhMCclosureTestMin->GetBinLowEdge(j);
4214 fhMCclosureTestMin->SetBinContent(j,-0.0);
4217 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4219 else if(-0.2<x&&x<-0.1){
4220 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4222 else if(-0.1<x&&x<0.1){
4223 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4225 else if(0.1<x&&x<0.2){
4226 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4229 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4233 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4234 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4235 x=fhMCclosureTestMax->GetBinLowEdge(j);
4236 fhMCclosureTestMax->SetBinContent(j,0.);
4238 // if(-0.4<x&&x<-0.2){
4239 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4241 // else if(-0.2<x&&x<-0.1){
4242 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4244 // else if(-0.2<x&&x<-0.1){
4245 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4247 // else if(-0.1<x&&x<0.1){
4248 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4250 // else if(0.1<x&&x<0.2){
4251 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4253 // if(0.2<x&&x<0.4){
4254 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4261 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4262 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4263 x=fhBeautyFDmin->GetBinLowEdge(j);
4264 fhBeautyFDmin->SetBinContent(j,-0.05);
4266 // if(-0.4<x&&x<-0.2){
4267 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4269 // else if(-0.2<x&&x<-0.1){
4270 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4272 // else if(-0.2<x&&x<-0.1){
4273 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4275 // else if(-0.1<x&&x<0.1){
4276 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4278 // else if(0.1<x&&x<0.2){
4279 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4281 // if(0.2<x&&x<0.4){
4282 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4286 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4287 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4288 x=fhBeautyFDmax->GetBinLowEdge(j);
4289 fhBeautyFDmax->SetBinContent(j,0.03);
4291 // if(-0.4<x&&x<-0.2){
4292 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4294 // else if(-0.2<x&&x<-0.1){
4295 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4297 // else if(-0.2<x&&x<-0.1){
4298 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4300 // else if(-0.1<x&&x<0.1){
4301 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4303 // else if(0.1<x&&x<0.2){
4304 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4306 // if(0.2<x&&x<0.4){
4307 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4316 // pt(assoc)> 1 GeV/c
4317 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroLowPtAss1(){
4318 Printf("Setting uncertainties for Dzero pp 2010, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
4321 fstrptAss="ptAsMore1";
4323 if(!fhDeltaPhiTemplate){
4324 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
4327 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
4328 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
4329 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
4330 fhYieldExtraction->SetBinContent(j,0.1);
4333 // Background D MESON candidate subtraction (side-band variations, etc.)
4334 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
4335 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
4336 fhBackSubtractionMin->SetBinContent(j,-0.05);
4339 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4340 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4341 fhBackSubtractionMax->SetBinContent(j,0.05);
4345 // MC CORRECTIONS ( associatate track efficiency):
4346 // -5% +10% for assoc track eff
4347 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4348 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4349 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4352 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4353 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4354 fhMCcorrectionsMax->SetBinContent(j,0.10);
4357 // MC D EFF CORRECTION
4358 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4359 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4360 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4363 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4364 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4365 fhMCDefficiencyMax->SetBinContent(j,0.05);
4369 // Contamination from secondary tracks
4370 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4371 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4372 fhSecContaminationMin->SetBinContent(j,-0.05);
4375 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4376 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4377 fhSecContaminationMax->SetBinContent(j,0.05);
4381 // MC CLOSURETEST (D meson efficiency)
4382 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4383 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4384 x=fhMCclosureTestMin->GetBinLowEdge(j);
4385 fhMCclosureTestMin->SetBinContent(j,-0.);
4388 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4390 else if(-0.2<x&&x<-0.1){
4391 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4393 else if(-0.1<x&&x<0.1){
4394 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4396 else if(0.1<x&&x<0.2){
4397 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4400 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4404 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4405 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4406 // x=fhMCclosureTestMax->GetBinLowEdge(j);
4407 fhMCclosureTestMax->SetBinContent(j,0.);
4409 // if(-0.4<x&&x<-0.2){
4410 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4412 // else if(-0.2<x&&x<-0.1){
4413 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4415 // else if(-0.2<x&&x<-0.1){
4416 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4418 // else if(-0.1<x&&x<0.1){
4419 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4421 // else if(0.1<x&&x<0.2){
4422 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4424 // if(0.2<x&&x<0.4){
4425 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4432 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4433 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4434 x=fhBeautyFDmin->GetBinLowEdge(j);
4435 fhBeautyFDmin->SetBinContent(j,-0.05);
4437 // if(-0.4<x&&x<-0.2){
4438 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4440 // else if(-0.2<x&&x<-0.1){
4441 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4443 // else if(-0.2<x&&x<-0.1){
4444 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4446 // else if(-0.1<x&&x<0.1){
4447 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4449 // else if(0.1<x&&x<0.2){
4450 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4452 // if(0.2<x&&x<0.4){
4453 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4457 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4458 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4459 x=fhBeautyFDmax->GetBinLowEdge(j);
4460 fhBeautyFDmax->SetBinContent(j,0.03);
4462 // if(-0.4<x&&x<-0.2){
4463 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4465 // else if(-0.2<x&&x<-0.1){
4466 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4468 // else if(-0.2<x&&x<-0.1){
4469 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4471 // else if(-0.1<x&&x<0.1){
4472 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4474 // else if(0.1<x&&x<0.2){
4475 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4477 // if(0.2<x&&x<0.4){
4478 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4485 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroMidPtAss1(){
4486 Printf("Setting uncertainties for Dzero pp 2010, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
4489 fstrptAss="ptAsMore1";
4491 if(!fhDeltaPhiTemplate){
4492 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
4495 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
4496 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
4497 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
4498 fhYieldExtraction->SetBinContent(j,0.1);
4501 // Background D MESON candidate subtraction (side-band variations, etc.)
4502 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
4503 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
4504 fhBackSubtractionMin->SetBinContent(j,-0.05);
4507 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4508 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4509 fhBackSubtractionMax->SetBinContent(j,0.05);
4512 // MC CORRECTIONS: -5% +10% for assoc track eff
4513 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4514 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4515 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4518 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4519 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4520 fhMCcorrectionsMax->SetBinContent(j,0.10);
4524 // MC D EFF CORRECTION
4525 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4526 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4527 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4530 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4531 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4532 fhMCDefficiencyMax->SetBinContent(j,0.05);
4536 // Contamination from secondary tracks
4537 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4538 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4539 fhSecContaminationMin->SetBinContent(j,-0.05);
4542 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4543 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4544 fhSecContaminationMax->SetBinContent(j,0.05);
4547 // MC CLOSURETEST (D meson efficiency)
4548 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4549 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4550 x=fhMCclosureTestMin->GetBinLowEdge(j);
4551 fhMCclosureTestMin->SetBinContent(j,-0.);
4554 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4556 else if(-0.2<x&&x<-0.1){
4557 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4559 else if(-0.1<x&&x<0.1){
4560 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4562 else if(0.1<x&&x<0.2){
4563 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4566 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4570 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4571 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4572 x=fhMCclosureTestMax->GetBinLowEdge(j);
4573 fhMCclosureTestMax->SetBinContent(j,0.);
4575 // if(-0.4<x&&x<-0.2){
4576 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4578 // else if(-0.2<x&&x<-0.1){
4579 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4581 // else if(-0.2<x&&x<-0.1){
4582 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4584 // else if(-0.1<x&&x<0.1){
4585 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4587 // else if(0.1<x&&x<0.2){
4588 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4590 // if(0.2<x&&x<0.4){
4591 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4598 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4599 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4600 x=fhBeautyFDmin->GetBinLowEdge(j);
4601 fhBeautyFDmin->SetBinContent(j,-0.05);
4603 // if(-0.4<x&&x<-0.2){
4604 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4606 // else if(-0.2<x&&x<-0.1){
4607 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4609 // else if(-0.2<x&&x<-0.1){
4610 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4612 // else if(-0.1<x&&x<0.1){
4613 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4615 // else if(0.1<x&&x<0.2){
4616 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4618 // if(0.2<x&&x<0.4){
4619 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4623 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4624 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4625 x=fhBeautyFDmax->GetBinLowEdge(j);
4626 fhBeautyFDmax->SetBinContent(j,0.03);
4628 // if(-0.4<x&&x<-0.2){
4629 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4631 // else if(-0.2<x&&x<-0.1){
4632 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4634 // else if(-0.2<x&&x<-0.1){
4635 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4637 // else if(-0.1<x&&x<0.1){
4638 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4640 // else if(0.1<x&&x<0.2){
4641 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4643 // if(0.2<x&&x<0.4){
4644 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4652 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DzeroHighPtAss1(){
4653 Printf("Setting uncertainties for Dzero pp 2010, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
4656 fstrptAss="ptAsMore1";
4658 if(!fhDeltaPhiTemplate){
4659 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
4663 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
4664 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
4665 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
4666 fhYieldExtraction->SetBinContent(j,0.1);
4669 // Background D MESON candidate subtraction (side-band variations, etc.)
4670 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
4671 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
4672 fhBackSubtractionMin->SetBinContent(j,-0.05);
4675 // Background D MESON candidate subtraction (side-band variations, etc.)
4676 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4677 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4678 fhBackSubtractionMax->SetBinContent(j,0.05);
4681 // MC CORRECTIONS, -5% 10% for assoc track eff
4682 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4683 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4684 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4687 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4688 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4689 fhMCcorrectionsMax->SetBinContent(j,0.10);
4693 // MC D EFF CORRECTION
4694 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4695 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4696 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4699 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4700 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4701 fhMCDefficiencyMax->SetBinContent(j,0.05);
4705 // Contamination from secondary tracks
4706 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4707 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4708 fhSecContaminationMin->SetBinContent(j,-0.05);
4711 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4712 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4713 fhSecContaminationMax->SetBinContent(j,0.05);
4716 // MC CLOSURETEST (D meson efficiency)
4717 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4718 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4719 x=fhMCclosureTestMin->GetBinLowEdge(j);
4720 fhMCclosureTestMin->SetBinContent(j,-0.);
4723 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4725 else if(-0.2<x&&x<-0.1){
4726 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4728 else if(-0.1<x&&x<0.1){
4729 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4731 else if(0.1<x&&x<0.2){
4732 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4735 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4739 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4740 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4741 x=fhMCclosureTestMax->GetBinLowEdge(j);
4742 fhMCclosureTestMax->SetBinContent(j,0.);
4744 // if(-0.4<x&&x<-0.2){
4745 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4747 // else if(-0.2<x&&x<-0.1){
4748 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4750 // else if(-0.2<x&&x<-0.1){
4751 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4753 // else if(-0.1<x&&x<0.1){
4754 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4756 // else if(0.1<x&&x<0.2){
4757 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4759 // if(0.2<x&&x<0.4){
4760 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4767 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4768 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4769 x=fhBeautyFDmin->GetBinLowEdge(j);
4770 fhBeautyFDmin->SetBinContent(j,-0.05);
4772 // if(-0.4<x&&x<-0.2){
4773 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4775 // else if(-0.2<x&&x<-0.1){
4776 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4778 // else if(-0.2<x&&x<-0.1){
4779 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4781 // else if(-0.1<x&&x<0.1){
4782 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4784 // else if(0.1<x&&x<0.2){
4785 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4787 // if(0.2<x&&x<0.4){
4788 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4792 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4793 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4794 x=fhBeautyFDmax->GetBinLowEdge(j);
4795 fhBeautyFDmax->SetBinContent(j,0.03);
4797 // if(-0.4<x&&x<-0.2){
4798 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4800 // else if(-0.2<x&&x<-0.1){
4801 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4803 // else if(-0.2<x&&x<-0.1){
4804 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4806 // else if(-0.1<x&&x<0.1){
4807 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4809 // else if(0.1<x&&x<0.2){
4810 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4812 // if(0.2<x&&x<0.4){
4813 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4823 //--------------------------------------------------
4824 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarLowPtAss1(){ Printf("TEMPORARY VALUES (PP 2010 ass 03)");
4825 Printf("Setting uncertainties for Dstar pp 2010, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
4828 fstrptAss="ptAsMore1";
4830 if(!fhDeltaPhiTemplate){
4831 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
4834 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
4835 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
4836 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
4837 fhYieldExtraction->SetBinContent(j,0.1);
4840 // Background D MESON candidate subtraction (side-band variations, etc.)
4841 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
4842 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
4843 fhBackSubtractionMin->SetBinContent(j,-0.05);
4846 // Background D MESON candidate subtraction (side-band variations, etc.)
4847 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
4848 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
4849 fhBackSubtractionMax->SetBinContent(j,0.05);
4852 // MC CORRECTIONS, -5% 10% for assoc track eff
4853 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
4854 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
4855 fhMCcorrectionsMin->SetBinContent(j,-0.05);
4858 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
4859 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
4860 fhMCcorrectionsMax->SetBinContent(j,0.10);
4864 // MC D EFF CORRECTION
4865 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
4866 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
4867 fhMCDefficiencyMin->SetBinContent(j,-0.05);
4870 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
4871 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
4872 fhMCDefficiencyMax->SetBinContent(j,0.05);
4876 // Contamination from secondary tracks
4877 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
4878 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
4879 fhSecContaminationMin->SetBinContent(j,-0.05);
4882 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
4883 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
4884 fhSecContaminationMax->SetBinContent(j,0.05);
4887 // MC CLOSURETEST (D meson efficiency)
4888 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
4889 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
4890 x=fhMCclosureTestMin->GetBinLowEdge(j);
4891 fhMCclosureTestMin->SetBinContent(j,-0.08);
4894 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4896 else if(-0.2<x&&x<-0.1){
4897 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4899 else if(-0.1<x&&x<0.1){
4900 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
4902 else if(0.1<x&&x<0.2){
4903 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
4906 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
4910 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
4911 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
4912 x=fhMCclosureTestMax->GetBinLowEdge(j);
4913 fhMCclosureTestMax->SetBinContent(j,0.);
4915 // if(-0.4<x&&x<-0.2){
4916 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4918 // else if(-0.2<x&&x<-0.1){
4919 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4921 // else if(-0.2<x&&x<-0.1){
4922 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4924 // else if(-0.1<x&&x<0.1){
4925 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
4927 // else if(0.1<x&&x<0.2){
4928 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
4930 // if(0.2<x&&x<0.4){
4931 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
4938 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
4939 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
4940 x=fhBeautyFDmin->GetBinLowEdge(j);
4941 fhBeautyFDmin->SetBinContent(j,-0.05);
4943 // if(-0.4<x&&x<-0.2){
4944 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4946 // else if(-0.2<x&&x<-0.1){
4947 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4949 // else if(-0.2<x&&x<-0.1){
4950 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4952 // else if(-0.1<x&&x<0.1){
4953 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
4955 // else if(0.1<x&&x<0.2){
4956 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
4958 // if(0.2<x&&x<0.4){
4959 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
4963 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
4964 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
4965 x=fhBeautyFDmax->GetBinLowEdge(j);
4966 fhBeautyFDmax->SetBinContent(j,0.03);
4968 // if(-0.4<x&&x<-0.2){
4969 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4971 // else if(-0.2<x&&x<-0.1){
4972 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4974 // else if(-0.2<x&&x<-0.1){
4975 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4977 // else if(-0.1<x&&x<0.1){
4978 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
4980 // else if(0.1<x&&x<0.2){
4981 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
4983 // if(0.2<x&&x<0.4){
4984 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
4992 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarMidPtAss1(){
4993 Printf("Setting uncertainties for Dstar pp 2010, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
4996 fstrptAss="ptAsMore1";
4998 if(!fhDeltaPhiTemplate){
4999 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5002 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5003 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5004 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5005 fhYieldExtraction->SetBinContent(j,0.1);
5008 // Background D MESON candidate subtraction (side-band variations, etc.)
5009 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5010 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5011 fhBackSubtractionMin->SetBinContent(j,-0.05);
5014 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5015 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5016 fhBackSubtractionMax->SetBinContent(j,0.05);
5019 // MC CORRECTIONS/ -5% 10% for assoc track eff
5020 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5021 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5022 fhMCcorrectionsMin->SetBinContent(j,-0.05);
5025 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5026 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5027 fhMCcorrectionsMax->SetBinContent(j,0.10);
5030 // MC D EFF CORRECTION
5031 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5032 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5033 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5036 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5037 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5038 fhMCDefficiencyMax->SetBinContent(j,0.05);
5042 // Contamination from secondary tracks
5043 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5044 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5045 fhSecContaminationMin->SetBinContent(j,-0.05);
5048 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5049 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5050 fhSecContaminationMax->SetBinContent(j,0.05);
5053 // MC CLOSURETEST (D meson efficiency)
5054 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5055 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5056 x=fhMCclosureTestMin->GetBinLowEdge(j);
5057 fhMCclosureTestMin->SetBinContent(j,-0.08);
5060 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5062 else if(-0.2<x&&x<-0.1){
5063 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5065 else if(-0.1<x&&x<0.1){
5066 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5068 else if(0.1<x&&x<0.2){
5069 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5072 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5076 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5077 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5078 x=fhMCclosureTestMax->GetBinLowEdge(j);
5079 fhMCclosureTestMax->SetBinContent(j,0.);
5081 // if(-0.4<x&&x<-0.2){
5082 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5084 // else if(-0.2<x&&x<-0.1){
5085 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5087 // else if(-0.2<x&&x<-0.1){
5088 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5090 // else if(-0.1<x&&x<0.1){
5091 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5093 // else if(0.1<x&&x<0.2){
5094 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5096 // if(0.2<x&&x<0.4){
5097 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5104 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5105 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5106 x=fhBeautyFDmin->GetBinLowEdge(j);
5107 fhBeautyFDmin->SetBinContent(j,-0.05);
5109 // if(-0.4<x&&x<-0.2){
5110 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5112 // else if(-0.2<x&&x<-0.1){
5113 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5115 // else if(-0.2<x&&x<-0.1){
5116 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5118 // else if(-0.1<x&&x<0.1){
5119 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5121 // else if(0.1<x&&x<0.2){
5122 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5124 // if(0.2<x&&x<0.4){
5125 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5129 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5130 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5131 x=fhBeautyFDmax->GetBinLowEdge(j);
5132 fhBeautyFDmax->SetBinContent(j,0.03);
5134 // if(-0.4<x&&x<-0.2){
5135 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5137 // else if(-0.2<x&&x<-0.1){
5138 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5140 // else if(-0.2<x&&x<-0.1){
5141 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5143 // else if(-0.1<x&&x<0.1){
5144 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
5146 // else if(0.1<x&&x<0.2){
5147 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5149 // if(0.2<x&&x<0.4){
5150 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5159 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DstarHighPtAss1(){
5160 Printf("Setting uncertainties for Dstar pp 2010, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
5163 fstrptAss="ptAsMore1";
5165 if(!fhDeltaPhiTemplate){
5166 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5169 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5170 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5171 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5172 fhYieldExtraction->SetBinContent(j,0.1);
5175 // Background D MESON candidate subtraction (side-band variations, etc.)
5176 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5177 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5178 fhBackSubtractionMin->SetBinContent(j,-0.05);
5181 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5182 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5184 fhBackSubtractionMax->SetBinContent(j,0.2);
5187 // MC CORRECTIONS -5% +10% for assoc track eff
5188 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5189 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5190 fhMCcorrectionsMin->SetBinContent(j,-0.05);
5193 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5194 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5195 fhMCcorrectionsMax->SetBinContent(j,0.10);
5197 // MC D EFF CORRECTION
5198 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5199 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5200 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5203 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5204 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5205 fhMCDefficiencyMax->SetBinContent(j,0.05);
5209 // Contamination from secondary tracks
5210 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5211 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5212 fhSecContaminationMin->SetBinContent(j,-0.05);
5215 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5216 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5217 fhSecContaminationMax->SetBinContent(j,0.05);
5220 // MC CLOSURETEST (D meson efficiency)
5221 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5222 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5223 x=fhMCclosureTestMin->GetBinLowEdge(j);
5224 fhMCclosureTestMin->SetBinContent(j,-0.08);
5227 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5229 else if(-0.2<x&&x<-0.1){
5230 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5232 else if(-0.1<x&&x<0.1){
5233 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5235 else if(0.1<x&&x<0.2){
5236 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5239 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5243 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5244 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5245 x=fhMCclosureTestMax->GetBinLowEdge(j);
5246 fhMCclosureTestMax->SetBinContent(j,0.);
5248 // if(-0.4<x&&x<-0.2){
5249 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5251 // else if(-0.2<x&&x<-0.1){
5252 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5254 // else if(-0.2<x&&x<-0.1){
5255 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5257 // else if(-0.1<x&&x<0.1){
5258 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5260 // else if(0.1<x&&x<0.2){
5261 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5263 // if(0.2<x&&x<0.4){
5264 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5271 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5272 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5273 x=fhBeautyFDmin->GetBinLowEdge(j);
5274 fhBeautyFDmin->SetBinContent(j,-0.05);
5276 // if(-0.4<x&&x<-0.2){
5277 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5279 // else if(-0.2<x&&x<-0.1){
5280 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5282 // else if(-0.2<x&&x<-0.1){
5283 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5285 // else if(-0.1<x&&x<0.1){
5286 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5288 // else if(0.1<x&&x<0.2){
5289 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5291 // if(0.2<x&&x<0.4){
5292 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5296 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5297 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5298 x=fhBeautyFDmax->GetBinLowEdge(j);
5299 fhBeautyFDmax->SetBinContent(j,0.03);
5301 // if(-0.4<x&&x<-0.2){
5302 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5304 // else if(-0.2<x&&x<-0.1){
5305 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5307 // else if(-0.2<x&&x<-0.1){
5308 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5310 // else if(-0.1<x&&x<0.1){
5311 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
5313 // else if(0.1<x&&x<0.2){
5314 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5316 // if(0.2<x&&x<0.4){
5317 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5327 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusLowPtAss1(){
5328 Printf("Setting uncertainties for Dplus pp 2010, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
5331 fstrptAss="ptAsMore1";
5333 if(!fhDeltaPhiTemplate){
5334 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5337 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5338 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5339 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5340 fhYieldExtraction->SetBinContent(j,0.1);
5343 // Background D MESON candidate subtraction (side-band variations, etc.)
5344 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5345 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5346 fhBackSubtractionMin->SetBinContent(j,-0.05);
5349 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5350 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5351 fhBackSubtractionMax->SetBinContent(j,0.05);
5355 // MC CORRECTIONS ( associatate track efficiency):
5356 // -5% +10% for assoc track eff
5357 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5358 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5359 fhMCcorrectionsMin->SetBinContent(j,-0.05);
5362 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5363 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5364 fhMCcorrectionsMax->SetBinContent(j,0.10);
5367 // MC D EFF CORRECTION
5368 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5369 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5370 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5373 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5374 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5375 fhMCDefficiencyMax->SetBinContent(j,0.05);
5379 // Contamination from secondary tracks
5380 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5381 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5382 fhSecContaminationMin->SetBinContent(j,-0.05);
5385 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5386 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5387 fhSecContaminationMax->SetBinContent(j,0.05);
5391 // MC CLOSURETEST (D meson efficiency)
5392 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5393 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5394 x=fhMCclosureTestMin->GetBinLowEdge(j);
5395 fhMCclosureTestMin->SetBinContent(j,-0.0);
5398 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5400 else if(-0.2<x&&x<-0.1){
5401 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5403 else if(-0.1<x&&x<0.1){
5404 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5406 else if(0.1<x&&x<0.2){
5407 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5410 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5414 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5415 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5416 // x=fhMCclosureTestMax->GetBinLowEdge(j);
5417 fhMCclosureTestMax->SetBinContent(j,0.);
5419 // if(-0.4<x&&x<-0.2){
5420 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5422 // else if(-0.2<x&&x<-0.1){
5423 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5425 // else if(-0.2<x&&x<-0.1){
5426 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5428 // else if(-0.1<x&&x<0.1){
5429 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5431 // else if(0.1<x&&x<0.2){
5432 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5434 // if(0.2<x&&x<0.4){
5435 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5442 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5443 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5444 x=fhBeautyFDmin->GetBinLowEdge(j);
5445 fhBeautyFDmin->SetBinContent(j,-0.05);
5447 // if(-0.4<x&&x<-0.2){
5448 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5450 // else if(-0.2<x&&x<-0.1){
5451 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5453 // else if(-0.2<x&&x<-0.1){
5454 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5456 // else if(-0.1<x&&x<0.1){
5457 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5459 // else if(0.1<x&&x<0.2){
5460 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5462 // if(0.2<x&&x<0.4){
5463 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5467 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5468 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5469 x=fhBeautyFDmax->GetBinLowEdge(j);
5470 fhBeautyFDmax->SetBinContent(j,0.03);
5472 // if(-0.4<x&&x<-0.2){
5473 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5475 // else if(-0.2<x&&x<-0.1){
5476 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5478 // else if(-0.2<x&&x<-0.1){
5479 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5481 // else if(-0.1<x&&x<0.1){
5482 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
5484 // else if(0.1<x&&x<0.2){
5485 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5487 // if(0.2<x&&x<0.4){
5488 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5495 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusMidPtAss1(){
5496 Printf("Setting uncertainties for Dplus pp 2010, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
5499 fstrptAss="ptAsMore1";
5501 if(!fhDeltaPhiTemplate){
5502 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5505 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5506 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5507 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5508 fhYieldExtraction->SetBinContent(j,0.1);
5511 // Background D MESON candidate subtraction (side-band variations, etc.)
5512 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5513 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5514 fhBackSubtractionMin->SetBinContent(j,-0.05);
5517 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5518 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5519 fhBackSubtractionMax->SetBinContent(j,0.05);
5522 // MC CORRECTIONS: -5% +10% for assoc track eff
5523 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5524 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5525 fhMCcorrectionsMin->SetBinContent(j,-0.05);
5528 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5529 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5530 fhMCcorrectionsMax->SetBinContent(j,0.10);
5534 // MC D EFF CORRECTION
5535 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5536 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5537 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5540 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5541 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5542 fhMCDefficiencyMax->SetBinContent(j,0.05);
5546 // Contamination from secondary tracks
5547 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5548 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5549 fhSecContaminationMin->SetBinContent(j,-0.05);
5552 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5553 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5554 fhSecContaminationMax->SetBinContent(j,0.05);
5557 // MC CLOSURETEST (D meson efficiency)
5558 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5559 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5560 x=fhMCclosureTestMin->GetBinLowEdge(j);
5561 fhMCclosureTestMin->SetBinContent(j,-0.0);
5564 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5566 else if(-0.2<x&&x<-0.1){
5567 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5569 else if(-0.1<x&&x<0.1){
5570 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5572 else if(0.1<x&&x<0.2){
5573 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5576 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5580 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5581 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5582 x=fhMCclosureTestMax->GetBinLowEdge(j);
5583 fhMCclosureTestMax->SetBinContent(j,0.);
5585 // if(-0.4<x&&x<-0.2){
5586 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5588 // else if(-0.2<x&&x<-0.1){
5589 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5591 // else if(-0.2<x&&x<-0.1){
5592 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5594 // else if(-0.1<x&&x<0.1){
5595 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5597 // else if(0.1<x&&x<0.2){
5598 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5600 // if(0.2<x&&x<0.4){
5601 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5608 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5609 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5610 x=fhBeautyFDmin->GetBinLowEdge(j);
5611 fhBeautyFDmin->SetBinContent(j,-0.05);
5613 // if(-0.4<x&&x<-0.2){
5614 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5616 // else if(-0.2<x&&x<-0.1){
5617 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5619 // else if(-0.2<x&&x<-0.1){
5620 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5622 // else if(-0.1<x&&x<0.1){
5623 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5625 // else if(0.1<x&&x<0.2){
5626 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5628 // if(0.2<x&&x<0.4){
5629 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5633 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5634 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5635 x=fhBeautyFDmax->GetBinLowEdge(j);
5636 fhBeautyFDmax->SetBinContent(j,0.03);
5638 // if(-0.4<x&&x<-0.2){
5639 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5641 // else if(-0.2<x&&x<-0.1){
5642 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5644 // else if(-0.2<x&&x<-0.1){
5645 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5647 // else if(-0.1<x&&x<0.1){
5648 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
5650 // else if(0.1<x&&x<0.2){
5651 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5653 // if(0.2<x&&x<0.4){
5654 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5662 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPP2010DplusHighPtAss1(){
5663 Printf("Setting uncertainties for Dplus pp 2010, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
5666 fstrptAss="ptAsMore1";
5668 if(!fhDeltaPhiTemplate){
5669 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5673 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5674 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5675 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5676 fhYieldExtraction->SetBinContent(j,0.1);
5679 // Background D MESON candidate subtraction (side-band variations, etc.)
5680 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5681 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5682 fhBackSubtractionMin->SetBinContent(j,-0.05);
5685 // Background D MESON candidate subtraction (side-band variations, etc.)
5686 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5687 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5688 fhBackSubtractionMax->SetBinContent(j,0.05);
5691 // MC CORRECTIONS, -5% 10% for assoc track eff
5692 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5693 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5694 fhMCcorrectionsMin->SetBinContent(j,-0.05);
5697 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5698 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5699 fhMCcorrectionsMax->SetBinContent(j,0.10);
5703 // MC D EFF CORRECTION
5704 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5705 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5706 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5709 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5710 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5711 fhMCDefficiencyMax->SetBinContent(j,0.05);
5715 // Contamination from secondary tracks
5716 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5717 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5718 fhSecContaminationMin->SetBinContent(j,-0.05);
5721 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5722 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5723 fhSecContaminationMax->SetBinContent(j,0.05);
5726 // MC CLOSURETEST (D meson efficiency)
5727 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5728 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5729 x=fhMCclosureTestMin->GetBinLowEdge(j);
5730 fhMCclosureTestMin->SetBinContent(j,-0.0);
5733 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5735 else if(-0.2<x&&x<-0.1){
5736 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5738 else if(-0.1<x&&x<0.1){
5739 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5741 else if(0.1<x&&x<0.2){
5742 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5745 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5749 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5750 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5751 x=fhMCclosureTestMax->GetBinLowEdge(j);
5752 fhMCclosureTestMax->SetBinContent(j,0.);
5754 // if(-0.4<x&&x<-0.2){
5755 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5757 // else if(-0.2<x&&x<-0.1){
5758 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5760 // else if(-0.2<x&&x<-0.1){
5761 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5763 // else if(-0.1<x&&x<0.1){
5764 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5766 // else if(0.1<x&&x<0.2){
5767 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5769 // if(0.2<x&&x<0.4){
5770 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5777 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5778 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5779 x=fhBeautyFDmin->GetBinLowEdge(j);
5780 fhBeautyFDmin->SetBinContent(j,-0.05);
5782 // if(-0.4<x&&x<-0.2){
5783 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5785 // else if(-0.2<x&&x<-0.1){
5786 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5788 // else if(-0.2<x&&x<-0.1){
5789 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5791 // else if(-0.1<x&&x<0.1){
5792 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5794 // else if(0.1<x&&x<0.2){
5795 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5797 // if(0.2<x&&x<0.4){
5798 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5802 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5803 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5804 x=fhBeautyFDmax->GetBinLowEdge(j);
5805 fhBeautyFDmax->SetBinContent(j,0.03);
5807 // if(-0.4<x&&x<-0.2){
5808 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5810 // else if(-0.2<x&&x<-0.1){
5811 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5813 // else if(-0.2<x&&x<-0.1){
5814 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5816 // else if(-0.1<x&&x<0.1){
5817 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
5819 // else if(0.1<x&&x<0.2){
5820 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5822 // if(0.2<x&&x<0.4){
5823 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5835 ////////////////////////////////////////////////////////////////////////////////////////////////////////
5837 ///// METHODS WITH UNCERTAINTIES: pPb 2013
5839 ////////////////////////////////////////////////////////////////////////////////////////////////////////
5842 // pt assoc > 0.3 GeV/c
5844 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroLowPtAss03(){
5845 Printf("Setting uncertainties for Dzero pPb 2013, 3<pt(D)<5, pt(assoc)>0.3 GeV/c ");
5848 fstrptAss="ptAsMore03";
5850 if(!fhDeltaPhiTemplate){
5851 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
5854 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
5855 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
5856 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
5857 fhYieldExtraction->SetBinContent(j,0.1);
5860 // Background D MESON candidate subtraction (side-band variations, etc.)
5861 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
5862 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
5863 fhBackSubtractionMin->SetBinContent(j,-0.05);
5866 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
5867 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
5868 fhBackSubtractionMax->SetBinContent(j,0.05);
5872 // MC CORRECTIONS ( associatate track efficiency):
5873 // -5% +10% for assoc track eff
5874 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
5875 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
5876 fhMCcorrectionsMin->SetBinContent(j,-0.04);
5879 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
5880 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
5881 fhMCcorrectionsMax->SetBinContent(j,0.04);
5884 // MC D EFF CORRECTION
5885 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
5886 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
5887 fhMCDefficiencyMin->SetBinContent(j,-0.05);
5890 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
5891 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
5892 fhMCDefficiencyMax->SetBinContent(j,0.05);
5896 // Contamination from secondary tracks
5897 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
5898 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
5899 fhSecContaminationMin->SetBinContent(j,-0.035);
5902 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
5903 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
5904 fhSecContaminationMax->SetBinContent(j,0.035);
5908 // MC CLOSURETEST (D meson efficiency)
5909 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
5910 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
5911 x=fhMCclosureTestMin->GetBinLowEdge(j);
5912 fhMCclosureTestMin->SetBinContent(j,-0.);
5915 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5917 else if(-0.2<x&&x<-0.1){
5918 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5920 else if(-0.1<x&&x<0.1){
5921 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
5923 else if(0.1<x&&x<0.2){
5924 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
5927 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
5931 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
5932 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
5933 // x=fhMCclosureTestMax->GetBinLowEdge(j);
5934 fhMCclosureTestMax->SetBinContent(j,0.08);
5936 // if(-0.4<x&&x<-0.2){
5937 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5939 // else if(-0.2<x&&x<-0.1){
5940 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5942 // else if(-0.2<x&&x<-0.1){
5943 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5945 // else if(-0.1<x&&x<0.1){
5946 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
5948 // else if(0.1<x&&x<0.2){
5949 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
5951 // if(0.2<x&&x<0.4){
5952 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
5959 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
5960 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
5961 x=fhBeautyFDmin->GetBinLowEdge(j);
5962 fhBeautyFDmin->SetBinContent(j,-0.05);
5964 // if(-0.4<x&&x<-0.2){
5965 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5967 // else if(-0.2<x&&x<-0.1){
5968 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5970 // else if(-0.2<x&&x<-0.1){
5971 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5973 // else if(-0.1<x&&x<0.1){
5974 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
5976 // else if(0.1<x&&x<0.2){
5977 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
5979 // if(0.2<x&&x<0.4){
5980 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
5984 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
5985 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
5986 x=fhBeautyFDmax->GetBinLowEdge(j);
5987 fhBeautyFDmax->SetBinContent(j,0.03);
5989 // if(-0.4<x&&x<-0.2){
5990 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
5992 // else if(-0.2<x&&x<-0.1){
5993 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5995 // else if(-0.2<x&&x<-0.1){
5996 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
5998 // else if(-0.1<x&&x<0.1){
5999 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6001 // else if(0.1<x&&x<0.2){
6002 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6004 // if(0.2<x&&x<0.4){
6005 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6012 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroMidPtAss03(){
6013 Printf("Setting uncertainties for Dzero pPb 2013, 5<pt(D)<8, pt(assoc)>0.3 GeV/c ");
6016 fstrptAss="ptAsMore03";
6018 if(!fhDeltaPhiTemplate){
6019 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6022 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6023 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6024 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6025 fhYieldExtraction->SetBinContent(j,0.1);
6028 // Background D MESON candidate subtraction (side-band variations, etc.)
6029 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6030 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6031 fhBackSubtractionMin->SetBinContent(j,-0.05);
6034 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6035 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6036 fhBackSubtractionMax->SetBinContent(j,0.05);
6039 // MC CORRECTIONS: -5% +10% for assoc track eff
6040 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6041 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6042 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6045 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6046 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6047 fhMCcorrectionsMax->SetBinContent(j,0.04);
6051 // MC D EFF CORRECTION
6052 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6053 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6054 fhMCDefficiencyMin->SetBinContent(j,-0.05);
6057 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6058 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6059 fhMCDefficiencyMax->SetBinContent(j,0.05);
6063 // Contamination from secondary tracks
6064 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6065 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6066 fhSecContaminationMin->SetBinContent(j,-0.035);
6069 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6070 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6071 fhSecContaminationMax->SetBinContent(j,0.035);
6074 // MC CLOSURETEST (D meson efficiency)
6075 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6076 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6077 x=fhMCclosureTestMin->GetBinLowEdge(j);
6078 fhMCclosureTestMin->SetBinContent(j,-0.);
6081 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6083 else if(-0.2<x&&x<-0.1){
6084 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6086 else if(-0.1<x&&x<0.1){
6087 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6089 else if(0.1<x&&x<0.2){
6090 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6093 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6097 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6098 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6099 x=fhMCclosureTestMax->GetBinLowEdge(j);
6100 fhMCclosureTestMax->SetBinContent(j,0.08);
6102 // if(-0.4<x&&x<-0.2){
6103 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6105 // else if(-0.2<x&&x<-0.1){
6106 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6108 // else if(-0.2<x&&x<-0.1){
6109 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6111 // else if(-0.1<x&&x<0.1){
6112 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6114 // else if(0.1<x&&x<0.2){
6115 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6117 // if(0.2<x&&x<0.4){
6118 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6125 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6126 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6127 x=fhBeautyFDmin->GetBinLowEdge(j);
6128 fhBeautyFDmin->SetBinContent(j,-0.05);
6130 // if(-0.4<x&&x<-0.2){
6131 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6133 // else if(-0.2<x&&x<-0.1){
6134 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6136 // else if(-0.2<x&&x<-0.1){
6137 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6139 // else if(-0.1<x&&x<0.1){
6140 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6142 // else if(0.1<x&&x<0.2){
6143 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6145 // if(0.2<x&&x<0.4){
6146 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6150 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6151 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6152 x=fhBeautyFDmax->GetBinLowEdge(j);
6153 fhBeautyFDmax->SetBinContent(j,0.03);
6155 // if(-0.4<x&&x<-0.2){
6156 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6158 // else if(-0.2<x&&x<-0.1){
6159 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6161 // else if(-0.2<x&&x<-0.1){
6162 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6164 // else if(-0.1<x&&x<0.1){
6165 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6167 // else if(0.1<x&&x<0.2){
6168 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6170 // if(0.2<x&&x<0.4){
6171 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6179 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroHighPtAss03(){
6180 Printf("Setting uncertainties for Dzero pPb 2013, 8<pt(D)<16, pt(assoc)>0.3 GeV/c ");
6183 fstrptAss="ptAsMore03";
6185 if(!fhDeltaPhiTemplate){
6186 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6190 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6191 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6192 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6193 fhYieldExtraction->SetBinContent(j,0.1);
6196 // Background D MESON candidate subtraction (side-band variations, etc.)
6197 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6198 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6199 fhBackSubtractionMin->SetBinContent(j,-0.05);
6202 // Background D MESON candidate subtraction (side-band variations, etc.)
6203 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6204 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6205 fhBackSubtractionMax->SetBinContent(j,0.05);
6208 // MC CORRECTIONS, -5% 10% for assoc track eff
6209 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6210 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6211 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6214 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6215 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6216 fhMCcorrectionsMax->SetBinContent(j,0.04);
6220 // MC D EFF CORRECTION
6221 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6222 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6223 fhMCDefficiencyMin->SetBinContent(j,-0.05);
6226 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6227 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6228 fhMCDefficiencyMax->SetBinContent(j,0.05);
6232 // Contamination from secondary tracks
6233 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6234 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6235 fhSecContaminationMin->SetBinContent(j,-0.035);
6238 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6239 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6240 fhSecContaminationMax->SetBinContent(j,0.035);
6243 // MC CLOSURETEST (D meson efficiency)
6244 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6245 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6246 x=fhMCclosureTestMin->GetBinLowEdge(j);
6247 fhMCclosureTestMin->SetBinContent(j,-0.);
6250 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6252 else if(-0.2<x&&x<-0.1){
6253 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6255 else if(-0.1<x&&x<0.1){
6256 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6258 else if(0.1<x&&x<0.2){
6259 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6262 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6266 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6267 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6268 x=fhMCclosureTestMax->GetBinLowEdge(j);
6269 fhMCclosureTestMax->SetBinContent(j,0.08);
6271 // if(-0.4<x&&x<-0.2){
6272 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6274 // else if(-0.2<x&&x<-0.1){
6275 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6277 // else if(-0.2<x&&x<-0.1){
6278 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6280 // else if(-0.1<x&&x<0.1){
6281 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6283 // else if(0.1<x&&x<0.2){
6284 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6286 // if(0.2<x&&x<0.4){
6287 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6294 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6295 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6296 x=fhBeautyFDmin->GetBinLowEdge(j);
6297 fhBeautyFDmin->SetBinContent(j,-0.05);
6299 // if(-0.4<x&&x<-0.2){
6300 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6302 // else if(-0.2<x&&x<-0.1){
6303 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6305 // else if(-0.2<x&&x<-0.1){
6306 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6308 // else if(-0.1<x&&x<0.1){
6309 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6311 // else if(0.1<x&&x<0.2){
6312 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6314 // if(0.2<x&&x<0.4){
6315 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6319 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6320 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6321 x=fhBeautyFDmax->GetBinLowEdge(j);
6322 fhBeautyFDmax->SetBinContent(j,0.03);
6324 // if(-0.4<x&&x<-0.2){
6325 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6327 // else if(-0.2<x&&x<-0.1){
6328 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6330 // else if(-0.2<x&&x<-0.1){
6331 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6333 // else if(-0.1<x&&x<0.1){
6334 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6336 // else if(0.1<x&&x<0.2){
6337 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6339 // if(0.2<x&&x<0.4){
6340 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6350 //--------------------------------------------------
6351 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarLowPtAss03(){
6352 Printf("Setting uncertainties for Dstar pPb 2013, 3<pt(D)<5, pt(assoc)>0.3 GeV/c ");
6355 fstrptAss="ptAsMore03";
6357 if(!fhDeltaPhiTemplate){
6358 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6361 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6362 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6363 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6364 fhYieldExtraction->SetBinContent(j,0.1);
6367 // Background D MESON candidate subtraction (side-band variations, etc.)
6368 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6369 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6370 fhBackSubtractionMin->SetBinContent(j,-0.05);
6373 // Background D MESON candidate subtraction (side-band variations, etc.)
6374 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6375 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6376 fhBackSubtractionMax->SetBinContent(j,0.05);
6379 // MC CORRECTIONS, -5% 10% for assoc track eff
6380 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6381 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6382 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6385 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6386 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6387 fhMCcorrectionsMax->SetBinContent(j,0.04);
6391 // MC D EFF CORRECTION
6392 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6393 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6394 fhMCDefficiencyMin->SetBinContent(j,-0.05);
6397 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6398 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6399 fhMCDefficiencyMax->SetBinContent(j,0.05);
6403 // Contamination from secondary tracks
6404 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6405 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6406 fhSecContaminationMin->SetBinContent(j,-0.035);
6409 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6410 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6411 fhSecContaminationMax->SetBinContent(j,0.035);
6414 // MC CLOSURETEST (D meson efficiency)
6415 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6416 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6417 x=fhMCclosureTestMin->GetBinLowEdge(j);
6418 fhMCclosureTestMin->SetBinContent(j,-0.);
6421 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6423 else if(-0.2<x&&x<-0.1){
6424 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6426 else if(-0.1<x&&x<0.1){
6427 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6429 else if(0.1<x&&x<0.2){
6430 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6433 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6437 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6438 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6439 x=fhMCclosureTestMax->GetBinLowEdge(j);
6440 fhMCclosureTestMax->SetBinContent(j,0.08);
6442 // if(-0.4<x&&x<-0.2){
6443 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6445 // else if(-0.2<x&&x<-0.1){
6446 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6448 // else if(-0.2<x&&x<-0.1){
6449 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6451 // else if(-0.1<x&&x<0.1){
6452 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6454 // else if(0.1<x&&x<0.2){
6455 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6457 // if(0.2<x&&x<0.4){
6458 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6465 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6466 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6467 x=fhBeautyFDmin->GetBinLowEdge(j);
6468 fhBeautyFDmin->SetBinContent(j,-0.05);
6470 // if(-0.4<x&&x<-0.2){
6471 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6473 // else if(-0.2<x&&x<-0.1){
6474 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6476 // else if(-0.2<x&&x<-0.1){
6477 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6479 // else if(-0.1<x&&x<0.1){
6480 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6482 // else if(0.1<x&&x<0.2){
6483 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6485 // if(0.2<x&&x<0.4){
6486 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6490 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6491 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6492 x=fhBeautyFDmax->GetBinLowEdge(j);
6493 fhBeautyFDmax->SetBinContent(j,0.03);
6495 // if(-0.4<x&&x<-0.2){
6496 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6498 // else if(-0.2<x&&x<-0.1){
6499 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6501 // else if(-0.2<x&&x<-0.1){
6502 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6504 // else if(-0.1<x&&x<0.1){
6505 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6507 // else if(0.1<x&&x<0.2){
6508 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6510 // if(0.2<x&&x<0.4){
6511 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6519 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarMidPtAss03(){
6520 Printf("Setting uncertainties for Dstar pPb 2013, 5<pt(D)<8, pt(assoc)>0.3 GeV/c ");
6523 fstrptAss="ptAsMore03";
6525 if(!fhDeltaPhiTemplate){
6526 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6529 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6530 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6531 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6532 fhYieldExtraction->SetBinContent(j,0.1);
6535 // Background D MESON candidate subtraction (side-band variations, etc.)
6536 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6537 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6538 fhBackSubtractionMin->SetBinContent(j,-0.04);
6541 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6542 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6543 fhBackSubtractionMax->SetBinContent(j,0.04);
6546 // MC CORRECTIONS/ -5% 10% for assoc track eff
6547 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6548 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6549 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6552 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6553 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6554 fhMCcorrectionsMax->SetBinContent(j,0.04);
6557 // MC D EFF CORRECTION
6558 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6559 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6560 fhMCDefficiencyMin->SetBinContent(j,-0.04);
6563 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6564 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6565 fhMCDefficiencyMax->SetBinContent(j,0.04);
6569 // Contamination from secondary tracks
6570 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6571 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6572 fhSecContaminationMin->SetBinContent(j,-0.035);
6575 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6576 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6577 fhSecContaminationMax->SetBinContent(j,0.035);
6580 // MC CLOSURETEST (D meson efficiency)
6581 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6582 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6583 x=fhMCclosureTestMin->GetBinLowEdge(j);
6584 fhMCclosureTestMin->SetBinContent(j,-0.0);
6587 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6589 else if(-0.2<x&&x<-0.1){
6590 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6592 else if(-0.1<x&&x<0.1){
6593 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6595 else if(0.1<x&&x<0.2){
6596 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6599 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6603 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6604 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6605 x=fhMCclosureTestMax->GetBinLowEdge(j);
6606 fhMCclosureTestMax->SetBinContent(j,0.08);
6608 // if(-0.4<x&&x<-0.2){
6609 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6611 // else if(-0.2<x&&x<-0.1){
6612 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6614 // else if(-0.2<x&&x<-0.1){
6615 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6617 // else if(-0.1<x&&x<0.1){
6618 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6620 // else if(0.1<x&&x<0.2){
6621 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6623 // if(0.2<x&&x<0.4){
6624 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6631 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6632 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6633 x=fhBeautyFDmin->GetBinLowEdge(j);
6634 fhBeautyFDmin->SetBinContent(j,-0.05);
6636 // if(-0.4<x&&x<-0.2){
6637 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6639 // else if(-0.2<x&&x<-0.1){
6640 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6642 // else if(-0.2<x&&x<-0.1){
6643 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6645 // else if(-0.1<x&&x<0.1){
6646 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6648 // else if(0.1<x&&x<0.2){
6649 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6651 // if(0.2<x&&x<0.4){
6652 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6656 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6657 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6658 x=fhBeautyFDmax->GetBinLowEdge(j);
6659 fhBeautyFDmax->SetBinContent(j,0.03);
6661 // if(-0.4<x&&x<-0.2){
6662 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6664 // else if(-0.2<x&&x<-0.1){
6665 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6667 // else if(-0.2<x&&x<-0.1){
6668 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6670 // else if(-0.1<x&&x<0.1){
6671 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6673 // else if(0.1<x&&x<0.2){
6674 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6676 // if(0.2<x&&x<0.4){
6677 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6686 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarHighPtAss03(){
6687 Printf("Setting uncertainties for Dstar pPb 2013, 8<pt(D)<16, pt(assoc)>0.3 GeV/c ");
6690 fstrptAss="ptAsMore03";
6692 if(!fhDeltaPhiTemplate){
6693 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6696 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6697 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6698 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6699 fhYieldExtraction->SetBinContent(j,0.1);
6702 // Background D MESON candidate subtraction (side-band variations, etc.)
6703 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6704 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6705 fhBackSubtractionMin->SetBinContent(j,-0.05);
6708 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6709 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6710 fhBackSubtractionMax->SetBinContent(j,0.05);
6713 // MC CORRECTIONS -5% +10% for assoc track eff
6714 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6715 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6716 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6719 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6720 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6721 fhMCcorrectionsMax->SetBinContent(j,0.04);
6723 // MC D EFF CORRECTION
6724 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6725 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6726 fhMCDefficiencyMin->SetBinContent(j,-0.08);
6729 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6730 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6731 fhMCDefficiencyMax->SetBinContent(j,0.08);
6735 // Contamination from secondary tracks
6736 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6737 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6738 fhSecContaminationMin->SetBinContent(j,-0.035);
6741 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6742 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6743 fhSecContaminationMax->SetBinContent(j,0.035);
6746 // MC CLOSURETEST (D meson efficiency)
6747 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6748 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6749 x=fhMCclosureTestMin->GetBinLowEdge(j);
6750 fhMCclosureTestMin->SetBinContent(j,-0.0);
6753 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6755 else if(-0.2<x&&x<-0.1){
6756 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6758 else if(-0.1<x&&x<0.1){
6759 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6761 else if(0.1<x&&x<0.2){
6762 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6765 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6769 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6770 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6771 x=fhMCclosureTestMax->GetBinLowEdge(j);
6772 fhMCclosureTestMax->SetBinContent(j,0.08);
6774 // if(-0.4<x&&x<-0.2){
6775 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6777 // else if(-0.2<x&&x<-0.1){
6778 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6780 // else if(-0.2<x&&x<-0.1){
6781 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6783 // else if(-0.1<x&&x<0.1){
6784 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6786 // else if(0.1<x&&x<0.2){
6787 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6789 // if(0.2<x&&x<0.4){
6790 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6797 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6798 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6799 x=fhBeautyFDmin->GetBinLowEdge(j);
6800 fhBeautyFDmin->SetBinContent(j,-0.05);
6802 // if(-0.4<x&&x<-0.2){
6803 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6805 // else if(-0.2<x&&x<-0.1){
6806 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6808 // else if(-0.2<x&&x<-0.1){
6809 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6811 // else if(-0.1<x&&x<0.1){
6812 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6814 // else if(0.1<x&&x<0.2){
6815 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6817 // if(0.2<x&&x<0.4){
6818 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6822 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6823 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6824 x=fhBeautyFDmax->GetBinLowEdge(j);
6825 fhBeautyFDmax->SetBinContent(j,0.03);
6827 // if(-0.4<x&&x<-0.2){
6828 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6830 // else if(-0.2<x&&x<-0.1){
6831 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6833 // else if(-0.2<x&&x<-0.1){
6834 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6836 // else if(-0.1<x&&x<0.1){
6837 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
6839 // else if(0.1<x&&x<0.2){
6840 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
6842 // if(0.2<x&&x<0.4){
6843 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
6854 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusLowPtAss03(){
6855 Printf("Setting uncertainties for Dplus pPb 2013, 3<pt(D)<5, pt(assoc)>0.3 GeV/c ");
6858 fstrptAss="ptAsMore03";
6860 if(!fhDeltaPhiTemplate){
6861 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
6864 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
6865 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
6866 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
6867 fhYieldExtraction->SetBinContent(j,0.1);
6870 // Background D MESON candidate subtraction (side-band variations, etc.)
6871 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
6872 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
6873 fhBackSubtractionMin->SetBinContent(j,-0.1);
6876 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
6877 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
6878 fhBackSubtractionMax->SetBinContent(j,0.1);
6882 // MC CORRECTIONS ( associatate track efficiency):
6883 // -5% +10% for assoc track eff
6884 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
6885 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
6886 fhMCcorrectionsMin->SetBinContent(j,-0.04);
6889 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
6890 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
6891 fhMCcorrectionsMax->SetBinContent(j,0.04);
6894 // MC D EFF CORRECTION
6895 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
6896 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
6897 fhMCDefficiencyMin->SetBinContent(j,-0.1);
6900 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
6901 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
6902 fhMCDefficiencyMax->SetBinContent(j,0.1);
6906 // Contamination from secondary tracks
6907 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
6908 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
6909 fhSecContaminationMin->SetBinContent(j,-0.035);
6912 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
6913 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
6914 fhSecContaminationMax->SetBinContent(j,0.035);
6918 // MC CLOSURETEST (D meson efficiency)
6919 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
6920 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
6921 x=fhMCclosureTestMin->GetBinLowEdge(j);
6922 fhMCclosureTestMin->SetBinContent(j,-0.0);
6925 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6927 else if(-0.2<x&&x<-0.1){
6928 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6930 else if(-0.1<x&&x<0.1){
6931 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
6933 else if(0.1<x&&x<0.2){
6934 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
6937 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
6941 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
6942 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
6943 // x=fhMCclosureTestMax->GetBinLowEdge(j);
6944 fhMCclosureTestMax->SetBinContent(j,0.08);
6946 // if(-0.4<x&&x<-0.2){
6947 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6949 // else if(-0.2<x&&x<-0.1){
6950 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6952 // else if(-0.2<x&&x<-0.1){
6953 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6955 // else if(-0.1<x&&x<0.1){
6956 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
6958 // else if(0.1<x&&x<0.2){
6959 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
6961 // if(0.2<x&&x<0.4){
6962 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
6969 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
6970 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
6971 x=fhBeautyFDmin->GetBinLowEdge(j);
6972 fhBeautyFDmin->SetBinContent(j,-0.05);
6974 // if(-0.4<x&&x<-0.2){
6975 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6977 // else if(-0.2<x&&x<-0.1){
6978 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6980 // else if(-0.2<x&&x<-0.1){
6981 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6983 // else if(-0.1<x&&x<0.1){
6984 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
6986 // else if(0.1<x&&x<0.2){
6987 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
6989 // if(0.2<x&&x<0.4){
6990 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
6994 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
6995 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
6996 x=fhBeautyFDmax->GetBinLowEdge(j);
6997 fhBeautyFDmax->SetBinContent(j,0.03);
6999 // if(-0.4<x&&x<-0.2){
7000 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7002 // else if(-0.2<x&&x<-0.1){
7003 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7005 // else if(-0.2<x&&x<-0.1){
7006 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7008 // else if(-0.1<x&&x<0.1){
7009 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7011 // else if(0.1<x&&x<0.2){
7012 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7014 // if(0.2<x&&x<0.4){
7015 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7022 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusMidPtAss03(){
7023 Printf("Setting uncertainties for Dplus pPb 2013, 5<pt(D)<8, pt(assoc)>0.3 GeV/c ");
7026 fstrptAss="ptAsMore03";
7028 if(!fhDeltaPhiTemplate){
7029 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7032 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7033 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7034 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7035 fhYieldExtraction->SetBinContent(j,0.1);
7038 // Background D MESON candidate subtraction (side-band variations, etc.)
7039 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7040 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7041 fhBackSubtractionMin->SetBinContent(j,-0.1);
7044 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7045 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7046 fhBackSubtractionMax->SetBinContent(j,0.1);
7049 // MC CORRECTIONS: -5% +10% for assoc track eff
7050 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7051 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7052 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7055 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7056 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7057 fhMCcorrectionsMax->SetBinContent(j,0.04);
7061 // MC D EFF CORRECTION
7062 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7063 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7064 fhMCDefficiencyMin->SetBinContent(j,-0.1);
7067 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7068 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7069 fhMCDefficiencyMax->SetBinContent(j,0.1);
7073 // Contamination from secondary tracks
7074 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7075 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7076 fhSecContaminationMin->SetBinContent(j,-0.035);
7079 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7080 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7081 fhSecContaminationMax->SetBinContent(j,0.035);
7084 // MC CLOSURETEST (D meson efficiency)
7085 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7086 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7087 x=fhMCclosureTestMin->GetBinLowEdge(j);
7088 fhMCclosureTestMin->SetBinContent(j,-0.0);
7091 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7093 else if(-0.2<x&&x<-0.1){
7094 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7096 else if(-0.1<x&&x<0.1){
7097 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7099 else if(0.1<x&&x<0.2){
7100 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7103 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7107 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7108 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7109 x=fhMCclosureTestMax->GetBinLowEdge(j);
7110 fhMCclosureTestMax->SetBinContent(j,0.08);
7112 // if(-0.4<x&&x<-0.2){
7113 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7115 // else if(-0.2<x&&x<-0.1){
7116 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7118 // else if(-0.2<x&&x<-0.1){
7119 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7121 // else if(-0.1<x&&x<0.1){
7122 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7124 // else if(0.1<x&&x<0.2){
7125 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7127 // if(0.2<x&&x<0.4){
7128 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7135 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7136 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7137 x=fhBeautyFDmin->GetBinLowEdge(j);
7138 fhBeautyFDmin->SetBinContent(j,-0.05);
7140 // if(-0.4<x&&x<-0.2){
7141 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7143 // else if(-0.2<x&&x<-0.1){
7144 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7146 // else if(-0.2<x&&x<-0.1){
7147 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7149 // else if(-0.1<x&&x<0.1){
7150 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7152 // else if(0.1<x&&x<0.2){
7153 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7155 // if(0.2<x&&x<0.4){
7156 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7160 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
7161 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
7162 x=fhBeautyFDmax->GetBinLowEdge(j);
7163 fhBeautyFDmax->SetBinContent(j,0.03);
7165 // if(-0.4<x&&x<-0.2){
7166 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7168 // else if(-0.2<x&&x<-0.1){
7169 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7171 // else if(-0.2<x&&x<-0.1){
7172 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7174 // else if(-0.1<x&&x<0.1){
7175 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7177 // else if(0.1<x&&x<0.2){
7178 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7180 // if(0.2<x&&x<0.4){
7181 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7189 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusHighPtAss03(){
7190 Printf("Setting uncertainties for Dplus pPb 2013, 8<pt(D)<16, pt(assoc)>0.3 GeV/c ");
7193 fstrptAss="ptAsMore03";
7195 if(!fhDeltaPhiTemplate){
7196 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7200 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7201 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7202 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7203 fhYieldExtraction->SetBinContent(j,0.1);
7206 // Background D MESON candidate subtraction (side-band variations, etc.)
7207 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7208 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7209 fhBackSubtractionMin->SetBinContent(j,-0.1);
7212 // Background D MESON candidate subtraction (side-band variations, etc.)
7213 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7214 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7215 fhBackSubtractionMax->SetBinContent(j,0.1);
7218 // MC CORRECTIONS, -5% 10% for assoc track eff
7219 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7220 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7221 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7224 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7225 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7226 fhMCcorrectionsMax->SetBinContent(j,0.04);
7230 // MC D EFF CORRECTION
7231 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7232 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7233 fhMCDefficiencyMin->SetBinContent(j,-0.1);
7236 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7237 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7238 fhMCDefficiencyMax->SetBinContent(j,0.1);
7242 // Contamination from secondary tracks
7243 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7244 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7245 fhSecContaminationMin->SetBinContent(j,-0.035);
7248 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7249 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7250 fhSecContaminationMax->SetBinContent(j,0.035);
7253 // MC CLOSURETEST (D meson efficiency)
7254 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7255 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7256 x=fhMCclosureTestMin->GetBinLowEdge(j);
7257 fhMCclosureTestMin->SetBinContent(j,-0.0);
7260 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7262 else if(-0.2<x&&x<-0.1){
7263 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7265 else if(-0.1<x&&x<0.1){
7266 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7268 else if(0.1<x&&x<0.2){
7269 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7272 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7276 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7277 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7278 x=fhMCclosureTestMax->GetBinLowEdge(j);
7279 fhMCclosureTestMax->SetBinContent(j,0.08);
7281 // if(-0.4<x&&x<-0.2){
7282 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7284 // else if(-0.2<x&&x<-0.1){
7285 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7287 // else if(-0.2<x&&x<-0.1){
7288 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7290 // else if(-0.1<x&&x<0.1){
7291 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7293 // else if(0.1<x&&x<0.2){
7294 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7296 // if(0.2<x&&x<0.4){
7297 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7304 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7305 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7306 x=fhBeautyFDmin->GetBinLowEdge(j);
7307 fhBeautyFDmin->SetBinContent(j,-0.05);
7309 // if(-0.4<x&&x<-0.2){
7310 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7312 // else if(-0.2<x&&x<-0.1){
7313 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7315 // else if(-0.2<x&&x<-0.1){
7316 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7318 // else if(-0.1<x&&x<0.1){
7319 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7321 // else if(0.1<x&&x<0.2){
7322 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7324 // if(0.2<x&&x<0.4){
7325 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7329 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
7330 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
7331 x=fhBeautyFDmax->GetBinLowEdge(j);
7332 fhBeautyFDmax->SetBinContent(j,0.03);
7334 // if(-0.4<x&&x<-0.2){
7335 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7337 // else if(-0.2<x&&x<-0.1){
7338 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7340 // else if(-0.2<x&&x<-0.1){
7341 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7343 // else if(-0.1<x&&x<0.1){
7344 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7346 // else if(0.1<x&&x<0.2){
7347 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7349 // if(0.2<x&&x<0.4){
7350 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7359 //////// HIGHER PT ASS THRESHOLDS
7361 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroLowPtAss05(){
7362 Printf("Setting uncertainties for Dzero pPb 2013, 3<pt(D)<5, pt(assoc)>0.5 GeV/c ");
7365 fstrptAss="ptAsMore05";
7367 if(!fhDeltaPhiTemplate){
7368 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7371 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7372 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7373 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7374 fhYieldExtraction->SetBinContent(j,0.1);
7377 // Background D MESON candidate subtraction (side-band variations, etc.)
7378 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7379 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7380 fhBackSubtractionMin->SetBinContent(j,-0.05);
7383 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7384 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7385 fhBackSubtractionMax->SetBinContent(j,0.05);
7389 // MC CORRECTIONS ( associatate track efficiency):
7390 // -5% +10% for assoc track eff
7391 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7392 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7393 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7396 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7397 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7398 fhMCcorrectionsMax->SetBinContent(j,0.04);
7401 // MC D EFF CORRECTION
7402 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7403 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7404 fhMCDefficiencyMin->SetBinContent(j,-0.05);
7407 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7408 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7409 fhMCDefficiencyMax->SetBinContent(j,0.05);
7413 // Contamination from secondary tracks
7414 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7415 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7416 fhSecContaminationMin->SetBinContent(j,-0.035);
7419 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7420 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7421 fhSecContaminationMax->SetBinContent(j,0.035);
7425 // MC CLOSURETEST (D meson efficiency)
7426 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7427 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7428 x=fhMCclosureTestMin->GetBinLowEdge(j);
7429 fhMCclosureTestMin->SetBinContent(j,-0.);
7432 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7434 else if(-0.2<x&&x<-0.1){
7435 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7437 else if(-0.1<x&&x<0.1){
7438 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7440 else if(0.1<x&&x<0.2){
7441 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7444 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7448 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7449 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7450 // x=fhMCclosureTestMax->GetBinLowEdge(j);
7451 fhMCclosureTestMax->SetBinContent(j,0.07);
7453 // if(-0.4<x&&x<-0.2){
7454 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7456 // else if(-0.2<x&&x<-0.1){
7457 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7459 // else if(-0.2<x&&x<-0.1){
7460 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7462 // else if(-0.1<x&&x<0.1){
7463 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7465 // else if(0.1<x&&x<0.2){
7466 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7468 // if(0.2<x&&x<0.4){
7469 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7476 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7477 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7478 x=fhBeautyFDmin->GetBinLowEdge(j);
7479 fhBeautyFDmin->SetBinContent(j,-0.05);
7481 // if(-0.4<x&&x<-0.2){
7482 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7484 // else if(-0.2<x&&x<-0.1){
7485 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7487 // else if(-0.2<x&&x<-0.1){
7488 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7490 // else if(-0.1<x&&x<0.1){
7491 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7493 // else if(0.1<x&&x<0.2){
7494 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7496 // if(0.2<x&&x<0.4){
7497 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7501 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
7502 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
7503 x=fhBeautyFDmax->GetBinLowEdge(j);
7504 fhBeautyFDmax->SetBinContent(j,0.03);
7506 // if(-0.4<x&&x<-0.2){
7507 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7509 // else if(-0.2<x&&x<-0.1){
7510 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7512 // else if(-0.2<x&&x<-0.1){
7513 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7515 // else if(-0.1<x&&x<0.1){
7516 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7518 // else if(0.1<x&&x<0.2){
7519 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7521 // if(0.2<x&&x<0.4){
7522 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7529 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroMidPtAss05(){
7530 Printf("Setting uncertainties for Dzero pPb 2013, 5<pt(D)<8, pt(assoc)>0.5 GeV/c ");
7533 fstrptAss="ptAsMore05";
7535 if(!fhDeltaPhiTemplate){
7536 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7539 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7540 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7541 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7542 fhYieldExtraction->SetBinContent(j,0.1);
7545 // Background D MESON candidate subtraction (side-band variations, etc.)
7546 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7547 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7548 fhBackSubtractionMin->SetBinContent(j,-0.05);
7551 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7552 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7553 fhBackSubtractionMax->SetBinContent(j,0.05);
7556 // MC CORRECTIONS: -5% +10% for assoc track eff
7557 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7558 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7559 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7562 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7563 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7564 fhMCcorrectionsMax->SetBinContent(j,0.04);
7568 // MC D EFF CORRECTION
7569 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7570 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7571 fhMCDefficiencyMin->SetBinContent(j,-0.05);
7574 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7575 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7576 fhMCDefficiencyMax->SetBinContent(j,0.05);
7580 // Contamination from secondary tracks
7581 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7582 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7583 fhSecContaminationMin->SetBinContent(j,-0.035);
7586 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7587 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7588 fhSecContaminationMax->SetBinContent(j,0.035);
7591 // MC CLOSURETEST (D meson efficiency)
7592 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7593 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7594 x=fhMCclosureTestMin->GetBinLowEdge(j);
7595 fhMCclosureTestMin->SetBinContent(j,-0.);
7598 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7600 else if(-0.2<x&&x<-0.1){
7601 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7603 else if(-0.1<x&&x<0.1){
7604 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7606 else if(0.1<x&&x<0.2){
7607 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7610 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7614 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7615 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7616 x=fhMCclosureTestMax->GetBinLowEdge(j);
7617 fhMCclosureTestMax->SetBinContent(j,0.07);
7619 // if(-0.4<x&&x<-0.2){
7620 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7622 // else if(-0.2<x&&x<-0.1){
7623 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7625 // else if(-0.2<x&&x<-0.1){
7626 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7628 // else if(-0.1<x&&x<0.1){
7629 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7631 // else if(0.1<x&&x<0.2){
7632 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7634 // if(0.2<x&&x<0.4){
7635 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7642 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7643 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7644 x=fhBeautyFDmin->GetBinLowEdge(j);
7645 fhBeautyFDmin->SetBinContent(j,-0.05);
7647 // if(-0.4<x&&x<-0.2){
7648 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7650 // else if(-0.2<x&&x<-0.1){
7651 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7653 // else if(-0.2<x&&x<-0.1){
7654 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7656 // else if(-0.1<x&&x<0.1){
7657 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7659 // else if(0.1<x&&x<0.2){
7660 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7662 // if(0.2<x&&x<0.4){
7663 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7667 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
7668 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
7669 x=fhBeautyFDmax->GetBinLowEdge(j);
7670 fhBeautyFDmax->SetBinContent(j,0.03);
7672 // if(-0.4<x&&x<-0.2){
7673 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7675 // else if(-0.2<x&&x<-0.1){
7676 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7678 // else if(-0.2<x&&x<-0.1){
7679 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7681 // else if(-0.1<x&&x<0.1){
7682 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7684 // else if(0.1<x&&x<0.2){
7685 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7687 // if(0.2<x&&x<0.4){
7688 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7696 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroHighPtAss05(){
7697 Printf("Setting uncertainties for Dzero pPb 2013, 8<pt(D)<16, pt(assoc)>0.5 GeV/c ");
7700 fstrptAss="ptAsMore05";
7702 if(!fhDeltaPhiTemplate){
7703 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7707 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7708 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7709 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7710 fhYieldExtraction->SetBinContent(j,0.1);
7713 // Background D MESON candidate subtraction (side-band variations, etc.)
7714 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7715 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7716 fhBackSubtractionMin->SetBinContent(j,-0.05);
7719 // Background D MESON candidate subtraction (side-band variations, etc.)
7720 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7721 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7722 fhBackSubtractionMax->SetBinContent(j,0.05);
7725 // MC CORRECTIONS, -5% 10% for assoc track eff
7726 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7727 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7728 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7731 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7732 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7733 fhMCcorrectionsMax->SetBinContent(j,0.04);
7737 // MC D EFF CORRECTION
7738 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7739 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7740 fhMCDefficiencyMin->SetBinContent(j,-0.05);
7743 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7744 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7745 fhMCDefficiencyMax->SetBinContent(j,0.05);
7749 // Contamination from secondary tracks
7750 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7751 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7752 fhSecContaminationMin->SetBinContent(j,-0.035);
7755 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7756 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7757 fhSecContaminationMax->SetBinContent(j,0.035);
7760 // MC CLOSURETEST (D meson efficiency)
7761 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7762 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7763 x=fhMCclosureTestMin->GetBinLowEdge(j);
7764 fhMCclosureTestMin->SetBinContent(j,-0.);
7767 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7769 else if(-0.2<x&&x<-0.1){
7770 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7772 else if(-0.1<x&&x<0.1){
7773 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7775 else if(0.1<x&&x<0.2){
7776 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7779 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7783 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7784 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7785 x=fhMCclosureTestMax->GetBinLowEdge(j);
7786 fhMCclosureTestMax->SetBinContent(j,0.07);
7788 // if(-0.4<x&&x<-0.2){
7789 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7791 // else if(-0.2<x&&x<-0.1){
7792 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7794 // else if(-0.2<x&&x<-0.1){
7795 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7797 // else if(-0.1<x&&x<0.1){
7798 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7800 // else if(0.1<x&&x<0.2){
7801 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7803 // if(0.2<x&&x<0.4){
7804 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7811 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7812 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7813 x=fhBeautyFDmin->GetBinLowEdge(j);
7814 fhBeautyFDmin->SetBinContent(j,-0.05);
7816 // if(-0.4<x&&x<-0.2){
7817 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7819 // else if(-0.2<x&&x<-0.1){
7820 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7822 // else if(-0.2<x&&x<-0.1){
7823 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7825 // else if(-0.1<x&&x<0.1){
7826 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7828 // else if(0.1<x&&x<0.2){
7829 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7831 // if(0.2<x&&x<0.4){
7832 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7836 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
7837 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
7838 x=fhBeautyFDmax->GetBinLowEdge(j);
7839 fhBeautyFDmax->SetBinContent(j,0.03);
7841 // if(-0.4<x&&x<-0.2){
7842 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7844 // else if(-0.2<x&&x<-0.1){
7845 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7847 // else if(-0.2<x&&x<-0.1){
7848 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7850 // else if(-0.1<x&&x<0.1){
7851 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
7853 // else if(0.1<x&&x<0.2){
7854 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
7856 // if(0.2<x&&x<0.4){
7857 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
7867 //--------------------------------------------------
7868 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarLowPtAss05(){
7869 Printf("Setting uncertainties for Dstar pPb 2013, 3<pt(D)<5, pt(assoc)>0.5 GeV/c ");
7872 fstrptAss="ptAsMore05";
7874 if(!fhDeltaPhiTemplate){
7875 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
7878 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
7879 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
7880 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
7881 fhYieldExtraction->SetBinContent(j,0.1);
7884 // Background D MESON candidate subtraction (side-band variations, etc.)
7885 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
7886 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
7887 fhBackSubtractionMin->SetBinContent(j,-0.07);
7890 // Background D MESON candidate subtraction (side-band variations, etc.)
7891 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
7892 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
7893 fhBackSubtractionMax->SetBinContent(j,0.07);
7896 // MC CORRECTIONS, -5% 10% for assoc track eff
7897 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
7898 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
7899 fhMCcorrectionsMin->SetBinContent(j,-0.04);
7902 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
7903 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
7904 fhMCcorrectionsMax->SetBinContent(j,0.04);
7908 // MC D EFF CORRECTION
7909 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
7910 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
7911 fhMCDefficiencyMin->SetBinContent(j,-0.05);
7914 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
7915 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
7916 fhMCDefficiencyMax->SetBinContent(j,0.05);
7920 // Contamination from secondary tracks
7921 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
7922 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
7923 fhSecContaminationMin->SetBinContent(j,-0.035);
7926 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
7927 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
7928 fhSecContaminationMax->SetBinContent(j,0.035);
7931 // MC CLOSURETEST (D meson efficiency)
7932 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
7933 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
7934 x=fhMCclosureTestMin->GetBinLowEdge(j);
7935 fhMCclosureTestMin->SetBinContent(j,-0.0);
7938 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7940 else if(-0.2<x&&x<-0.1){
7941 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7943 else if(-0.1<x&&x<0.1){
7944 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
7946 else if(0.1<x&&x<0.2){
7947 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
7950 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
7954 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
7955 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
7956 x=fhMCclosureTestMax->GetBinLowEdge(j);
7957 fhMCclosureTestMax->SetBinContent(j,0.7);
7959 // if(-0.4<x&&x<-0.2){
7960 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7962 // else if(-0.2<x&&x<-0.1){
7963 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7965 // else if(-0.2<x&&x<-0.1){
7966 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7968 // else if(-0.1<x&&x<0.1){
7969 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
7971 // else if(0.1<x&&x<0.2){
7972 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
7974 // if(0.2<x&&x<0.4){
7975 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
7982 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
7983 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
7984 x=fhBeautyFDmin->GetBinLowEdge(j);
7985 fhBeautyFDmin->SetBinContent(j,-0.05);
7987 // if(-0.4<x&&x<-0.2){
7988 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
7990 // else if(-0.2<x&&x<-0.1){
7991 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7993 // else if(-0.2<x&&x<-0.1){
7994 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
7996 // else if(-0.1<x&&x<0.1){
7997 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
7999 // else if(0.1<x&&x<0.2){
8000 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8002 // if(0.2<x&&x<0.4){
8003 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8007 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8008 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8009 x=fhBeautyFDmax->GetBinLowEdge(j);
8010 fhBeautyFDmax->SetBinContent(j,0.03);
8012 // if(-0.4<x&&x<-0.2){
8013 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8015 // else if(-0.2<x&&x<-0.1){
8016 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8018 // else if(-0.2<x&&x<-0.1){
8019 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8021 // else if(-0.1<x&&x<0.1){
8022 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8024 // else if(0.1<x&&x<0.2){
8025 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8027 // if(0.2<x&&x<0.4){
8028 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8036 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarMidPtAss05(){
8037 Printf("Setting uncertainties for Dstar pPb 2013, 5<pt(D)<8, pt(assoc)>0.5 GeV/c ");
8040 fstrptAss="ptAsMore05";
8042 if(!fhDeltaPhiTemplate){
8043 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8046 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8047 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8048 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8049 fhYieldExtraction->SetBinContent(j,0.1);
8052 // Background D MESON candidate subtraction (side-band variations, etc.)
8053 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8054 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8055 fhBackSubtractionMin->SetBinContent(j,-0.05);
8058 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8059 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8060 fhBackSubtractionMax->SetBinContent(j,0.05);
8063 // MC CORRECTIONS/ -5% 10% for assoc track eff
8064 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8065 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8066 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8069 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8070 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8071 fhMCcorrectionsMax->SetBinContent(j,0.04);
8074 // MC D EFF CORRECTION
8075 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8076 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8077 fhMCDefficiencyMin->SetBinContent(j,-0.05);
8080 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8081 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8082 fhMCDefficiencyMax->SetBinContent(j,0.05);
8086 // Contamination from secondary tracks
8087 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8088 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8089 fhSecContaminationMin->SetBinContent(j,-0.035);
8092 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8093 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8094 fhSecContaminationMax->SetBinContent(j,0.035);
8097 // MC CLOSURETEST (D meson efficiency)
8098 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8099 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8100 x=fhMCclosureTestMin->GetBinLowEdge(j);
8101 fhMCclosureTestMin->SetBinContent(j,-0.0);
8104 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8106 else if(-0.2<x&&x<-0.1){
8107 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8109 else if(-0.1<x&&x<0.1){
8110 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8112 else if(0.1<x&&x<0.2){
8113 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8116 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8120 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8121 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8122 x=fhMCclosureTestMax->GetBinLowEdge(j);
8123 fhMCclosureTestMax->SetBinContent(j,0.07);
8125 // if(-0.4<x&&x<-0.2){
8126 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8128 // else if(-0.2<x&&x<-0.1){
8129 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8131 // else if(-0.2<x&&x<-0.1){
8132 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8134 // else if(-0.1<x&&x<0.1){
8135 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8137 // else if(0.1<x&&x<0.2){
8138 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8140 // if(0.2<x&&x<0.4){
8141 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8148 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8149 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8150 x=fhBeautyFDmin->GetBinLowEdge(j);
8151 fhBeautyFDmin->SetBinContent(j,-0.05);
8153 // if(-0.4<x&&x<-0.2){
8154 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8156 // else if(-0.2<x&&x<-0.1){
8157 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8159 // else if(-0.2<x&&x<-0.1){
8160 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8162 // else if(-0.1<x&&x<0.1){
8163 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
8165 // else if(0.1<x&&x<0.2){
8166 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8168 // if(0.2<x&&x<0.4){
8169 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8173 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8174 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8175 x=fhBeautyFDmax->GetBinLowEdge(j);
8176 fhBeautyFDmax->SetBinContent(j,0.03);
8178 // if(-0.4<x&&x<-0.2){
8179 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8181 // else if(-0.2<x&&x<-0.1){
8182 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8184 // else if(-0.2<x&&x<-0.1){
8185 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8187 // else if(-0.1<x&&x<0.1){
8188 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8190 // else if(0.1<x&&x<0.2){
8191 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8193 // if(0.2<x&&x<0.4){
8194 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8203 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarHighPtAss05(){
8204 Printf("Setting uncertainties for Dstar pPb 2013, 8<pt(D)<16, pt(assoc)>0.5 GeV/c ");
8207 fstrptAss="ptAsMore05";
8209 if(!fhDeltaPhiTemplate){
8210 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8213 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8214 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8215 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8216 fhYieldExtraction->SetBinContent(j,0.1);
8219 // Background D MESON candidate subtraction (side-band variations, etc.)
8220 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8221 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8222 fhBackSubtractionMin->SetBinContent(j,-0.05);
8225 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8226 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8227 fhBackSubtractionMax->SetBinContent(j,0.05);
8230 // MC CORRECTIONS -5% +10% for assoc track eff
8231 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8232 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8233 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8236 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8237 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8238 fhMCcorrectionsMax->SetBinContent(j,0.04);
8240 // MC D EFF CORRECTION
8241 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8242 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8243 fhMCDefficiencyMin->SetBinContent(j,-0.08);
8246 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8247 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8248 fhMCDefficiencyMax->SetBinContent(j,0.08);
8252 // Contamination from secondary tracks
8253 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8254 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8255 fhSecContaminationMin->SetBinContent(j,-0.035);
8258 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8259 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8260 fhSecContaminationMax->SetBinContent(j,0.035);
8263 // MC CLOSURETEST (D meson efficiency)
8264 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8265 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8266 x=fhMCclosureTestMin->GetBinLowEdge(j);
8267 fhMCclosureTestMin->SetBinContent(j,-0.0);
8270 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8272 else if(-0.2<x&&x<-0.1){
8273 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8275 else if(-0.1<x&&x<0.1){
8276 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8278 else if(0.1<x&&x<0.2){
8279 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8282 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8286 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8287 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8288 x=fhMCclosureTestMax->GetBinLowEdge(j);
8289 fhMCclosureTestMax->SetBinContent(j,0.07);
8291 // if(-0.4<x&&x<-0.2){
8292 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8294 // else if(-0.2<x&&x<-0.1){
8295 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8297 // else if(-0.2<x&&x<-0.1){
8298 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8300 // else if(-0.1<x&&x<0.1){
8301 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8303 // else if(0.1<x&&x<0.2){
8304 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8306 // if(0.2<x&&x<0.4){
8307 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8314 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8315 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8316 x=fhBeautyFDmin->GetBinLowEdge(j);
8317 fhBeautyFDmin->SetBinContent(j,-0.05);
8319 // if(-0.4<x&&x<-0.2){
8320 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8322 // else if(-0.2<x&&x<-0.1){
8323 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8325 // else if(-0.2<x&&x<-0.1){
8326 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8328 // else if(-0.1<x&&x<0.1){
8329 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
8331 // else if(0.1<x&&x<0.2){
8332 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8334 // if(0.2<x&&x<0.4){
8335 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8339 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8340 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8341 x=fhBeautyFDmax->GetBinLowEdge(j);
8342 fhBeautyFDmax->SetBinContent(j,0.03);
8344 // if(-0.4<x&&x<-0.2){
8345 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8347 // else if(-0.2<x&&x<-0.1){
8348 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8350 // else if(-0.2<x&&x<-0.1){
8351 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8353 // else if(-0.1<x&&x<0.1){
8354 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8356 // else if(0.1<x&&x<0.2){
8357 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8359 // if(0.2<x&&x<0.4){
8360 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8370 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusLowPtAss05(){
8371 Printf("Setting uncertainties for Dplus pPb 2013, 3<pt(D)<5, pt(assoc)>0.5 GeV/c ");
8374 fstrptAss="ptAsMore05";
8376 if(!fhDeltaPhiTemplate){
8377 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8380 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8381 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8382 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8383 fhYieldExtraction->SetBinContent(j,0.1);
8386 // Background D MESON candidate subtraction (side-band variations, etc.)
8387 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8388 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8389 fhBackSubtractionMin->SetBinContent(j,-0.1);
8392 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8393 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8394 fhBackSubtractionMax->SetBinContent(j,0.1);
8398 // MC CORRECTIONS ( associatate track efficiency):
8399 // -5% +10% for assoc track eff
8400 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8401 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8402 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8405 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8406 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8407 fhMCcorrectionsMax->SetBinContent(j,0.04);
8410 // MC D EFF CORRECTION
8411 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8412 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8413 fhMCDefficiencyMin->SetBinContent(j,-0.1);
8416 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8417 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8418 fhMCDefficiencyMax->SetBinContent(j,0.1);
8422 // Contamination from secondary tracks
8423 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8424 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8425 fhSecContaminationMin->SetBinContent(j,-0.035);
8428 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8429 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8430 fhSecContaminationMax->SetBinContent(j,0.035);
8434 // MC CLOSURETEST (D meson efficiency)
8435 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8436 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8437 x=fhMCclosureTestMin->GetBinLowEdge(j);
8438 fhMCclosureTestMin->SetBinContent(j,-0.0);
8441 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8443 else if(-0.2<x&&x<-0.1){
8444 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8446 else if(-0.1<x&&x<0.1){
8447 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8449 else if(0.1<x&&x<0.2){
8450 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8453 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8457 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8458 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8459 // x=fhMCclosureTestMax->GetBinLowEdge(j);
8460 fhMCclosureTestMax->SetBinContent(j,0.06);
8462 // if(-0.4<x&&x<-0.2){
8463 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8465 // else if(-0.2<x&&x<-0.1){
8466 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8468 // else if(-0.2<x&&x<-0.1){
8469 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8471 // else if(-0.1<x&&x<0.1){
8472 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8474 // else if(0.1<x&&x<0.2){
8475 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8477 // if(0.2<x&&x<0.4){
8478 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8485 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8486 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8487 x=fhBeautyFDmin->GetBinLowEdge(j);
8488 fhBeautyFDmin->SetBinContent(j,-0.05);
8490 // if(-0.4<x&&x<-0.2){
8491 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8493 // else if(-0.2<x&&x<-0.1){
8494 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8496 // else if(-0.2<x&&x<-0.1){
8497 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8499 // else if(-0.1<x&&x<0.1){
8500 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
8502 // else if(0.1<x&&x<0.2){
8503 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8505 // if(0.2<x&&x<0.4){
8506 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8510 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8511 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8512 x=fhBeautyFDmax->GetBinLowEdge(j);
8513 fhBeautyFDmax->SetBinContent(j,0.03);
8515 // if(-0.4<x&&x<-0.2){
8516 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8518 // else if(-0.2<x&&x<-0.1){
8519 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8521 // else if(-0.2<x&&x<-0.1){
8522 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8524 // else if(-0.1<x&&x<0.1){
8525 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8527 // else if(0.1<x&&x<0.2){
8528 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8530 // if(0.2<x&&x<0.4){
8531 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8538 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusMidPtAss05(){
8539 Printf("Setting uncertainties for Dplus pPb 2013, 5<pt(D)<8, pt(assoc)>0.5 GeV/c ");
8542 fstrptAss="ptAsMore05";
8544 if(!fhDeltaPhiTemplate){
8545 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8548 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8549 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8550 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8551 fhYieldExtraction->SetBinContent(j,0.1);
8554 // Background D MESON candidate subtraction (side-band variations, etc.)
8555 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8556 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8557 fhBackSubtractionMin->SetBinContent(j,-0.1);
8560 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8561 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8562 fhBackSubtractionMax->SetBinContent(j,0.1);
8565 // MC CORRECTIONS: -5% +10% for assoc track eff
8566 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8567 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8568 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8571 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8572 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8573 fhMCcorrectionsMax->SetBinContent(j,0.04);
8577 // MC D EFF CORRECTION
8578 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8579 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8580 fhMCDefficiencyMin->SetBinContent(j,-0.1);
8583 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8584 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8585 fhMCDefficiencyMax->SetBinContent(j,0.1);
8589 // Contamination from secondary tracks
8590 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8591 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8592 fhSecContaminationMin->SetBinContent(j,-0.035);
8595 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8596 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8597 fhSecContaminationMax->SetBinContent(j,0.035);
8600 // MC CLOSURETEST (D meson efficiency)
8601 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8602 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8603 x=fhMCclosureTestMin->GetBinLowEdge(j);
8604 fhMCclosureTestMin->SetBinContent(j,-0.0);
8607 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8609 else if(-0.2<x&&x<-0.1){
8610 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8612 else if(-0.1<x&&x<0.1){
8613 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8615 else if(0.1<x&&x<0.2){
8616 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8619 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8623 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8624 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8625 x=fhMCclosureTestMax->GetBinLowEdge(j);
8626 fhMCclosureTestMax->SetBinContent(j,0.06);
8628 // if(-0.4<x&&x<-0.2){
8629 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8631 // else if(-0.2<x&&x<-0.1){
8632 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8634 // else if(-0.2<x&&x<-0.1){
8635 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8637 // else if(-0.1<x&&x<0.1){
8638 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8640 // else if(0.1<x&&x<0.2){
8641 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8643 // if(0.2<x&&x<0.4){
8644 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8651 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8652 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8653 x=fhBeautyFDmin->GetBinLowEdge(j);
8654 fhBeautyFDmin->SetBinContent(j,-0.05);
8656 // if(-0.4<x&&x<-0.2){
8657 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8659 // else if(-0.2<x&&x<-0.1){
8660 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8662 // else if(-0.2<x&&x<-0.1){
8663 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8665 // else if(-0.1<x&&x<0.1){
8666 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
8668 // else if(0.1<x&&x<0.2){
8669 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8671 // if(0.2<x&&x<0.4){
8672 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8676 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8677 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8678 x=fhBeautyFDmax->GetBinLowEdge(j);
8679 fhBeautyFDmax->SetBinContent(j,0.03);
8681 // if(-0.4<x&&x<-0.2){
8682 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8684 // else if(-0.2<x&&x<-0.1){
8685 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8687 // else if(-0.2<x&&x<-0.1){
8688 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8690 // else if(-0.1<x&&x<0.1){
8691 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8693 // else if(0.1<x&&x<0.2){
8694 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8696 // if(0.2<x&&x<0.4){
8697 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8705 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusHighPtAss05(){
8706 Printf("Setting uncertainties for Dplus pPb 2013, 8<pt(D)<16, pt(assoc)>0.5 GeV/c ");
8709 fstrptAss="ptAsMore05";
8711 if(!fhDeltaPhiTemplate){
8712 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8716 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8717 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8718 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8719 fhYieldExtraction->SetBinContent(j,0.1);
8722 // Background D MESON candidate subtraction (side-band variations, etc.)
8723 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8724 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8725 fhBackSubtractionMin->SetBinContent(j,-0.1);
8728 // Background D MESON candidate subtraction (side-band variations, etc.)
8729 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8730 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8731 fhBackSubtractionMax->SetBinContent(j,0.1);
8734 // MC CORRECTIONS, -5% 10% for assoc track eff
8735 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8736 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8737 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8740 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8741 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8742 fhMCcorrectionsMax->SetBinContent(j,0.04);
8746 // MC D EFF CORRECTION
8747 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8748 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8749 fhMCDefficiencyMin->SetBinContent(j,-0.1);
8752 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8753 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8754 fhMCDefficiencyMax->SetBinContent(j,0.1);
8758 // Contamination from secondary tracks
8759 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8760 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8761 fhSecContaminationMin->SetBinContent(j,-0.035);
8764 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8765 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8766 fhSecContaminationMax->SetBinContent(j,0.035);
8769 // MC CLOSURETEST (D meson efficiency)
8770 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8771 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8772 x=fhMCclosureTestMin->GetBinLowEdge(j);
8773 fhMCclosureTestMin->SetBinContent(j,-0.0);
8776 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8778 else if(-0.2<x&&x<-0.1){
8779 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8781 else if(-0.1<x&&x<0.1){
8782 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8784 else if(0.1<x&&x<0.2){
8785 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8788 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8792 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8793 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8794 x=fhMCclosureTestMax->GetBinLowEdge(j);
8795 fhMCclosureTestMax->SetBinContent(j,0.06);
8797 // if(-0.4<x&&x<-0.2){
8798 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8800 // else if(-0.2<x&&x<-0.1){
8801 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8803 // else if(-0.2<x&&x<-0.1){
8804 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8806 // else if(-0.1<x&&x<0.1){
8807 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8809 // else if(0.1<x&&x<0.2){
8810 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8812 // if(0.2<x&&x<0.4){
8813 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8820 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8821 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8822 x=fhBeautyFDmin->GetBinLowEdge(j);
8823 fhBeautyFDmin->SetBinContent(j,-0.05);
8825 // if(-0.4<x&&x<-0.2){
8826 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8828 // else if(-0.2<x&&x<-0.1){
8829 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8831 // else if(-0.2<x&&x<-0.1){
8832 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8834 // else if(-0.1<x&&x<0.1){
8835 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
8837 // else if(0.1<x&&x<0.2){
8838 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
8840 // if(0.2<x&&x<0.4){
8841 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8845 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
8846 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
8847 x=fhBeautyFDmax->GetBinLowEdge(j);
8848 fhBeautyFDmax->SetBinContent(j,0.03);
8850 // if(-0.4<x&&x<-0.2){
8851 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8853 // else if(-0.2<x&&x<-0.1){
8854 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8856 // else if(-0.2<x&&x<-0.1){
8857 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8859 // else if(-0.1<x&&x<0.1){
8860 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
8862 // else if(0.1<x&&x<0.2){
8863 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
8865 // if(0.2<x&&x<0.4){
8866 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
8875 // pt(assoc)> 1 GeV/c
8876 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroLowPtAss1(){
8877 Printf("Setting uncertainties for Dzero pPb 2013, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
8880 fstrptAss="ptAsMore1";
8882 if(!fhDeltaPhiTemplate){
8883 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
8886 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
8887 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
8888 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
8889 fhYieldExtraction->SetBinContent(j,0.1);
8892 // Background D MESON candidate subtraction (side-band variations, etc.)
8893 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
8894 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
8895 fhBackSubtractionMin->SetBinContent(j,-0.05);
8898 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
8899 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
8900 fhBackSubtractionMax->SetBinContent(j,0.05);
8904 // MC CORRECTIONS ( associatate track efficiency):
8905 // -5% +10% for assoc track eff
8906 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
8907 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
8908 fhMCcorrectionsMin->SetBinContent(j,-0.04);
8911 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
8912 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
8913 fhMCcorrectionsMax->SetBinContent(j,0.04);
8916 // MC D EFF CORRECTION
8917 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
8918 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
8919 fhMCDefficiencyMin->SetBinContent(j,-0.05);
8922 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
8923 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
8924 fhMCDefficiencyMax->SetBinContent(j,0.05);
8928 // Contamination from secondary tracks
8929 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
8930 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
8931 fhSecContaminationMin->SetBinContent(j,-0.035);
8934 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
8935 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
8936 fhSecContaminationMax->SetBinContent(j,0.035);
8940 // MC CLOSURETEST (D meson efficiency)
8941 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
8942 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
8943 x=fhMCclosureTestMin->GetBinLowEdge(j);
8944 fhMCclosureTestMin->SetBinContent(j,-0.);
8947 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8949 else if(-0.2<x&&x<-0.1){
8950 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8952 else if(-0.1<x&&x<0.1){
8953 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
8955 else if(0.1<x&&x<0.2){
8956 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
8959 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
8963 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
8964 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
8965 // x=fhMCclosureTestMax->GetBinLowEdge(j);
8966 fhMCclosureTestMax->SetBinContent(j,0.05);
8968 // if(-0.4<x&&x<-0.2){
8969 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8971 // else if(-0.2<x&&x<-0.1){
8972 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8974 // else if(-0.2<x&&x<-0.1){
8975 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8977 // else if(-0.1<x&&x<0.1){
8978 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
8980 // else if(0.1<x&&x<0.2){
8981 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
8983 // if(0.2<x&&x<0.4){
8984 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
8991 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
8992 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
8993 x=fhBeautyFDmin->GetBinLowEdge(j);
8994 fhBeautyFDmin->SetBinContent(j,-0.05);
8996 // if(-0.4<x&&x<-0.2){
8997 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
8999 // else if(-0.2<x&&x<-0.1){
9000 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9002 // else if(-0.2<x&&x<-0.1){
9003 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9005 // else if(-0.1<x&&x<0.1){
9006 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9008 // else if(0.1<x&&x<0.2){
9009 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9011 // if(0.2<x&&x<0.4){
9012 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9016 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9017 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9018 x=fhBeautyFDmax->GetBinLowEdge(j);
9019 fhBeautyFDmax->SetBinContent(j,0.03);
9021 // if(-0.4<x&&x<-0.2){
9022 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9024 // else if(-0.2<x&&x<-0.1){
9025 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9027 // else if(-0.2<x&&x<-0.1){
9028 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9030 // else if(-0.1<x&&x<0.1){
9031 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9033 // else if(0.1<x&&x<0.2){
9034 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9036 // if(0.2<x&&x<0.4){
9037 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9044 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroMidPtAss1(){
9045 Printf("Setting uncertainties for Dzero pPb 2013, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
9048 fstrptAss="ptAsMore1";
9050 if(!fhDeltaPhiTemplate){
9051 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9054 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9055 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9056 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9057 fhYieldExtraction->SetBinContent(j,0.1);
9060 // Background D MESON candidate subtraction (side-band variations, etc.)
9061 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9062 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9063 fhBackSubtractionMin->SetBinContent(j,-0.05);
9066 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9067 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9068 fhBackSubtractionMax->SetBinContent(j,0.05);
9071 // MC CORRECTIONS: -5% +10% for assoc track eff
9072 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9073 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9074 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9077 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9078 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9079 fhMCcorrectionsMax->SetBinContent(j,0.04);
9083 // MC D EFF CORRECTION
9084 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9085 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9086 fhMCDefficiencyMin->SetBinContent(j,-0.05);
9089 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9090 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9091 fhMCDefficiencyMax->SetBinContent(j,0.05);
9095 // Contamination from secondary tracks
9096 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9097 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9098 fhSecContaminationMin->SetBinContent(j,-0.035);
9101 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9102 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9103 fhSecContaminationMax->SetBinContent(j,0.035);
9106 // MC CLOSURETEST (D meson efficiency)
9107 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9108 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9109 x=fhMCclosureTestMin->GetBinLowEdge(j);
9110 fhMCclosureTestMin->SetBinContent(j,-0.);
9113 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9115 else if(-0.2<x&&x<-0.1){
9116 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9118 else if(-0.1<x&&x<0.1){
9119 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9121 else if(0.1<x&&x<0.2){
9122 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9125 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9129 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9130 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9131 x=fhMCclosureTestMax->GetBinLowEdge(j);
9132 fhMCclosureTestMax->SetBinContent(j,0.05);
9134 // if(-0.4<x&&x<-0.2){
9135 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9137 // else if(-0.2<x&&x<-0.1){
9138 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9140 // else if(-0.2<x&&x<-0.1){
9141 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9143 // else if(-0.1<x&&x<0.1){
9144 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9146 // else if(0.1<x&&x<0.2){
9147 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9149 // if(0.2<x&&x<0.4){
9150 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9157 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
9158 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
9159 x=fhBeautyFDmin->GetBinLowEdge(j);
9160 fhBeautyFDmin->SetBinContent(j,-0.05);
9162 // if(-0.4<x&&x<-0.2){
9163 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9165 // else if(-0.2<x&&x<-0.1){
9166 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9168 // else if(-0.2<x&&x<-0.1){
9169 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9171 // else if(-0.1<x&&x<0.1){
9172 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9174 // else if(0.1<x&&x<0.2){
9175 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9177 // if(0.2<x&&x<0.4){
9178 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9182 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9183 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9184 x=fhBeautyFDmax->GetBinLowEdge(j);
9185 fhBeautyFDmax->SetBinContent(j,0.03);
9187 // if(-0.4<x&&x<-0.2){
9188 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9190 // else if(-0.2<x&&x<-0.1){
9191 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9193 // else if(-0.2<x&&x<-0.1){
9194 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9196 // else if(-0.1<x&&x<0.1){
9197 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9199 // else if(0.1<x&&x<0.2){
9200 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9202 // if(0.2<x&&x<0.4){
9203 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9211 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DzeroHighPtAss1(){
9212 Printf("Setting uncertainties for Dzero pPb 2013, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
9215 fstrptAss="ptAsMore1";
9217 if(!fhDeltaPhiTemplate){
9218 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9222 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9223 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9224 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9225 fhYieldExtraction->SetBinContent(j,0.1);
9228 // Background D MESON candidate subtraction (side-band variations, etc.)
9229 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9230 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9231 fhBackSubtractionMin->SetBinContent(j,-0.05);
9234 // Background D MESON candidate subtraction (side-band variations, etc.)
9235 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9236 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9237 fhBackSubtractionMax->SetBinContent(j,0.05);
9240 // MC CORRECTIONS, -5% 10% for assoc track eff
9241 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9242 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9243 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9246 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9247 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9248 fhMCcorrectionsMax->SetBinContent(j,0.04);
9252 // MC D EFF CORRECTION
9253 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9254 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9255 fhMCDefficiencyMin->SetBinContent(j,-0.05);
9258 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9259 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9260 fhMCDefficiencyMax->SetBinContent(j,0.05);
9264 // Contamination from secondary tracks
9265 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9266 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9267 fhSecContaminationMin->SetBinContent(j,-0.035);
9270 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9271 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9272 fhSecContaminationMax->SetBinContent(j,0.035);
9275 // MC CLOSURETEST (D meson efficiency)
9276 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9277 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9278 x=fhMCclosureTestMin->GetBinLowEdge(j);
9279 fhMCclosureTestMin->SetBinContent(j,-0.);
9282 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9284 else if(-0.2<x&&x<-0.1){
9285 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9287 else if(-0.1<x&&x<0.1){
9288 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9290 else if(0.1<x&&x<0.2){
9291 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9294 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9298 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9299 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9300 x=fhMCclosureTestMax->GetBinLowEdge(j);
9301 fhMCclosureTestMax->SetBinContent(j,0.05);
9303 // if(-0.4<x&&x<-0.2){
9304 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9306 // else if(-0.2<x&&x<-0.1){
9307 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9309 // else if(-0.2<x&&x<-0.1){
9310 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9312 // else if(-0.1<x&&x<0.1){
9313 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9315 // else if(0.1<x&&x<0.2){
9316 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9318 // if(0.2<x&&x<0.4){
9319 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9326 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
9327 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
9328 x=fhBeautyFDmin->GetBinLowEdge(j);
9329 fhBeautyFDmin->SetBinContent(j,-0.05);
9331 // if(-0.4<x&&x<-0.2){
9332 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9334 // else if(-0.2<x&&x<-0.1){
9335 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9337 // else if(-0.2<x&&x<-0.1){
9338 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9340 // else if(-0.1<x&&x<0.1){
9341 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9343 // else if(0.1<x&&x<0.2){
9344 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9346 // if(0.2<x&&x<0.4){
9347 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9351 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9352 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9353 x=fhBeautyFDmax->GetBinLowEdge(j);
9354 fhBeautyFDmax->SetBinContent(j,0.03);
9356 // if(-0.4<x&&x<-0.2){
9357 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9359 // else if(-0.2<x&&x<-0.1){
9360 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9362 // else if(-0.2<x&&x<-0.1){
9363 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9365 // else if(-0.1<x&&x<0.1){
9366 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9368 // else if(0.1<x&&x<0.2){
9369 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9371 // if(0.2<x&&x<0.4){
9372 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9382 //--------------------------------------------------
9383 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarLowPtAss1(){
9384 Printf("Setting uncertainties for Dstar pPb 2013, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
9387 fstrptAss="ptAsMore1";
9389 if(!fhDeltaPhiTemplate){
9390 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9393 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9394 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9395 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9396 fhYieldExtraction->SetBinContent(j,0.1);
9399 // Background D MESON candidate subtraction (side-band variations, etc.)
9400 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9401 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9402 fhBackSubtractionMin->SetBinContent(j,-0.08);
9405 // Background D MESON candidate subtraction (side-band variations, etc.)
9406 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9407 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9408 fhBackSubtractionMax->SetBinContent(j,0.08);
9411 // MC CORRECTIONS, -5% 10% for assoc track eff
9412 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9413 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9414 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9417 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9418 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9419 fhMCcorrectionsMax->SetBinContent(j,0.04);
9423 // MC D EFF CORRECTION
9424 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9425 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9426 fhMCDefficiencyMin->SetBinContent(j,-0.05);
9429 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9430 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9431 fhMCDefficiencyMax->SetBinContent(j,0.05);
9435 // Contamination from secondary tracks
9436 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9437 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9438 fhSecContaminationMin->SetBinContent(j,-0.035);
9441 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9442 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9443 fhSecContaminationMax->SetBinContent(j,0.035);
9446 // MC CLOSURETEST (D meson efficiency)
9447 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9448 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9449 x=fhMCclosureTestMin->GetBinLowEdge(j);
9450 fhMCclosureTestMin->SetBinContent(j,-0.0);
9453 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9455 else if(-0.2<x&&x<-0.1){
9456 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9458 else if(-0.1<x&&x<0.1){
9459 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9461 else if(0.1<x&&x<0.2){
9462 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9465 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9469 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9470 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9471 x=fhMCclosureTestMax->GetBinLowEdge(j);
9472 fhMCclosureTestMax->SetBinContent(j,0.05);
9474 // if(-0.4<x&&x<-0.2){
9475 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9477 // else if(-0.2<x&&x<-0.1){
9478 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9480 // else if(-0.2<x&&x<-0.1){
9481 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9483 // else if(-0.1<x&&x<0.1){
9484 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9486 // else if(0.1<x&&x<0.2){
9487 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9489 // if(0.2<x&&x<0.4){
9490 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9497 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
9498 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
9499 x=fhBeautyFDmin->GetBinLowEdge(j);
9500 fhBeautyFDmin->SetBinContent(j,-0.05);
9502 // if(-0.4<x&&x<-0.2){
9503 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9505 // else if(-0.2<x&&x<-0.1){
9506 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9508 // else if(-0.2<x&&x<-0.1){
9509 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9511 // else if(-0.1<x&&x<0.1){
9512 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9514 // else if(0.1<x&&x<0.2){
9515 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9517 // if(0.2<x&&x<0.4){
9518 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9522 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9523 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9524 x=fhBeautyFDmax->GetBinLowEdge(j);
9525 fhBeautyFDmax->SetBinContent(j,0.03);
9527 // if(-0.4<x&&x<-0.2){
9528 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9530 // else if(-0.2<x&&x<-0.1){
9531 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9533 // else if(-0.2<x&&x<-0.1){
9534 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9536 // else if(-0.1<x&&x<0.1){
9537 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9539 // else if(0.1<x&&x<0.2){
9540 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9542 // if(0.2<x&&x<0.4){
9543 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9551 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarMidPtAss1(){
9552 Printf("Setting uncertainties for Dstar pPb 2013, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
9555 fstrptAss="ptAsMore1";
9557 if(!fhDeltaPhiTemplate){
9558 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9561 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9562 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9563 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9564 fhYieldExtraction->SetBinContent(j,0.1);
9567 // Background D MESON candidate subtraction (side-band variations, etc.)
9568 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9569 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9570 fhBackSubtractionMin->SetBinContent(j,-0.06);
9573 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9574 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9575 fhBackSubtractionMax->SetBinContent(j,0.06);
9578 // MC CORRECTIONS/ -5% 10% for assoc track eff
9579 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9580 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9581 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9584 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9585 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9586 fhMCcorrectionsMax->SetBinContent(j,0.04);
9589 // MC D EFF CORRECTION
9590 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9591 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9592 fhMCDefficiencyMin->SetBinContent(j,-0.05);
9595 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9596 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9597 fhMCDefficiencyMax->SetBinContent(j,0.05);
9601 // Contamination from secondary tracks
9602 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9603 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9604 fhSecContaminationMin->SetBinContent(j,-0.035);
9607 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9608 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9609 fhSecContaminationMax->SetBinContent(j,0.035);
9612 // MC CLOSURETEST (D meson efficiency)
9613 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9614 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9615 x=fhMCclosureTestMin->GetBinLowEdge(j);
9616 fhMCclosureTestMin->SetBinContent(j,-0.);
9619 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9621 else if(-0.2<x&&x<-0.1){
9622 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9624 else if(-0.1<x&&x<0.1){
9625 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9627 else if(0.1<x&&x<0.2){
9628 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9631 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9635 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9636 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9637 x=fhMCclosureTestMax->GetBinLowEdge(j);
9638 fhMCclosureTestMax->SetBinContent(j,0.05);
9640 // if(-0.4<x&&x<-0.2){
9641 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9643 // else if(-0.2<x&&x<-0.1){
9644 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9646 // else if(-0.2<x&&x<-0.1){
9647 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9649 // else if(-0.1<x&&x<0.1){
9650 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9652 // else if(0.1<x&&x<0.2){
9653 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9655 // if(0.2<x&&x<0.4){
9656 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9663 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
9664 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
9665 x=fhBeautyFDmin->GetBinLowEdge(j);
9666 fhBeautyFDmin->SetBinContent(j,-0.05);
9668 // if(-0.4<x&&x<-0.2){
9669 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9671 // else if(-0.2<x&&x<-0.1){
9672 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9674 // else if(-0.2<x&&x<-0.1){
9675 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9677 // else if(-0.1<x&&x<0.1){
9678 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9680 // else if(0.1<x&&x<0.2){
9681 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9683 // if(0.2<x&&x<0.4){
9684 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9688 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9689 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9690 x=fhBeautyFDmax->GetBinLowEdge(j);
9691 fhBeautyFDmax->SetBinContent(j,0.03);
9693 // if(-0.4<x&&x<-0.2){
9694 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9696 // else if(-0.2<x&&x<-0.1){
9697 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9699 // else if(-0.2<x&&x<-0.1){
9700 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9702 // else if(-0.1<x&&x<0.1){
9703 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9705 // else if(0.1<x&&x<0.2){
9706 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9708 // if(0.2<x&&x<0.4){
9709 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9718 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DstarHighPtAss1(){
9719 Printf("Setting uncertainties for Dstar pPb 2013, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
9722 fstrptAss="ptAsMore1";
9724 if(!fhDeltaPhiTemplate){
9725 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9728 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9729 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9730 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9731 fhYieldExtraction->SetBinContent(j,0.1);
9734 // Background D MESON candidate subtraction (side-band variations, etc.)
9735 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9736 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9737 fhBackSubtractionMin->SetBinContent(j,-0.05);
9740 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9741 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9742 fhBackSubtractionMax->SetBinContent(j,0.05);
9745 // MC CORRECTIONS -5% +10% for assoc track eff
9746 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9747 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9748 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9751 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9752 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9753 fhMCcorrectionsMax->SetBinContent(j,0.04);
9755 // MC D EFF CORRECTION
9756 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9757 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9758 fhMCDefficiencyMin->SetBinContent(j,-0.08);
9761 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9762 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9763 fhMCDefficiencyMax->SetBinContent(j,0.08);
9767 // Contamination from secondary tracks
9768 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9769 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9770 fhSecContaminationMin->SetBinContent(j,-0.035);
9773 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9774 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9775 fhSecContaminationMax->SetBinContent(j,0.035);
9778 // MC CLOSURETEST (D meson efficiency)
9779 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9780 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9781 x=fhMCclosureTestMin->GetBinLowEdge(j);
9782 fhMCclosureTestMin->SetBinContent(j,-0);
9785 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9787 else if(-0.2<x&&x<-0.1){
9788 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9790 else if(-0.1<x&&x<0.1){
9791 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9793 else if(0.1<x&&x<0.2){
9794 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9797 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9801 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9802 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9803 x=fhMCclosureTestMax->GetBinLowEdge(j);
9804 fhMCclosureTestMax->SetBinContent(j,0.05);
9806 // if(-0.4<x&&x<-0.2){
9807 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9809 // else if(-0.2<x&&x<-0.1){
9810 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9812 // else if(-0.2<x&&x<-0.1){
9813 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9815 // else if(-0.1<x&&x<0.1){
9816 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9818 // else if(0.1<x&&x<0.2){
9819 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9821 // if(0.2<x&&x<0.4){
9822 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9829 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
9830 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
9831 x=fhBeautyFDmin->GetBinLowEdge(j);
9832 fhBeautyFDmin->SetBinContent(j,-0.05);
9834 // if(-0.4<x&&x<-0.2){
9835 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9837 // else if(-0.2<x&&x<-0.1){
9838 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9840 // else if(-0.2<x&&x<-0.1){
9841 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9843 // else if(-0.1<x&&x<0.1){
9844 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
9846 // else if(0.1<x&&x<0.2){
9847 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
9849 // if(0.2<x&&x<0.4){
9850 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
9854 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
9855 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
9856 x=fhBeautyFDmax->GetBinLowEdge(j);
9857 fhBeautyFDmax->SetBinContent(j,0.03);
9859 // if(-0.4<x&&x<-0.2){
9860 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9862 // else if(-0.2<x&&x<-0.1){
9863 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9865 // else if(-0.2<x&&x<-0.1){
9866 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9868 // else if(-0.1<x&&x<0.1){
9869 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
9871 // else if(0.1<x&&x<0.2){
9872 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
9874 // if(0.2<x&&x<0.4){
9875 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
9885 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusLowPtAss1(){
9886 Printf("Setting uncertainties for Dplus pPb 2013, 3<pt(D)<5, pt(assoc)>1 GeV/c ");
9889 fstrptAss="ptAsMore1";
9891 if(!fhDeltaPhiTemplate){
9892 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
9895 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
9896 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
9897 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
9898 fhYieldExtraction->SetBinContent(j,0.1);
9901 // Background D MESON candidate subtraction (side-band variations, etc.)
9902 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
9903 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
9904 fhBackSubtractionMin->SetBinContent(j,-0.1);
9907 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
9908 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
9909 fhBackSubtractionMax->SetBinContent(j,0.1);
9913 // MC CORRECTIONS ( associatate track efficiency):
9914 // -5% +10% for assoc track eff
9915 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
9916 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
9917 fhMCcorrectionsMin->SetBinContent(j,-0.04);
9920 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
9921 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
9922 fhMCcorrectionsMax->SetBinContent(j,0.04);
9925 // MC D EFF CORRECTION
9926 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
9927 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
9928 fhMCDefficiencyMin->SetBinContent(j,-0.1);
9931 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
9932 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
9933 fhMCDefficiencyMax->SetBinContent(j,0.1);
9937 // Contamination from secondary tracks
9938 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
9939 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
9940 fhSecContaminationMin->SetBinContent(j,-0.035);
9943 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
9944 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
9945 fhSecContaminationMax->SetBinContent(j,0.035);
9949 // MC CLOSURETEST (D meson efficiency)
9950 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
9951 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
9952 x=fhMCclosureTestMin->GetBinLowEdge(j);
9953 fhMCclosureTestMin->SetBinContent(j,-0.0);
9956 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9958 else if(-0.2<x&&x<-0.1){
9959 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9961 else if(-0.1<x&&x<0.1){
9962 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
9964 else if(0.1<x&&x<0.2){
9965 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
9968 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
9972 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
9973 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
9974 // x=fhMCclosureTestMax->GetBinLowEdge(j);
9975 fhMCclosureTestMax->SetBinContent(j,0.05);
9977 // if(-0.4<x&&x<-0.2){
9978 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
9980 // else if(-0.2<x&&x<-0.1){
9981 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9983 // else if(-0.2<x&&x<-0.1){
9984 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9986 // else if(-0.1<x&&x<0.1){
9987 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
9989 // else if(0.1<x&&x<0.2){
9990 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
9992 // if(0.2<x&&x<0.4){
9993 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
10000 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
10001 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
10002 x=fhBeautyFDmin->GetBinLowEdge(j);
10003 fhBeautyFDmin->SetBinContent(j,-0.05);
10005 // if(-0.4<x&&x<-0.2){
10006 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10008 // else if(-0.2<x&&x<-0.1){
10009 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10011 // else if(-0.2<x&&x<-0.1){
10012 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10014 // else if(-0.1<x&&x<0.1){
10015 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
10017 // else if(0.1<x&&x<0.2){
10018 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10020 // if(0.2<x&&x<0.4){
10021 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10025 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
10026 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
10027 x=fhBeautyFDmax->GetBinLowEdge(j);
10028 fhBeautyFDmax->SetBinContent(j,0.03);
10030 // if(-0.4<x&&x<-0.2){
10031 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
10033 // else if(-0.2<x&&x<-0.1){
10034 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10036 // else if(-0.2<x&&x<-0.1){
10037 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10039 // else if(-0.1<x&&x<0.1){
10040 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
10042 // else if(0.1<x&&x<0.2){
10043 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10045 // if(0.2<x&&x<0.4){
10046 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
10053 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusMidPtAss1(){
10054 Printf("Setting uncertainties for Dplus pPb 2013, 5<pt(D)<8, pt(assoc)>1 GeV/c ");
10057 fstrptAss="ptAsMore1";
10059 if(!fhDeltaPhiTemplate){
10060 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
10063 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
10064 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
10065 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
10066 fhYieldExtraction->SetBinContent(j,0.1);
10069 // Background D MESON candidate subtraction (side-band variations, etc.)
10070 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
10071 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
10072 fhBackSubtractionMin->SetBinContent(j,-0.1);
10075 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
10076 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
10077 fhBackSubtractionMax->SetBinContent(j,0.1);
10080 // MC CORRECTIONS: -5% +10% for assoc track eff
10081 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
10082 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
10083 fhMCcorrectionsMin->SetBinContent(j,-0.04);
10086 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
10087 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
10088 fhMCcorrectionsMax->SetBinContent(j,0.04);
10092 // MC D EFF CORRECTION
10093 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
10094 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
10095 fhMCDefficiencyMin->SetBinContent(j,-0.1);
10098 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
10099 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
10100 fhMCDefficiencyMax->SetBinContent(j,0.1);
10104 // Contamination from secondary tracks
10105 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
10106 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
10107 fhSecContaminationMin->SetBinContent(j,-0.035);
10110 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
10111 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
10112 fhSecContaminationMax->SetBinContent(j,0.035);
10115 // MC CLOSURETEST (D meson efficiency)
10116 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
10117 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
10118 x=fhMCclosureTestMin->GetBinLowEdge(j);
10119 fhMCclosureTestMin->SetBinContent(j,-0.0);
10121 if(-0.4<x&&x<-0.2){
10122 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
10124 else if(-0.2<x&&x<-0.1){
10125 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
10127 else if(-0.1<x&&x<0.1){
10128 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
10130 else if(0.1<x&&x<0.2){
10131 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
10134 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
10138 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
10139 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
10140 x=fhMCclosureTestMax->GetBinLowEdge(j);
10141 fhMCclosureTestMax->SetBinContent(j,0.05);
10143 // if(-0.4<x&&x<-0.2){
10144 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
10146 // else if(-0.2<x&&x<-0.1){
10147 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10149 // else if(-0.2<x&&x<-0.1){
10150 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10152 // else if(-0.1<x&&x<0.1){
10153 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
10155 // else if(0.1<x&&x<0.2){
10156 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10158 // if(0.2<x&&x<0.4){
10159 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
10166 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
10167 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
10168 x=fhBeautyFDmin->GetBinLowEdge(j);
10169 fhBeautyFDmin->SetBinContent(j,-0.05);
10171 // if(-0.4<x&&x<-0.2){
10172 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10174 // else if(-0.2<x&&x<-0.1){
10175 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10177 // else if(-0.2<x&&x<-0.1){
10178 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10180 // else if(-0.1<x&&x<0.1){
10181 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
10183 // else if(0.1<x&&x<0.2){
10184 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10186 // if(0.2<x&&x<0.4){
10187 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10191 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
10192 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
10193 x=fhBeautyFDmax->GetBinLowEdge(j);
10194 fhBeautyFDmax->SetBinContent(j,0.03);
10196 // if(-0.4<x&&x<-0.2){
10197 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
10199 // else if(-0.2<x&&x<-0.1){
10200 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10202 // else if(-0.2<x&&x<-0.1){
10203 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10205 // else if(-0.1<x&&x<0.1){
10206 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
10208 // else if(0.1<x&&x<0.2){
10209 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10211 // if(0.2<x&&x<0.4){
10212 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
10220 void AliHFDhadronCorrSystUnc::InitStandardUncertaintiesPPb2013DplusHighPtAss1(){
10221 Printf("Setting uncertainties for Dplus pPb 2013, 8<pt(D)<16, pt(assoc)>1 GeV/c ");
10224 fstrptAss="ptAsMore1";
10225 fstrptD="Dpt8to16";
10226 if(!fhDeltaPhiTemplate){
10227 fhDeltaPhiTemplate=new TH1D("fhDeltaPhiTemplate","fhDeltaPhiTemplate",32,-TMath::Pi()/2.,3./2.*TMath::Pi());
10231 // D MESON YIELD EXTRACTION (->NORMALIZATION): relative uncertainty is constant
10232 fhYieldExtraction=(TH1D*)fhDeltaPhiTemplate->Clone("fhYieldExtraction");
10233 for(Int_t j=1;j<=fhYieldExtraction->GetNbinsX();j++){
10234 fhYieldExtraction->SetBinContent(j,0.1);
10237 // Background D MESON candidate subtraction (side-band variations, etc.)
10238 fhBackSubtractionMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMin");
10239 for(Int_t j=1;j<=fhBackSubtractionMin->GetNbinsX();j++){
10240 fhBackSubtractionMin->SetBinContent(j,-0.1);
10243 // Background D MESON candidate subtraction (side-band variations, etc.)
10244 fhBackSubtractionMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBackSubtractionMax");
10245 for(Int_t j=1;j<=fhBackSubtractionMax->GetNbinsX();j++){
10246 fhBackSubtractionMax->SetBinContent(j,0.1);
10249 // MC CORRECTIONS, -5% 10% for assoc track eff
10250 fhMCcorrectionsMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMin");
10251 for(Int_t j=1;j<=fhMCcorrectionsMin->GetNbinsX();j++){
10252 fhMCcorrectionsMin->SetBinContent(j,-0.04);
10255 fhMCcorrectionsMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCcorrectionsMax");
10256 for(Int_t j=1;j<=fhMCcorrectionsMax->GetNbinsX();j++){
10257 fhMCcorrectionsMax->SetBinContent(j,0.04);
10261 // MC D EFF CORRECTION
10262 fhMCDefficiencyMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMin");
10263 for(Int_t j=1;j<=fhMCDefficiencyMin->GetNbinsX();j++){
10264 fhMCDefficiencyMin->SetBinContent(j,-0.1);
10267 fhMCDefficiencyMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCDefficiencyMax");
10268 for(Int_t j=1;j<=fhMCDefficiencyMax->GetNbinsX();j++){
10269 fhMCDefficiencyMax->SetBinContent(j,0.1);
10273 // Contamination from secondary tracks
10274 fhSecContaminationMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMin");
10275 for(Int_t j=1;j<=fhSecContaminationMin->GetNbinsX();j++){
10276 fhSecContaminationMin->SetBinContent(j,-0.035);
10279 fhSecContaminationMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhSecContaminationMax");
10280 for(Int_t j=1;j<=fhSecContaminationMax->GetNbinsX();j++){
10281 fhSecContaminationMax->SetBinContent(j,0.035);
10284 // MC CLOSURETEST (D meson efficiency)
10285 fhMCclosureTestMin=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMin");
10286 for(Int_t j=1;j<=fhMCclosureTestMin->GetNbinsX();j++){
10287 x=fhMCclosureTestMin->GetBinLowEdge(j);
10288 fhMCclosureTestMin->SetBinContent(j,-0.0);
10290 if(-0.4<x&&x<-0.2){
10291 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
10293 else if(-0.2<x&&x<-0.1){
10294 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
10296 else if(-0.1<x&&x<0.1){
10297 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.02);
10299 else if(0.1<x&&x<0.2){
10300 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.015);
10303 fhMCclosureTestMin->SetBinContent(j,fhMCclosureTestMin->GetBinContent(j)-0.01);
10307 fhMCclosureTestMax=(TH1D*)fhDeltaPhiTemplate->Clone("fhMCclosureTestMax");
10308 for(Int_t j=1;j<=fhMCclosureTestMax->GetNbinsX();j++){
10309 x=fhMCclosureTestMax->GetBinLowEdge(j);
10310 fhMCclosureTestMax->SetBinContent(j,0.05);
10312 // if(-0.4<x&&x<-0.2){
10313 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
10315 // else if(-0.2<x&&x<-0.1){
10316 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10318 // else if(-0.2<x&&x<-0.1){
10319 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10321 // else if(-0.1<x&&x<0.1){
10322 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.08);
10324 // else if(0.1<x&&x<0.2){
10325 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.06);
10327 // if(0.2<x&&x<0.4){
10328 // fhMCclosureTestMax->SetBinContent(j,fhMCclosureTestMax->GetBinContent(j)-0.04);
10335 fhBeautyFDmin=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmin");
10336 for(Int_t j=1;j<=fhBeautyFDmin->GetNbinsX();j++){
10337 x=fhBeautyFDmin->GetBinLowEdge(j);
10338 fhBeautyFDmin->SetBinContent(j,-0.05);
10340 // if(-0.4<x&&x<-0.2){
10341 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10343 // else if(-0.2<x&&x<-0.1){
10344 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10346 // else if(-0.2<x&&x<-0.1){
10347 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10349 // else if(-0.1<x&&x<0.1){
10350 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.08);
10352 // else if(0.1<x&&x<0.2){
10353 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.06);
10355 // if(0.2<x&&x<0.4){
10356 // fhBeautyFDmin->SetBinContent(j,fhBeautyFDmin->GetBinContent(j)-0.04);
10360 fhBeautyFDmax=(TH1D*)fhDeltaPhiTemplate->Clone("fhBeautyFDmax");
10361 for(Int_t j=1;j<=fhBeautyFDmax->GetNbinsX();j++){
10362 x=fhBeautyFDmax->GetBinLowEdge(j);
10363 fhBeautyFDmax->SetBinContent(j,0.03);
10365 // if(-0.4<x&&x<-0.2){
10366 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);
10368 // else if(-0.2<x&&x<-0.1){
10369 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10371 // else if(-0.2<x&&x<-0.1){
10372 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10374 // else if(-0.1<x&&x<0.1){
10375 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.08);
10377 // else if(0.1<x&&x<0.2){
10378 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.06);
10380 // if(0.2<x&&x<0.4){
10381 // fhBeautyFDmax->SetBinContent(j,fhBeautyFDmax->GetBinContent(j)+0.04);