ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HSCPValidation/scripts/simLevelPlots.C
Revision: 1.1
Committed: Fri Apr 9 17:28:28 2010 UTC (15 years ago) by carrillo
Content type: text/plain
Branch: MAIN
Log Message:
macro to Produce Sim Level Plots

File Contents

# User Rev Content
1 carrillo 1.1 {
2     gROOT->Reset();
3     #include "Riostream.h"
4     #include "TStyle.h"
5    
6     TFile * theFile1 = new TFile("simLevelPlots.root");
7    
8     std::cout<<"Reading histos for ECAL"<<std::endl;
9    
10     TH1F * simHitsEcalEnergyHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyOfSimHitsEB"));
11     TH1F * simHitsEcalEnergyHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyOfSimHitsEE"));
12     TH1F * simHitsEcalTimeHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalTimingOfSimHitsEB"));
13     TH1F * simHitsEcalTimeHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalTimingOfSimHitsEE"));
14     TH1F * simHitsEcalNumHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalNumberOfSimHitsEB"));
15     TH1F * simHitsEcalNumHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalNumberOfSimHitsEE"));
16     TH2F * simHitsEcalEnergyVsTimeHistEB_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyVsTimeOfSimHitsEB"));
17     TH2F * simHitsEcalEnergyVsTimeHistEE_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyVsTimeOfSimHitsEE"));
18     TH1F * simHitsEcalDigiMatchEnergyHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyOfDigiMatSimHitsEB"));
19     TH1F * simHitsEcalDigiMatchEnergyHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyOfDigiMatSimHitsEE"));
20     TH1F * simHitsEcalDigiMatchTimeHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalTimingOfDigiMatSimHitsEB"));
21     TH1F * simHitsEcalDigiMatchTimeHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalTimingOfDigiMatSimHitsEE"));
22     TH2F * simHitsEcalDigiMatchEnergyVsTimeHistEB_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyVsTimeOfDigiMatSimHitsEB"));
23     TH2F * simHitsEcalDigiMatchEnergyVsTimeHistEE_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalEnergyVsTimeOfDigiMatSimHitsEE"));
24     TH1F * simHitsEcalDigiMatchIEtaHist_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalIEtaOfDigiMatchSimHits"));
25     TH1F * simHitsEcalDigiMatchIPhiHist_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalIPhiOfDigiMatchSimHits"));
26     TH1F * digisEcalNumHistEB_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalDigisNumberEB"));
27     TH1F * digisEcalNumHistEE_ = (TH1F*) (theFile1->Get("hscpSimPlotsEcal/ecalDigisNumberEE"));
28     TH2F * digiOccupancyMapEB_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalDigiOccupancyMapEB"));
29     TH2F * digiOccupancyMapEEP_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalDigiOccupancyMapEEM"));
30     TH2F * digiOccupancyMapEEM_ = (TH2F*) (theFile1->Get("hscpSimPlotsEcal/ecalDigiOccupancyMapEEP"));
31    
32     std::string command = "mkdir sim";
33     system(command.c_str());
34     std::string command = "mkdir digi";
35     system(command.c_str());
36    
37    
38     TStyle* thisStyle = new TStyle("myStyle", "NewStyle");
39     thisStyle->SetOptStat(2222211);
40     thisStyle->SetPalette(1);
41     thisStyle->cd();
42    
43     system(command.c_str());
44    
45     TCanvas t;
46     t.cd();
47    
48     simHitsEcalEnergyHistEB_->Draw();
49     t.Print("sim/simHitsEnergyEB.png");
50     simHitsEcalEnergyHistEE_->Draw();
51     t.Print("sim/simHitsEnergyEE.png");
52     simHitsEcalTimeHistEB_->Draw();
53     t.Print("sim/simHitsTimeEB.png");
54     simHitsEcalTimeHistEE_->Draw();
55     t.Print("sim/simHitsTimeEE.png");
56     simHitsEcalNumHistEB_->Draw();
57     t.Print("sim/simHitsNumberEB.png");
58     simHitsEcalNumHistEE_->Draw();
59     t.Print("sim/simHitsNumberEE.png");
60     simHitsEcalEnergyVsTimeHistEB_->Draw("colz");
61     t.Print("sim/simHitsEnergyVsTimeEB.png");
62     simHitsEcalEnergyVsTimeHistEE_->Draw("colz");
63     t.Print("sim/simHitsEnergyVsTimeEE.png");
64    
65     simHitsEcalDigiMatchEnergyHistEB_->Draw();
66     t.Print("sim/digiMatchedSimHitsEnergyEB.png");
67     simHitsEcalDigiMatchEnergyHistEE_->Draw();
68     t.Print("sim/digiMatchedSimHitsEnergyEE.png");
69     simHitsEcalDigiMatchTimeHistEB_->Draw();
70     t.Print("sim/digiMatchedSimHitsTimeEB.png");
71     simHitsEcalDigiMatchTimeHistEE_->Draw();
72     t.Print("sim/digiMatchedSimHitsTimeEE.png");
73     simHitsEcalDigiMatchEnergyVsTimeHistEB_->Draw("colz");
74     t.Print("sim/digiMatchedSimHitsEnergyVsTimeEB.png");
75     simHitsEcalDigiMatchEnergyVsTimeHistEE_->Draw("colz");
76     t.Print("sim/digiMatchedSimHitsEnergyVsTimeEE.png");
77    
78     simHitsEcalDigiMatchIEtaHist_->Draw();
79     t.Print("sim/digiMatchedSimHitsIeta.png");
80     simHitsEcalDigiMatchIPhiHist_->Draw();
81     t.Print("sim/digiMatchedSimHitsIphi.png");
82    
83     digisEcalNumHistEB_->Draw();
84     t.Print("sim/numDigisEB.png");
85     digisEcalNumHistEE_->Draw();
86     t.Print("sim/numDigisEE.png");
87    
88     thisStyle->SetOptStat(11);
89     thisStyle->cd();
90    
91     digiOccupancyMapEB_->Draw("colz");
92     t.Print("digi/digiOccupancyEB.png");
93     digiOccupancyMapEEP_->Draw("colz");
94     t.Print("digi/digiOccupancyEEP.png");
95     digiOccupancyMapEEM_->Draw("colz");
96     t.Print("digi/digiOccupancyEEM.png");
97    
98    
99    
100     //The RPC Part
101    
102    
103     TH1F* residualsRPCRecHitSimDigis_;
104     TH1F* efficiencyRPCRecHitSimDigis_;
105     TH1F* cluSizeDistribution_;
106     TH1F* rpcTimeOfFlightBarrel_[6];
107     TH1F* rpcBXBarrel_[6];
108     TH1F* rpcTimeOfFlightEndCap_[3];
109     TH1F* rpcBXEndCap_[3];
110    
111    
112    
113     residualsRPCRecHitSimDigis_ = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/residualsRPCRecHitSimDigis"));
114     efficiencyRPCRecHitSimDigis_= (TH1F*) (theFile1->Get("hscpSimPlotsRPC/efficiencyRPCRecHitSimDigis"));
115     cluSizeDistribution_ = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCCluSizeDistro"));
116     rpcTimeOfFlightBarrel_[0] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer1"));
117     rpcTimeOfFlightBarrel_[1] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer2"));
118     rpcTimeOfFlightBarrel_[2] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer3"));
119     rpcTimeOfFlightBarrel_[3] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer4"));
120     rpcTimeOfFlightBarrel_[4] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer5"));
121     rpcTimeOfFlightBarrel_[5] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFLayer6"));
122     rpcBXBarrel_[0] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer1"));
123     rpcBXBarrel_[1] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer2"));
124     rpcBXBarrel_[2] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer3"));
125     rpcBXBarrel_[3] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer4"));
126     rpcBXBarrel_[4] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer5"));
127     rpcBXBarrel_[5] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXLayer6"));
128     rpcTimeOfFlightEndCap_[0] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFDisk1"));
129     rpcTimeOfFlightEndCap_[1] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFDisk2"));
130     rpcTimeOfFlightEndCap_[2] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCToFDisk3"));
131     rpcBXEndCap_[0] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXDisk1"));
132     rpcBXEndCap_[1] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXDisk2"));
133     rpcBXEndCap_[2] = (TH1F*) (theFile1->Get("hscpSimPlotsRPC/RPCBXDisk3"));
134    
135     residualsRPCRecHitSimDigis_->Draw();
136     t.Print("digi/rpcresiduals.png");
137    
138     efficiencyRPCRecHitSimDigis_->Draw();
139     t.Print("digi/rpcefficiency.png");
140    
141     cluSizeDistribution_->Draw();
142     t.Print("digi/cluRPCSize.png");
143    
144     TLegend *leg = new TLegend(0.6,0.85,0.9,0.3);
145     rpcTimeOfFlightBarrel_[0]->SetFillColor(1);
146     rpcTimeOfFlightBarrel_[0]->Draw();
147     rpcTimeOfFlightBarrel_[0]->GetXaxis()->SetTitle("ToF (ns)");
148     std::stringstream legend;
149     legend.str("");
150     legend<<"ToF Layer 1 Mean "<<rpcTimeOfFlightBarrel_[0]->GetMean()<<"ns";
151     leg->AddEntry(rpcTimeOfFlightBarrel_[0],legend.str().c_str(),"f");
152     for(int i=1; i<6;i++){
153     rpcTimeOfFlightBarrel_[i]->SetFillColor(i+1);
154     legend.str("");
155     legend<<"ToF Layer "<<i+1<<" Mean "<<rpcTimeOfFlightBarrel_[i]->GetMean()<<"ns";
156     leg->AddEntry(rpcTimeOfFlightBarrel_[i],legend.str().c_str(),"f");
157     rpcTimeOfFlightBarrel_[i]->Draw("same");
158     }
159     leg->Draw("same");
160     gStyle->SetOptStat(0);
161     gStyle->SetOptTitle(0);
162     t.Print("sim/RPCBToF.png");
163    
164     leg->Clear();
165    
166     rpcTimeOfFlightEndCap_[2]->Draw();
167     rpcTimeOfFlightEndCap_[2]->SetFillColor(3);
168     rpcTimeOfFlightEndCap_[2]->GetXaxis()->SetTitle("ToF (ns)");
169    
170     legend.str("");
171     legend<<"ToF Disk 3 Mean "<<rpcTimeOfFlightEndCap_[2]->GetMean()<<"ns";
172     leg->AddEntry(rpcTimeOfFlightEndCap_[2],legend.str().c_str(),"f");
173     for(int i=1;i>=0;i--){
174     rpcTimeOfFlightEndCap_[i]->SetFillColor(i+1);
175     legend.str("");
176     legend<<"ToF Disk "<<i+1<<" Mean "<<rpcTimeOfFlightEndCap_[i]->GetMean()<<"ns";
177     leg->AddEntry(rpcTimeOfFlightEndCap_[i],legend.str().c_str(),"f");
178     rpcTimeOfFlightEndCap_[i]->Draw("same");
179     rpcTimeOfFlightEndCap_[i]->GetYaxis()->UnZoom();
180     }
181    
182     leg->Draw("same");
183     gStyle->SetOptStat(0);
184     gStyle->SetOptTitle(0);
185     t.Print("sim/RPCEToF.png");
186    
187     leg->Clear();
188    
189     rpcBXBarrel_[0]->SetLineColor(1);
190     rpcBXBarrel_[0]->Draw();
191     rpcBXBarrel_[0]->GetXaxis()->SetTitle("BX Units(25ns)");
192     rpcBXBarrel_[0]->SetLineWidth(3);
193    
194     legend.str("");
195     legend<<"BX Layer 1 Mean "<<rpcBXBarrel_[0]->GetMean();
196     leg->AddEntry(rpcBXBarrel_[0],legend.str().c_str(),"l");
197    
198     for(int i=1; i<6;i++){
199     rpcBXBarrel_[i]->SetLineColor(i+1);
200     legend.str("");
201     legend<<"BX Layer "<<i+1<<" Mean "<<rpcBXBarrel_[i]->GetMean();
202     leg->AddEntry(rpcBXBarrel_[i],legend.str().c_str(),"l");
203     rpcBXBarrel_[i]->SetLineWidth(3);
204     rpcBXBarrel_[i]->Draw("same");
205     }
206    
207     leg->Draw("same");
208     gStyle->SetOptStat(0);
209     gStyle->SetOptTitle(0);
210    
211     t.Print("digi/RPCBBX.png");
212    
213     leg->Clear();
214    
215     rpcBXEndCap_[0]->SetLineColor(1);
216     rpcBXEndCap_[0]->Draw();
217     rpcBXEndCap_[0]->GetXaxis()->SetTitle("BX Units(25ns)");
218     rpcBXEndCap_[0]->SetLineWidth(3);
219    
220     legend.str("");
221     legend<<"BX Disk 1 Mean "<<rpcBXEndCap_[0]->GetMean();
222     leg->AddEntry(rpcBXEndCap_[0],legend.str().c_str(),"l");
223    
224     for(int i=1; i<3;i++){
225     rpcBXEndCap_[i]->SetLineColor(i+1);
226     legend.str("");
227     legend<<"BX Disk "<<i+1<<" Mean "<<rpcBXEndCap_[i]->GetMean();
228     leg->AddEntry(rpcBXEndCap_[i],legend.str().c_str(),"l");
229     rpcBXEndCap_[i]->SetLineWidth(3);
230     rpcBXEndCap_[i]->Draw("same");
231     }
232    
233     leg->Draw("same");
234     gStyle->SetOptStat(0);
235     gStyle->SetOptTitle(0);
236    
237     t.Print("digi/RPCEBX.png");
238    
239    
240     }
241    
242    
243    
244    
245    
246    
247    
248    
249