Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/extended/medical/dna/icsd/plot.C

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /examples/extended/medical/dna/icsd/plot.C (Version 11.3.0) and /examples/extended/medical/dna/icsd/plot.C (Version 10.7.p1)


  1 // *******************************************      1 // *********************************************************************
  2 // To execute this macro under ROOT,                2 // To execute this macro under ROOT,
  3 //   1 - launch ROOT (usually type 'root' at y      3 //   1 - launch ROOT (usually type 'root' at your machine's prompt)
  4 //   2 - type '.X plot.C' at the ROOT session       4 //   2 - type '.X plot.C' at the ROOT session prompt
  5 // This macro needs the output ROOT file            5 // This macro needs the output ROOT file
  6 // *******************************************      6 // *********************************************************************
  7                                                     7 
  8 void SetLeafAddress(TNtuple* ntuple, const cha      8 void SetLeafAddress(TNtuple* ntuple, const char* name, void* address);
  9                                                     9 
 10 void plot()                                        10 void plot()
 11 {                                                  11 {
 12   gROOT->Reset();                                  12   gROOT->Reset();
 13   gStyle->SetPalette(1);                           13   gStyle->SetPalette(1);
 14   gROOT->SetStyle("Plain");                        14   gROOT->SetStyle("Plain");
 15                                                    15   
 16   TCanvas* c1 = new TCanvas ("c1","",20,20,100     16   TCanvas* c1 = new TCanvas ("c1","",20,20,1000,500);
 17                                                    17   
 18   TFile* f = new TFile("ICSD.root");               18   TFile* f = new TFile("ICSD.root");
 19   f->ls();                                         19   f->ls();
 20                                                    20   
 21   TH1D* hist1 = new TH1D("histo","ICSD", 30, 0     21   TH1D* hist1 = new TH1D("histo","ICSD", 30, 0.0, 30);
 22                                                    22 
 23   Double_t ion = 0.0;                              23   Double_t ion = 0.0;
 24                                                    24 
 25   TNtuple* ntuple1 = (TNtuple*)f->Get("ntuple_     25   TNtuple* ntuple1 = (TNtuple*)f->Get("ntuple_1");
 26   bool rowWise = true;                             26   bool rowWise = true;
 27   TBranch* eventBranch = ntuple1->FindBranch("     27   TBranch* eventBranch = ntuple1->FindBranch("row_wise_branch");
 28   if ( ! eventBranch ) rowWise = false;            28   if ( ! eventBranch ) rowWise = false;
 29   std::cout <<  "rowWise: " << rowWise << std:     29   std::cout <<  "rowWise: " << rowWise << std::endl; 
 30                                                    30 
 31   if ( ! rowWise ) {                               31   if ( ! rowWise ) {
 32     ntuple1->SetBranchAddress("ionisations", &     32     ntuple1->SetBranchAddress("ionisations", &ion);
 33   } else {                                         33   } else {
 34     SetLeafAddress(ntuple1, "ionisations",&ion     34     SetLeafAddress(ntuple1, "ionisations",&ion);
 35   }                                                35   }
 36                                                    36 
 37   Int_t nentries = ntuple1->GetEntries();          37   Int_t nentries = ntuple1->GetEntries();
 38                                                    38 
 39   for (Int_t i=0; i<nentries; i++)                 39   for (Int_t i=0; i<nentries; i++)
 40   {                                                40   {
 41       ntuple1->GetEntry(i);                        41       ntuple1->GetEntry(i);
 42       hist1->Fill(ion);                            42       hist1->Fill(ion);
 43   }                                                43   }
 44                                                    44 
 45   hist1->Draw();                                   45   hist1->Draw();
 46   hist1->GetXaxis()->SetLabelSize(0.025);          46   hist1->GetXaxis()->SetLabelSize(0.025);
 47   hist1->GetYaxis()->SetLabelSize(0.025);          47   hist1->GetYaxis()->SetLabelSize(0.025);
 48                                                    48 
 49   hist1->GetXaxis()->SetTitleSize(0.035);          49   hist1->GetXaxis()->SetTitleSize(0.035);
 50   hist1->GetYaxis()->SetTitleSize(0.035);          50   hist1->GetYaxis()->SetTitleSize(0.035);
 51                                                    51 
 52 //  hist1->GetXaxis()->SetTittleOffset(1.4);       52 //  hist1->GetXaxis()->SetTittleOffset(1.4);
 53 //  hist1->GetYaxis()->SetTittleOffset(1.4);       53 //  hist1->GetYaxis()->SetTittleOffset(1.4);
 54                                                    54 
 55   hist1->GetXaxis()->SetTitle("ionisation numb     55   hist1->GetXaxis()->SetTitle("ionisation number");
 56   hist1->GetYaxis()->SetTitle("frequency");        56   hist1->GetYaxis()->SetTitle("frequency");
 57                                                    57 
 58   c1->SaveAs("ICSD.tiff");                         58   c1->SaveAs("ICSD.tiff");
 59 }                                                  59 }
 60                                                    60 
 61 void SetLeafAddress(TNtuple* ntuple, const cha     61 void SetLeafAddress(TNtuple* ntuple, const char* name, void* address) {
 62   TLeaf* leaf = ntuple->FindLeaf(name);            62   TLeaf* leaf = ntuple->FindLeaf(name);
 63   if ( ! leaf ) {                                  63   if ( ! leaf ) {
 64     std::cerr << "Error in <SetLeafAddress>: u     64     std::cerr << "Error in <SetLeafAddress>: unknown leaf --> " << name << std::endl;
 65     return;                                        65     return;
 66   }                                                66   }
 67   leaf->SetAddress(address);                       67   leaf->SetAddress(address);
 68 }                                                  68 }
 69                                                    69