FairRoot/PandaRoot
photosPlots.C
Go to the documentation of this file.
1 #include <string>
2 
3 void photosPlots(std::string fileName = "Upsilon4S_PHOTOS.root") {
4 
5  TFile* theFile = new TFile(fileName.c_str(), "read");
6  TTree* theTree = dynamic_cast<TTree*>(theFile->Get("Data"));
7  TTree* nDaugTree = dynamic_cast<TTree*>(theFile->Get("nDaugTree"));
8 
9  TH1F* eMtmHist = new TH1F("eMtmHist", "", 100, 0.0, 5.5);
10  eMtmHist->SetXTitle("e^{-} momentum (GeV/c)");
11  eMtmHist->SetYTitle("Frequency/55 (MeV/c)");
12  eMtmHist->SetTitleOffset(1.25, "Y");
13 
14  TH1F* pMtmHist = new TH1F("pMtmHist", "", 100, 0.0, 5.5);
15  pMtmHist->SetXTitle("e^{+} momentum (GeV/c)");
16  pMtmHist->SetYTitle("Frequency/55 (MeV/c)");
17  pMtmHist->SetTitleOffset(1.25, "Y");
18 
19  TH1F* gMtmHist = new TH1F("gMtmHist", "", 100, 0.0, 5.5);
20  gMtmHist->SetXTitle("#gamma momentum (GeV/c)");
21  gMtmHist->SetYTitle("Frequency/55 (MeV/c)");
22  gMtmHist->SetTitleOffset(1.25, "Y");
23 
24  TH1F* nDaugHist = new TH1F("nDaugHist", "", 10, 0, 10);
25  nDaugHist->SetXTitle("Number of daughters");
26  nDaugHist->SetYTitle("Frequency");
27  nDaugHist->SetTitleOffset(1.25, "Y");
28 
29  theTree->Draw("p>>eMtmHist", "id==11");
30  theTree->Draw("p>>pMtmHist", "id==-11");
31  theTree->Draw("p>>gMtmHist", "id==22");
32  nDaugTree->Draw("nDaug>>nDaugHist");
33 
34  gROOT->SetStyle("Plain");
35  gStyle->SetOptStat(0);
36  TCanvas* theCanvas = new TCanvas("theCanvas", "", 900, 700);
37  theCanvas->UseCurrentStyle();
38 
39  theCanvas->Divide(2,2);
40 
41  theCanvas->cd(1);
42  gPad->SetLogy();
43  double scale = 1.0/eMtmHist->Integral(); // same normalisation number for all plots
44 
45  eMtmHist->Scale(scale);
46  eMtmHist->SetMaximum(1.0);
47  eMtmHist->Draw();
48 
49  theCanvas->cd(2);
50  gPad->SetLogy();
51  pMtmHist->Scale(scale);
52  pMtmHist->SetMaximum(1.0);
53  pMtmHist->Draw();
54 
55  theCanvas->cd(3);
56  gPad->SetLogy();
57  gMtmHist->Scale(scale);
58  gMtmHist->SetMaximum(1.0);
59  gMtmHist->Draw();
60 
61  theCanvas->cd(4);
62  gPad->SetLogy(0);
63  nDaugHist->Scale(scale);
64  nDaugHist->SetMaximum(0.5);
65  nDaugHist->Draw();
66 
67  theCanvas->cd(1);
68  TLatex latex;
69  latex.SetNDC();
70  latex.SetTextSize(0.05);
71  latex.DrawLatex(0.1, 0.95, "#Upsilon(4S) #rightarrow e^{-} e^{+} decay with PHOTOS 3.0");
72 
73  theCanvas->Print("photosPlots.gif");
74 
75 }
void photosPlots(std::string fileName="Upsilon4S_PHOTOS.root")
Definition: photosPlots.C:3