]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/Fluctuations/macro/drawMultiplicity.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / EBYE / Fluctuations / macro / drawMultiplicity.C
1 void drawMultiplicity(const char* filename = "AnalysisResults.root") {
2   //Draws the multiplicity for each centrality bin
3   const Int_t nCentralityBins = 20;
4
5   //_______________________________________________________________//
6   //Open the input file
7   TFile *f = TFile::Open(filename);
8   if(!f->IsOpen()) {
9     Printf("File not found!!!");
10     break;
11   }
12
13   //_______________________________________________________________//
14   //Get the TDirectoryFile
15   TDirectoryFile *dir = dynamic_cast<TDirectoryFile *>(f->Get("outputFluctuationAnalysis.root"));
16   if(!dir) {
17     Printf("TDirectoryFile not found!!!");
18     break;
19   }
20
21   //_______________________________________________________________//
22   //Get the TList
23   TList *list = dynamic_cast<TList *>(dir->Get("fluctuationsOutput"));
24   if(!list) {
25     Printf("TList not found!!!");
26     break;
27   }
28   //list->ls();
29
30   TH1F *gHistNMultiplicity[nCentralityBins];
31   TH2F *gHistNPlusNMinus[nCentralityBins];
32   TString histName;
33
34   for(Int_t iBin = 1; iBin <= nCentralityBins; iBin++) {
35     histName = "fHistNPlusNMinusCentrality"; histName += iBin;
36     gHistNPlusNMinus[iBin-1] = dynamic_cast<TH2F *>(list->FindObject(histName.Data()));
37     gHistNPlusNMinus[iBin-1]->SetMarkerColor(iBin);
38
39     histName = "fHistNMultCentrality"; histName += iBin;
40     gHistNMultiplicity[iBin-1] = dynamic_cast<TH1F *>(list->FindObject(histName.Data()));
41     gHistNMultiplicity[iBin-1]->SetMarkerColor(iBin);
42     gHistNMultiplicity[iBin-1]->SetLineColor(iBin);
43     gHistNMultiplicity[iBin-1]->Scale(5000./gHistNMultiplicity[iBin-1]->Integral());
44   }
45
46   //_______________________________________________________________//
47   //Draw the multiplicity distributions
48   TH2F *hEmpty = new TH2F("hEmpty","",200,0,2000,500,0,2000);
49   hEmpty->SetStats(kFALSE);
50   hEmpty->GetXaxis()->SetNdivisions(10);
51   hEmpty->GetYaxis()->SetNdivisions(10);
52   hEmpty->GetXaxis()->SetTitleOffset(1.4);
53   hEmpty->GetYaxis()->SetTitleOffset(1.4);
54
55   TCanvas *c1 = new TCanvas("c1","",0,0,600,500);
56   c1->SetFillColor(10); c1->SetHighLightColor(10);
57   c1->SetLeftMargin(0.15); c1->SetBottomMargin(0.15);
58   hEmpty->GetXaxis()->SetTitle("N_{+}");
59   hEmpty->GetYaxis()->SetTitle("N_{-}");
60   hEmpty->GetXaxis()->SetRangeUser(0,1000);
61   hEmpty->GetYaxis()->SetRangeUser(0,1000);
62   hEmpty->DrawCopy();
63   for(Int_t iBin = 1; iBin <= nCentralityBins; iBin++)
64     gHistNPlusNMinus[iBin-1]->DrawCopy("same");
65
66   TCanvas *c2 = new TCanvas("c2","",600,0,600,500);
67   c2->SetFillColor(10); c2->SetHighLightColor(10);
68   c2->SetLeftMargin(0.15); c2->SetBottomMargin(0.15);
69   hEmpty->GetXaxis()->SetTitle("N_{tracks}");
70   hEmpty->GetYaxis()->SetTitle("Entries");
71   hEmpty->GetYaxis()->SetRangeUser(0,2000);
72   hEmpty->GetXaxis()->SetRangeUser(0,2000);
73   hEmpty->DrawCopy();
74   for(Int_t iBin = 1; iBin <= nCentralityBins; iBin++)
75     gHistNMultiplicity[iBin-1]->DrawCopy("esame");
76 }