2 // macro for analysing output of AliAnalysisTaskHardSoft
4 void plotSignalBackground(){
6 gROOT->SetStyle("Plain");
10 Float_t piHalf = TMath::Pi()/2.;
12 TFile *file0 = TFile::Open(Form("Clean.root"));
13 TList *l1 = (TList *)file0->Get("HardSoftHists");
16 //histograms with entries how often a trigger particle
17 //is found at given Nch
18 TH1F *trigger = (TH1F*)l1->FindObject("fTriggerESD");
19 TCanvas * c0= new TCanvas("c0", "c0", 100, 100, 620, 480);
22 // for(Int_t i=0;i<100;i++){
23 // cout << i << " : "<< trigger->GetBinContent(i+1) << endl;
27 //delta phi histograms for each Nch bin
29 TF1 *f[100]; // fit function for background region around pi/2
30 Float_t fAtPiHalf[100]; // value f(pi/2)
32 for(Int_t i=0;i<100;i++){
33 dp[i]= (TH1D*)l1->FindObject(Form("fDPhiLeadingNchBinESD%02d",i));
34 //normalize to number of triggers
35 if(dp[i]->GetEntries()>0)dp[i]->Scale(1./trigger->GetBinContent(i+1));
38 f[i]= new TF1(Form("fun%2d",i), "pol2", TMath::Pi()/2-1, TMath::Pi()/2+1);
39 f[i]->SetLineColor(kRed);
44 TGraphErrors *tge = new TGraphErrors(); // of side band = background
45 tge->SetMarkerStyle(4);
46 tge->SetMarkerColor(kRed);
47 tge->SetLineColor(kRed);
49 TGraphErrors *tgeSignal = new TGraphErrors(); //integral of dphi<0.7
50 tgeSignal->SetMarkerStyle(4);
51 tgeSignal->SetMarkerColor(kBlue);
52 tgeSignal->SetLineColor(kBlue);
54 TGraphErrors *tgeSignalWOB = new TGraphErrors();//integral of dphi<0.7
56 tgeSignalWOB->SetMarkerStyle(4);
57 tgeSignalWOB->SetMarkerColor(kGreen);
58 tgeSignalWOB->SetLineColor(kGreen);
62 TCanvas * c= new TCanvas("c", "c", 150, 150, 820, 620);
64 for(Int_t i=0;i<49;i++){
66 if(dp[i]->GetEntries()>0) {
71 // get value of fit function at pi/2 -> side band
72 fAtPiHalf[i]=f[i]->Eval(piHalf,0,0);
74 Double_t integral07=dp[i]->Integral(1,40);// bin 40 -> dphi=07
79 Float_t DeltaPhiBinWith = TMath::Pi()/180.;
80 Float_t bkgSampleSize = DeltaPhiBinWith*1.8;
81 Float_t halfCircle = TMath::Pi()*(radius)*(radius)/2;
82 Float_t akzeptanz =0.8;
83 Float_t ratio= akzeptanz*halfCircle/bkgSampleSize;
86 tge->SetPoint(i,i,fAtPiHalf[i] ); //side band
87 tgeSignal->SetPoint(i,i, integral07); // integral
88 tgeSignalWOB->SetPoint(i,i, integral07-fAtPiHalf[i]*40);//integral - bkg
101 fun1p= new TF1("fun1p","gaus",-5.0,5.0);
102 fun2p= new TF1("fun2p","gaus",-5.0,5.0);
103 fun3p= new TF1("fun3p","gaus",-5.0,5.0);
104 fun4p= new TF1("fun4p","gaus",-5.0,5.0);
105 fun5p= new TF1("fun5p","gaus",-5.0,5.0);
106 fun1p->SetMarkerColor(kBlue);
107 fun1p->SetMarkerStyle(4);
108 fun2p->SetMarkerColor(kGreen);
109 fun2p->SetMarkerStyle(4);
110 fun3p->SetMarkerColor(kMagenta);
111 fun3p->SetMarkerStyle(4);
112 fun4p->SetMarkerColor(kRed);
113 fun4p->SetMarkerStyle(4);
114 legp= new TLegend(0.1,0.7,0.75,0.9);
115 legp->SetFillColor(kWhite);
116 legp->AddEntry(fun1p,"integral dphi<0.7","p");
117 legp->AddEntry(fun4p,"background in side band","p");
118 legp->AddEntry(fun2p,"integral dphi<0.7 - background","p");
119 legp->AddEntry(fun5p,"Ntracks around trigger in R<0.7","l");
120 legp->AddEntry(fun3p,"Ntracks around trigger in R<0.7 - background","p");
123 //define histogram with name of axes
124 TCanvas * c1= new TCanvas("c1", "c1", 200, 200, 620, 480);
126 TH1F * histo = new TH1F("histo", "",100,-0.5,99.5 );
127 histo->SetMaximum(10);
128 histo->SetMinimum(0.01);
129 histo->GetXaxis()->SetRangeUser(0,50);
130 histo->SetXTitle("N_{charge}");
132 histo->SetYTitle("");
137 tgeSignal->Draw("p");
139 tgeSignalWOB->Draw("p");
142 //number of associate particles within R<0.7 around trigger
143 TProfile *pSignal= (TProfile*)l1->FindObject("fNchAssInRESD");
144 pSignal->Draw("same");
146 TGraphErrors *t = new TGraphErrors();
147 t->SetMarkerStyle(4);
148 t->SetMarkerColor(kMagenta);
149 t->SetLineColor(kMagenta);
151 for(Int_t i=0;i<49;i++){
152 t->SetPoint(i,i,pSignal->GetBinContent(i+1)-fAtPiHalf[i]*ratio);
157 // TCanvas * c5= new TCanvas("c5", "c5", 300, 300, 620, 480);
161 // TCanvas * c6= new TCanvas("c6", "c6", 400, 400, 620, 480);