ROOT logo
//------------------------------------------------------------------------------
// makeCompNSD.C
//
// create figure with ALICE comparison to CMS and ATLAS
//------------------------------------------------------------------------------



void makeCompNSD()
{

gROOT->LoadMacro("divide.C");
 
TGraphErrors *graphCms = new TGraphErrors(binsCms,ptCms,nsdCms,errPtCms,err2NsdCms);
graphCms->SetMarkerColor(colorCms);
graphCms->SetLineColor(colorCms);
graphCms->SetMarkerStyle(26);
 
TGraphAsymmErrors *graphAtlas = new TGraphAsymmErrors(binsAtlas,ptAtlas,nsdAtlas,lowErrPtAtlas,highErrPtAtlas,err2NsdAtlas,err2NsdAtlas);
graphAtlas->SetMarkerColor(colorAtlas);
graphAtlas->SetLineColor(colorAtlas);
graphAtlas->SetMarkerStyle(25);

TGraphErrors *graphAlice     = new TGraphErrors(binsNsdAlice,ptNsdAlice,nsdAlice,0,err2NsdAlice);
graphAlice->SetMarkerColor(colorAliceFit);
graphAlice->SetLineColor(colorAliceFit);
graphAlice->SetMarkerStyle(20);

TMultiGraph *all = new TMultiGraph("all","");


all->Add(graphAtlas);
all->Add(graphCms);
//all->Add(graphAlice);
all->Add(graphAlice);
//all->Draw("AP");
//setAttrib(all);


TGraphErrors *ratioAtlasAlice = divide(graphAtlas,graphAlice);
ratioAtlasAlice->SetFillColor(colorAtlas);
ratioAtlasAlice->SetLineColor(colorAtlas);
ratioAtlasAlice->SetFillStyle(3354);

TGraphErrors *ratioCmsAlice = divide(graphCms,graphAlice);
ratioCmsAlice->SetFillColor(colorCms);
ratioCmsAlice->SetLineColor(colorCms);
ratioCmsAlice->SetFillStyle(3345);

Double_t one[binsNsdAlice];  
for (Int_t i=0; i < binsNsdAlice; i++) { 
    one[i] = 1.0;
}

TGraphErrors *ratioAliceAlice = new TGraphErrors(binsNsdAlice,ptNsdAlice,one,0,relErr2NsdAlice);
ratioAliceAlice->SetFillColor(colorAliceErrors);
ratioAliceAlice->SetLineColor(20);

TCanvas *can3 = new TCanvas("can3","CompNSD",520,700);

TPad *pad3_1 = new TPad("pad3_1","pad3_1",0.0,0.35,1.0,1.0);
setAttrib(pad3_1);

TPad *pad3_2 = new TPad("pad3_2","pad3_2",0.0,0.0,1.0,0.35);
setAttrib(pad3_2);
//
can3->cd();

pad3_1->Draw();
pad3_1->cd();
pad3_1->SetLogx();
pad3_1->SetLogy();
//all->Draw("AE4");
all->Draw("APZ");
all->GetXaxis()->SetTitle("p_{T} [GeV/c]");
all->GetXaxis()->SetTitleOffset(1.6);
all->GetYaxis()->SetTitleOffset(1.6);
all->GetYaxis()->SetTitle("1/N_{evt} 1/(2#pi p_{T}) (d^{2}N_{ch})/(d#eta dp_{T}) (GeV/c)^{-2}");
all->GetXaxis()->SetLimits(minPt,maxPt);
setAttrib(all);
/*
all->SetTitle("");
all->UseCurrentStyle();
all->GetXaxis()->SetRangeUser(minPt,maxPt);
all->GetXaxis()->SetLabelOffset(0.0);
all->GetXaxis()->SetTitleOffset(1.0);
all->GetYaxis()->SetTitleOffset(1.5);
all->GetYaxis()->SetTitleSize(0.06);
all->GetYaxis()->SetLabelSize(0.06);
all->GetXaxis()->SetNdivisions(405);
all->GetXaxis()->SetLabelSize(0.0);
*/



graphAlice->SetFillColor(2);
TLegend *l3_1 = new TLegend(0.2,0.03,0.65,0.261);
l3_1->SetHeader("pp, NSD, #sqrt{s} = 900 GeV");
l3_1->AddEntry(graphAlice,"ALICE | #eta | < 0.8","LP");
l3_1->AddEntry(graphAtlas,"ATLAS | #eta | < 2.5","LP");
l3_1->AddEntry(graphCms,"CMS | #eta | < 2.4","LP");
//la->AddEntry(graphUA1,"UA1","p");
//la->AddEntry(graphCMS,"CMS","p");
//la->AddEntry(graphCMSred,"CMS, #eta<0.8","p");
//la->AddEntry(graphATLAS,"ATLAS","p");
l3_1->SetTextSize(legendTextSize);
l3_1->SetFillColor(0);
l3_1->SetLineColor(0);
l3_1->Draw();


//histo1->GetXaxis()->SetNdivisions(405);

can3->cd();
pad3_2->Draw();
pad3_2->cd();
pad3_2->SetLogx();

TMultiGraph *ratios = new TMultiGraph("ratios","");


ratios->Add(ratioAliceAlice);
ratios->Add(ratioAtlasAlice);
ratios->Add(ratioCmsAlice);

;
//ratio->SetTitle("ratio ALICE/ATLAS (different #eta)");
ratios->Draw("AE3");
ratios->GetXaxis()->SetLimits(minPt,maxPt);
ratios->GetXaxis()->SetTitle("p_{T} (GeV/c)");
ratios->GetXaxis()->SetTitleOffset(1.4);
ratios->GetYaxis()->SetTitleOffset(0.9);
ratios->GetYaxis()->SetTitle("ratio");
ratios->GetYaxis()->SetLabelSize(0.07);
ratios->GetXaxis()->SetLabelSize(0.07);
ratios->GetXaxis()->SetTitleSize(0.07);
ratios->GetYaxis()->SetTitleSize(0.07);
ratios->GetYaxis()->CenterTitle();
setAttrib(ratios);

ratios->GetYaxis()->SetLabelOffset(0.023);

//ratios->GetYaxis()->SetRangeUser(0.2,1.7);
//ratios->GetYaxis()->SetLimits(0.2,1.7);

/*
ratios->UseCurrentStyle();
ratios->GetXaxis()->SetTitleOffset(1.2);
ratios->GetYaxis()->SetTitleOffset(0.6);
ratios->GetXaxis()->SetTitleSize(0.135);
ratios->GetYaxis()->SetTitleSize(0.135);
ratios->GetXaxis()->SetLabelSize(0.135);
ratios->GetYaxis()->SetLabelSize(0.135);
ratios->GetXaxis()->SetLabelOffset(0.025);
ratios->GetYaxis()->SetLabelOffset(0.06);
ratios->GetXaxis()->SetTickLength(0.09);
ratios->GetYaxis()->SetLabelOffset(0.025);
ratios->GetXaxis()->SetNdivisions(405);
ratios->GetYaxis()->SetNdivisions(402);
ratios->GetXaxis()->SetRangeUser(minPt,maxPt);
*/

graphAlice->SetFillColor(2);
TLegend *l3_2 = new TLegend(0.2,0.323,0.65,0.637);
l3_2->AddEntry(ratioAliceAlice,"ALICE uncertainties","F");
l3_2->AddEntry(ratioAtlasAlice,"ATLAS / ALICE","F");
l3_2->AddEntry(ratioCmsAlice,"CMS / ALICE","F");
l3_2->SetFillColor(0);
l3_2->SetLineColor(0);
l3_2->SetTextSize(legendTextSize);
l3_2->Draw();


//aliceData->Draw("AE4");
TF1 *fOne = new TF1("one","1",0.1,20);
fOne->SetRange(0.1,20);
fOne->SetLineWidth(1);
fOne->Draw("SAME");
//ratio->GetYaxis()->SetTitle("ratio ALICE/ATLAS");
/*
histo1c->Draw();
histo1c->GetXaxis()->SetLabelSize(0.08);
histo1c->GetYaxis()->SetLabelSize(0.08);
histo1c->GetXaxis()->SetNdivisions(405);
histo1c->GetYaxis()->SetNdivisions(405);
*/

ratios->Draw("E3");
fOne->Draw("SAME");
logoPrelim(can3);
}
 makeCompNSD.C:1
 makeCompNSD.C:2
 makeCompNSD.C:3
 makeCompNSD.C:4
 makeCompNSD.C:5
 makeCompNSD.C:6
 makeCompNSD.C:7
 makeCompNSD.C:8
 makeCompNSD.C:9
 makeCompNSD.C:10
 makeCompNSD.C:11
 makeCompNSD.C:12
 makeCompNSD.C:13
 makeCompNSD.C:14
 makeCompNSD.C:15
 makeCompNSD.C:16
 makeCompNSD.C:17
 makeCompNSD.C:18
 makeCompNSD.C:19
 makeCompNSD.C:20
 makeCompNSD.C:21
 makeCompNSD.C:22
 makeCompNSD.C:23
 makeCompNSD.C:24
 makeCompNSD.C:25
 makeCompNSD.C:26
 makeCompNSD.C:27
 makeCompNSD.C:28
 makeCompNSD.C:29
 makeCompNSD.C:30
 makeCompNSD.C:31
 makeCompNSD.C:32
 makeCompNSD.C:33
 makeCompNSD.C:34
 makeCompNSD.C:35
 makeCompNSD.C:36
 makeCompNSD.C:37
 makeCompNSD.C:38
 makeCompNSD.C:39
 makeCompNSD.C:40
 makeCompNSD.C:41
 makeCompNSD.C:42
 makeCompNSD.C:43
 makeCompNSD.C:44
 makeCompNSD.C:45
 makeCompNSD.C:46
 makeCompNSD.C:47
 makeCompNSD.C:48
 makeCompNSD.C:49
 makeCompNSD.C:50
 makeCompNSD.C:51
 makeCompNSD.C:52
 makeCompNSD.C:53
 makeCompNSD.C:54
 makeCompNSD.C:55
 makeCompNSD.C:56
 makeCompNSD.C:57
 makeCompNSD.C:58
 makeCompNSD.C:59
 makeCompNSD.C:60
 makeCompNSD.C:61
 makeCompNSD.C:62
 makeCompNSD.C:63
 makeCompNSD.C:64
 makeCompNSD.C:65
 makeCompNSD.C:66
 makeCompNSD.C:67
 makeCompNSD.C:68
 makeCompNSD.C:69
 makeCompNSD.C:70
 makeCompNSD.C:71
 makeCompNSD.C:72
 makeCompNSD.C:73
 makeCompNSD.C:74
 makeCompNSD.C:75
 makeCompNSD.C:76
 makeCompNSD.C:77
 makeCompNSD.C:78
 makeCompNSD.C:79
 makeCompNSD.C:80
 makeCompNSD.C:81
 makeCompNSD.C:82
 makeCompNSD.C:83
 makeCompNSD.C:84
 makeCompNSD.C:85
 makeCompNSD.C:86
 makeCompNSD.C:87
 makeCompNSD.C:88
 makeCompNSD.C:89
 makeCompNSD.C:90
 makeCompNSD.C:91
 makeCompNSD.C:92
 makeCompNSD.C:93
 makeCompNSD.C:94
 makeCompNSD.C:95
 makeCompNSD.C:96
 makeCompNSD.C:97
 makeCompNSD.C:98
 makeCompNSD.C:99
 makeCompNSD.C:100
 makeCompNSD.C:101
 makeCompNSD.C:102
 makeCompNSD.C:103
 makeCompNSD.C:104
 makeCompNSD.C:105
 makeCompNSD.C:106
 makeCompNSD.C:107
 makeCompNSD.C:108
 makeCompNSD.C:109
 makeCompNSD.C:110
 makeCompNSD.C:111
 makeCompNSD.C:112
 makeCompNSD.C:113
 makeCompNSD.C:114
 makeCompNSD.C:115
 makeCompNSD.C:116
 makeCompNSD.C:117
 makeCompNSD.C:118
 makeCompNSD.C:119
 makeCompNSD.C:120
 makeCompNSD.C:121
 makeCompNSD.C:122
 makeCompNSD.C:123
 makeCompNSD.C:124
 makeCompNSD.C:125
 makeCompNSD.C:126
 makeCompNSD.C:127
 makeCompNSD.C:128
 makeCompNSD.C:129
 makeCompNSD.C:130
 makeCompNSD.C:131
 makeCompNSD.C:132
 makeCompNSD.C:133
 makeCompNSD.C:134
 makeCompNSD.C:135
 makeCompNSD.C:136
 makeCompNSD.C:137
 makeCompNSD.C:138
 makeCompNSD.C:139
 makeCompNSD.C:140
 makeCompNSD.C:141
 makeCompNSD.C:142
 makeCompNSD.C:143
 makeCompNSD.C:144
 makeCompNSD.C:145
 makeCompNSD.C:146
 makeCompNSD.C:147
 makeCompNSD.C:148
 makeCompNSD.C:149
 makeCompNSD.C:150
 makeCompNSD.C:151
 makeCompNSD.C:152
 makeCompNSD.C:153
 makeCompNSD.C:154
 makeCompNSD.C:155
 makeCompNSD.C:156
 makeCompNSD.C:157
 makeCompNSD.C:158
 makeCompNSD.C:159
 makeCompNSD.C:160
 makeCompNSD.C:161
 makeCompNSD.C:162
 makeCompNSD.C:163
 makeCompNSD.C:164
 makeCompNSD.C:165
 makeCompNSD.C:166
 makeCompNSD.C:167
 makeCompNSD.C:168
 makeCompNSD.C:169
 makeCompNSD.C:170
 makeCompNSD.C:171
 makeCompNSD.C:172
 makeCompNSD.C:173
 makeCompNSD.C:174
 makeCompNSD.C:175
 makeCompNSD.C:176
 makeCompNSD.C:177
 makeCompNSD.C:178
 makeCompNSD.C:179
 makeCompNSD.C:180
 makeCompNSD.C:181
 makeCompNSD.C:182
 makeCompNSD.C:183
 makeCompNSD.C:184
 makeCompNSD.C:185
 makeCompNSD.C:186
 makeCompNSD.C:187
 makeCompNSD.C:188
 makeCompNSD.C:189
 makeCompNSD.C:190
 makeCompNSD.C:191
 makeCompNSD.C:192