ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
egs4.C
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file egs4.C
1 {
2  gROOT->Reset();
3 
4  // Draw histogram filled by Geant4 TestEm2 simulation
5  TFile f("./93ref0.root");
6  TH1D* h1d = (TH1D*) f.Get("4");
7  h1d->SetTitle("30 GeV e- on 20 X0 Fe : energy dep, longit profil");
8  h1d->GetXaxis()->SetTitle("depth (X0)");
9  h1d->GetYaxis()->SetTitle("(100/E0) (dE/dt)");
10  h1d->SetStats(kFALSE); // Eliminate statistics box
11  h1d->Draw("HIST");
12 
13  // pdg.ascii came from egs4 simulation
14  ifstream in;
15  in.open("pdg.ascii");
16 
17  // Create a new histogramm which egs4.acsii values
18  int nb_bins = 40;
19  float x_min = 0;
20  float x_max = 20;
21  TH1F* h1f = new TH1F("h1f","",nb_bins,x_min,x_max);
22 
24  while (1) {
25  in >> x >> y ;
26  if (!in.good()) break;
27  h1f->Fill(x,y);
28  }
29  in.close();
30 
31  // Draw histogram fill by egs4.acsii values
32  h1f->SetLineColor(2);
33  h1f->Draw("SAME");
34 
35  // Print the histograms legend
36  TLegend *legend = new TLegend(0.65,0.55,0.85,0.68);
37  legend->AddEntry(h1d,"93ref0","l");
38  legend->AddEntry(h1f,"EGS4","L");
39  legend->Draw();
40 }