[1199] | 1 | { |
---|
| 2 | gROOT->Reset(); |
---|
| 3 | #include "Riostream.h" |
---|
| 4 | #include "TSystem.h" |
---|
| 5 | |
---|
| 6 | Char_t buffer[256]; |
---|
| 7 | |
---|
| 8 | const Int_t n = 1100; |
---|
| 9 | |
---|
| 10 | Double_t En[n], Y1[n], Y2[n], diff[n], pres[n]; |
---|
| 11 | |
---|
| 12 | TCanvas *c1 = new TCanvas("c1", "c1",6,6,800,600); |
---|
| 13 | gStyle->SetOptStat(0); |
---|
| 14 | c1->SetLogx(); |
---|
| 15 | c1->SetFillColor(0); |
---|
| 16 | c1->SetBorderMode(0); |
---|
| 17 | c1->SetBorderSize(0); |
---|
| 18 | c1->SetFrameBorderMode(0); |
---|
| 19 | |
---|
| 20 | |
---|
| 21 | ifstream in; |
---|
| 22 | |
---|
| 23 | in.open("DEDX.hIoni.proton.asc_7bins_spl.out"); |
---|
| 24 | // in.open("DEDX.eIoni.e-.asc_spl.out"); |
---|
| 25 | if (!in.good()) break; |
---|
| 26 | |
---|
| 27 | // Ignore first blank line |
---|
| 28 | |
---|
| 29 | in.getline(buffer,256); |
---|
| 30 | |
---|
| 31 | for (Int_t i=0; i<n; i++) { |
---|
| 32 | in >> En[i] >> Y1[i] >> Y2[i] >> diff[i]; |
---|
| 33 | if (!in.good()) break; |
---|
| 34 | pres[i] = (Y1[i]/Y2[i] - 1)*100; |
---|
| 35 | } |
---|
| 36 | |
---|
| 37 | |
---|
| 38 | /* Int_t n = 0; |
---|
| 39 | while(!(in.eof())) { |
---|
| 40 | n++; |
---|
| 41 | in >> En[n] >> Y1[n] >> Y2[n] >> diff[n]; |
---|
| 42 | pres[n] = (Y1[n]/Y2[n] - 1)*100; |
---|
| 43 | } |
---|
| 44 | */ |
---|
| 45 | gr = new TGraph(n,En,pres); |
---|
| 46 | gr->SetTitle("proton in Pb, table 100 pts / 7 pts_spl per order"); |
---|
| 47 | gr->SetMarkerStyle(22); |
---|
| 48 | gr->SetMarkerSize(0.8); |
---|
| 49 | gr->GetYaxis()->SetLabelFont(132); |
---|
| 50 | gr->GetYaxis()->SetLabelSize(0.04); |
---|
| 51 | gr->GetXaxis()->SetLabelFont(132); |
---|
| 52 | gr->GetXaxis()->SetLabelSize(0.04); |
---|
| 53 | gr->GetXaxis()->SetTitle("E, MeV"); |
---|
| 54 | gr->GetYaxis()->SetTitle("dE/dx: (100pts/7pts_spl - 1), %"); |
---|
| 55 | gr->GetXaxis()->SetTitleOffset(1.2); |
---|
| 56 | gr->Draw("AP"); |
---|
| 57 | |
---|
| 58 | // draw the legend |
---|
| 59 | /* TLegend *leg = new TLegend(0.2,0.65,0.61,0.86); |
---|
| 60 | leg->SetTextFont(52); |
---|
| 61 | leg->SetTextSize(0.035); |
---|
| 62 | leg->SetLineColor(1); |
---|
| 63 | leg->SetLineStyle(1); |
---|
| 64 | leg->SetLineWidth(1); |
---|
| 65 | leg->SetFillStyle(0); |
---|
| 66 | leg->SetMargin(0.4); |
---|
| 67 | leg->SetBorderSize(1); |
---|
| 68 | TLegendEntry *entry=leg->AddEntry("NULL","p (110 MeV) in H_{2}O","h"); |
---|
| 69 | |
---|
| 70 | entry->SetTextAlign(22); |
---|
| 71 | entry=leg->AddEntry("NULL","Geant 4.9.1ref01","l"); |
---|
| 72 | entry->SetLineColor(1); |
---|
| 73 | entry->SetLineStyle(1); |
---|
| 74 | entry->SetLineWidth(1); |
---|
| 75 | entry->SetTextAlign(22); |
---|
| 76 | entry->SetTextColor(1); |
---|
| 77 | entry=leg->AddEntry(gr,"exp. data","p"); |
---|
| 78 | leg->Draw(); |
---|
| 79 | */ |
---|
| 80 | c1->Modified(); |
---|
| 81 | c1->cd(); |
---|
| 82 | } |
---|