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

# Content
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