berger.C
Go to the documentation of this file.
1 {
2  gROOT->Reset();
3 
4  // Draw histograms fill by Geant4 TestEm5 simulation
5  TFile f1("./msc93.root");
6  TH1D* h1 = (TH1D*) f1.Get("1");
7  h1->SetTitle("Energy deposited in 530 um of Si by 1 MeV e-");
8  h1->GetXaxis()->SetTitle("Ekine (MeV)");
9  h1->GetYaxis()->SetTitle("nb / MeV");
10  h1->SetStats(kFALSE); // Eliminate statistics box
11  h1->SetLineColor(1); // black
12  h1->Draw("HIST");
13 
14  TFile f2("./local.root");
15  TH1D* h2 = (TH1D*) f2.Get("1");
16  h2->SetStats(kFALSE); // Eliminate statistics box
17  h2->SetLineColor(4); // blue
18  h2->Draw("SAME HIST");
19 /*
20 * e- 1 MeV in Silicon 530 um
21 * M.J. Berger et al. NIM 69 (p.181) 1969
22 * distribution of energy deposition
23 * (from 110 keV to 1.03 MeV by bin of 10 keV --> 93 bins)
24 */
25 
26  ifstream in;
27  in.open("530um.ascii");
28 
29  // First indicate number of data
30  int nbdata = 0;
31  in >> nbdata;
32 
33  // Create a new histogram with data.acsii values
34  float x_min = 0.110;
35  float x_max = 1.030;
36  TH1F* h3 = new TH1F("h1f","",nbdata,x_min,x_max);
37 
38  Float_t x, y;
39  while (1) {
40  in >> x >> y ;
41  if (!in.good()) break;
42  h3->Fill(x,y);
43  }
44  in.close();
45 
46  // Draw histogram fill by data.acsii values
47  h3->SetLineColor(2); // red
48  h3->Draw("SAME");
49 
50  // Print the histograms legend
51  TLegend *legend = new TLegend(0.6,0.6,0.8,0.8);
52  legend->AddEntry(h1,"Urban93","l");
53  legend->AddEntry(h2,"Urban95","l");
54  legend->AddEntry(h3,"Berger data","L");
55  legend->Draw();
56 
57 
58 }
TLegend * legend
Definition: berger.C:57
TFile f1("./100keV_local.root")
TH1F * h3
Definition: berger.C:36
Double_t x
Definition: berger.C:23
TH1D * h2
Definition: berger.C:15
ifstream in
Definition: berger.C:1
TFile f2("./local.root")
double x_min
Definition: berger.C:15
double x_max
Definition: berger.C:16
TH1D * h1
Definition: berger.C:42
Double_t y
Definition: berger.C:23
int nbdata
Definition: berger.C:18