ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/SchieferD/jetcalib/mcresponse_x.cpp
(Generate patch)

Comparing UserCode/SchieferD/jetcalib/mcresponse_x.cpp (file contents):
Revision 1.4 by schiefer, Thu Aug 30 09:01:17 2007 UTC vs.
Revision 1.5 by schiefer, Fri Aug 31 12:03:49 2007 UTC

# Line 50 | Line 50 | void     replaceHistos(int nbins1,int nb
50                         TH1F****&hVar,TH1F****&hEtCorr,
51                         TH1F****&hAbsRsp,TH1F****&hRelRsp,
52                         TTree****& tVar);
53 < void     fitHistos    (TH1F**   histos,int n,double nsigma);
54 < void     fitHistos    (TH1F***  histos,int n1,int n2,double nsigma);
55 < void     fitHistos    (TH1F**** histos,int n1,int n2,int n3,double nsigma);
56 < void     saveHistos   (TH1F**   histos,int n);
57 < void     saveHistos   (TH1F***  histos,int n1,int n2);
58 < void     saveHistos   (TH1F**** histos,int n1,int n2,int n3);
53 > void     fitHistos    (TH1F**    histos,int n,double nsigma);
54 > void     fitHistos    (TH1F***   histos,int n1,int n2,double nsigma);
55 > void     fitHistos    (TH1F****  histos,int n1,int n2,int n3,double nsigma);
56 > void     saveHistos   (TH1F**&   histos,int n);
57 > void     saveHistos   (TH1F***&  histos,int n1,int n2);
58 > void     saveHistos   (TH1F****& histos,int n1,int n2,int n3);
59  
60  
61  
# Line 123 | Line 123 | int main(int argc,char**argv)
123    int nphibins = phibins.size()+1;
124    int nemfbins = emfbins.size()+1;
125    
126  vector<TH1F**>   hGenEt;
127  vector<TH1F**>   hEtCorrGenEt;
128  vector<TH1F**>   hAbsRspGenEt;
129  vector<TH1F**>   hRelRspGenEt;
130
131  vector<TH1F**>   hEt;
132  vector<TH1F**>   hEtCorrEt;
133  vector<TH1F**>   hAbsRspEt;
134  vector<TH1F**>   hRelRspEt;
135
136  vector<TH1F**>   hEta;
137  vector<TH1F**>   hEtCorrEta;
138  vector<TH1F**>   hAbsRspEta;
139  vector<TH1F**>   hRelRspEta;
140
141  vector<TH1F**>   hPhi;
142  vector<TH1F**>   hEtCorrPhi;
143  vector<TH1F**>   hAbsRspPhi;
144  vector<TH1F**>   hRelRspPhi;
145  
146  vector<TH1F**>   hEmf;
147  vector<TH1F**>   hEtCorrEmf;
148  vector<TH1F**>   hAbsRspEmf;
149  vector<TH1F**>   hRelRspEmf;
150  
151  vector<TH1F***>  hEtEtaEt;
152  vector<TH1F***>  hEtCorrEtaEt;
153  vector<TH1F***>  hAbsRspEtaEt;
154  vector<TH1F***>  hRelRspEtaEt;
155  
156  vector<TH1F***>  hEtEmfEt;
157  vector<TH1F***>  hEtCorrEmfEt;
158  vector<TH1F***>  hAbsRspEmfEt;
159  vector<TH1F***>  hRelRspEmfEt;
160  
161  vector<TH1F****> hEtEmfEtaEt;
162  vector<TH1F****> hEtCorrEmfEtaEt;
163  vector<TH1F****> hAbsRspEmfEtaEt;
164  vector<TH1F****> hRelRspEmfEtaEt;
165  
166  
126    argc=3; argv[1]="-l"; argv[2]="-b";
127    TRint* app = new TRint(argv[0],&argc,argv); app->Argc();
128    
# Line 196 | Line 155 | int main(int argc,char**argv)
155        for (int i1=0;i1<100;i1++)
156          for (int i2=0;i2<3;i2++) jtjes[i1][i2]=1.0;
157      
199    
158      string absrsp_xtitle = "E_{T}^{gen}-E_{T} [GeV]";
159      string relrsp_xtitle = "E_{T}^{rec}/E_{T}";
160 <    
161 <    hGenEt      .push_back(hist::initHistos("GenEt",jetalgs[i],100,
162 <                                            "jet E_{T}^{gen} [GeV]","GenEt",etbins));
163 <    hEtCorrGenEt.push_back(hist::initHistos("EtCorrGenEt",jetalgs[i],100,
164 <                                            "jet E_{T}^{gen} [GeV]","GenEt",etbins));
165 <    hAbsRspGenEt.push_back(hist::initHistos("AbsRspGenEt",jetalgs[i],100,-50,150,
166 <                                            absrsp_xtitle,"GenEt",etbins));
167 <    hRelRspGenEt.push_back(hist::initHistos("RelRspGenEt",jetalgs[i],100,0,2,
168 <                                            relrsp_xtitle,"GenEt",etbins));
169 <    
170 <    hEt         .push_back(hist::initHistos("Et",jetalgs[i],100,
171 <                                            "jet E_{T} [GeV]","Et",etbins));
172 <    hEtCorrEt   .push_back(hist::initHistos("EtCorrEt",jetalgs[i],100,
173 <                                            "jet E_{T} [GeV]","Et",etbins));
174 <    hAbsRspEt   .push_back(hist::initHistos("AbsRspEt",jetalgs[i],100,-50,150,
175 <                                            absrsp_xtitle,"Et",etbins));
176 <    hRelRspEt   .push_back(hist::initHistos("RelRspEt",jetalgs[i],100,0,2,
177 <                                            relrsp_xtitle,"Et",etbins));
178 <    
179 <    hEta        .push_back(hist::initHistos("Eta",jetalgs[i],100,
180 <                                            "jet #eta","Eta",etabins));
181 <    hEtCorrEta  .push_back(hist::initHistos("EtCorrEta",jetalgs[i],100,
182 <                                            "jet E_{T} [GeV]","Eta",etabins));
183 <    hAbsRspEta  .push_back(hist::initHistos("AbsRspEta",jetalgs[i],100,-50,150,
184 <                                            absrsp_xtitle,"Eta",etabins));
185 <    hRelRspEta  .push_back(hist::initHistos("RelRspEta",jetalgs[i],100,0,2,
186 <                                            relrsp_xtitle,"Eta",etabins));
187 <    
188 <    hPhi        .push_back(hist::initHistos("Phi",jetalgs[i],100,
189 <                                            "jet #phi","Phi",phibins));
190 <    hEtCorrPhi  .push_back(hist::initHistos("EtCorrPhi",jetalgs[i],100,
191 <                                            "jet E_{T} [Gev]","Phi",phibins));
192 <    hAbsRspPhi  .push_back(hist::initHistos("AbsRspPhi",jetalgs[i],100,-50,150,
193 <                                            absrsp_xtitle,"Phi",phibins));
194 <    hRelRspPhi  .push_back(hist::initHistos("RelRspPhi",jetalgs[i],100,0,2,
195 <                                            relrsp_xtitle,"Phi",phibins));
196 <    
197 <    hEmf        .push_back(hist::initHistos("Emf",jetalgs[i],100,
198 <                                            "jet emf","Emf",emfbins));
199 <    hEtCorrEmf  .push_back(hist::initHistos("EtCorrEmf",jetalgs[i],100,
200 <                                            "jet E_{T} [Gev]","Emf",emfbins));
201 <    hAbsRspEmf  .push_back(hist::initHistos("AbsRspEmf",jetalgs[i],100,-50,150,
202 <                                            absrsp_xtitle,"Emf",emfbins));
203 <    hRelRspEmf  .push_back(hist::initHistos("RelRspEmf",jetalgs[i],100,0,2,
204 <                                            relrsp_xtitle,"Emf",emfbins));
205 <    
206 <    hEtEtaEt    .push_back(hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
207 <                                            "Eta",etabins,"Et",etbins));
208 <    hEtCorrEtaEt.push_back(hist::initHistos("EtCorrEtaEt",jetalgs[i],100,
160 >
161 >    TH1F** hGenEt       = hist::initHistos("GenEt",jetalgs[i],100,
162 >                                           "jet E_{T}^{gen} [GeV]","GenEt",etbins);
163 >    TH1F** hEtCorrGenEt = hist::initHistos("EtCorrGenEt",jetalgs[i],100,
164 >                                           "jet E_{T}^{gen} [GeV]","GenEt",etbins);
165 >    TH1F** hAbsRspGenEt = hist::initHistos("AbsRspGenEt",jetalgs[i],100,-50,150,
166 >                                           absrsp_xtitle,"GenEt",etbins);
167 >    TH1F** hRelRspGenEt = hist::initHistos("RelRspGenEt",jetalgs[i],100,0,2,
168 >                                           relrsp_xtitle,"GenEt",etbins);
169 >    
170 >    TH1F** hEt       = hist::initHistos("Et",jetalgs[i],100,
171 >                                        "jet E_{T} [GeV]","Et",etbins);
172 >    TH1F** hEtCorrEt = hist::initHistos("EtCorrEt",jetalgs[i],100,
173 >                                        "jet E_{T} [GeV]","Et",etbins);
174 >    TH1F** hAbsRspEt = hist::initHistos("AbsRspEt",jetalgs[i],100,-50,150,
175 >                                        absrsp_xtitle,"Et",etbins);
176 >    TH1F** hRelRspEt = hist::initHistos("RelRspEt",jetalgs[i],100,0,2,
177 >                                        relrsp_xtitle,"Et",etbins);
178 >    
179 >    TH1F** hEta       = hist::initHistos("Eta",jetalgs[i],100,
180 >                                         "jet #eta","Eta",etabins);
181 >    TH1F** hEtCorrEta = hist::initHistos("EtCorrEta",jetalgs[i],100,
182 >                                         "jet E_{T} [GeV]","Eta",etabins);
183 >    TH1F** hAbsRspEta = hist::initHistos("AbsRspEta",jetalgs[i],100,-50,150,
184 >                                         absrsp_xtitle,"Eta",etabins);
185 >    TH1F** hRelRspEta = hist::initHistos("RelRspEta",jetalgs[i],100,0,2,
186 >                                         relrsp_xtitle,"Eta",etabins);
187 >    
188 >    TH1F** hPhi       = hist::initHistos("Phi",jetalgs[i],100,
189 >                                         "jet #phi","Phi",phibins);
190 >    TH1F** hEtCorrPhi = hist::initHistos("EtCorrPhi",jetalgs[i],100,
191 >                                         "jet E_{T} [Gev]","Phi",phibins);
192 >    TH1F** hAbsRspPhi = hist::initHistos("AbsRspPhi",jetalgs[i],100,-50,150,
193 >                                         absrsp_xtitle,"Phi",phibins);
194 >    TH1F** hRelRspPhi = hist::initHistos("RelRspPhi",jetalgs[i],100,0,2,
195 >                                         relrsp_xtitle,"Phi",phibins);
196 >    
197 >    TH1F** hEmf       = hist::initHistos("Emf",jetalgs[i],100,
198 >                                         "jet emf","Emf",emfbins);
199 >    TH1F** hEtCorrEmf = hist::initHistos("EtCorrEmf",jetalgs[i],100,
200 >                                         "jet E_{T} [Gev]","Emf",emfbins);
201 >    TH1F** hAbsRspEmf = hist::initHistos("AbsRspEmf",jetalgs[i],100,-50,150,
202 >                                         absrsp_xtitle,"Emf",emfbins);
203 >    TH1F** hRelRspEmf = hist::initHistos("RelRspEmf",jetalgs[i],100,0,2,
204 >                                         relrsp_xtitle,"Emf",emfbins);
205 >    
206 >    TH1F*** hEtEtaEt     = hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
207 >                                            "Eta",etabins,"Et",etbins);
208 >    TH1F*** hEtCorrEtaEt = hist::initHistos("EtCorrEtaEt",jetalgs[i],100,
209                                              "jet E_{T} [GeV]",
210 <                                            "Eta",etabins,"Et",etbins));
211 <    hAbsRspEtaEt.push_back(hist::initHistos("AbsRspEtaEt",jetalgs[i],100,-50,150,
210 >                                            "Eta",etabins,"Et",etbins);
211 >    TH1F*** hAbsRspEtaEt = hist::initHistos("AbsRspEtaEt",jetalgs[i],100,-50,150,
212                                              absrsp_xtitle,
213 <                                            "Eta",etabins,"Et",etbins));
214 <    hRelRspEtaEt.push_back(hist::initHistos("RelRspEtaEt",jetalgs[i],100,0,2,
213 >                                            "Eta",etabins,"Et",etbins);
214 >    TH1F*** hRelRspEtaEt = hist::initHistos("RelRspEtaEt",jetalgs[i],100,0,2,
215                                              relrsp_xtitle,
216 <                                            "Eta",etabins,"Et",etbins));
216 >                                            "Eta",etabins,"Et",etbins);
217      
218 <    hEtEmfEt    .push_back(hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
219 <                                            "Emf",emfbins,"Et",etbins));
220 <    hEtCorrEmfEt.push_back(hist::initHistos("EtCorrEmfEt",jetalgs[i],100,
218 >    TH1F*** hEtEmfEt     = hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
219 >                                            "Emf",emfbins,"Et",etbins);
220 >    TH1F*** hEtCorrEmfEt = hist::initHistos("EtCorrEmfEt",jetalgs[i],100,
221                                              "jet E_{T} [GeV]",
222 <                                            "Emf",emfbins,"Et",etbins));
223 <    hAbsRspEmfEt.push_back(hist::initHistos("AbsRspEmfEt",jetalgs[i],100,-50,150,
222 >                                            "Emf",emfbins,"Et",etbins);
223 >    TH1F*** hAbsRspEmfEt = hist::initHistos("AbsRspEmfEt",jetalgs[i],100,-50,150,
224                                              absrsp_xtitle,
225 <                                            "Emf",emfbins,"Et",etbins));
226 <    hRelRspEmfEt.push_back(hist::initHistos("RelRspEmfEt",jetalgs[i],100,0,2,
225 >                                            "Emf",emfbins,"Et",etbins);
226 >    TH1F*** hRelRspEmfEt = hist::initHistos("RelRspEmfEt",jetalgs[i],100,0,2,
227                                              relrsp_xtitle,
228 <                                            "Emf",emfbins,"Et",etbins));
228 >                                            "Emf",emfbins,"Et",etbins);
229      
230 <    hEtEmfEtaEt    .push_back(hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
231 <                                               "Emf",emfbins,
232 <                                               "Eta",etabins,
233 <                                               "Et", etbins));
234 <    hEtCorrEmfEtaEt.push_back(hist::initHistos("EtCorrEmfEtaEt",jetalgs[i],100,
235 <                                               "jet E_{T} [GeV]",
236 <                                               "Emf",emfbins,
237 <                                               "Eta",etabins,
238 <                                               "Et", etbins));
239 <    hAbsRspEmfEtaEt.push_back(hist::initHistos("AbsRspEmfEtaEt",jetalgs[i],
240 <                                               100,-50,150,absrsp_xtitle,
241 <                                               "Emf",emfbins,
242 <                                               "Eta",etabins,
243 <                                               "Et", etbins));
244 <    hRelRspEmfEtaEt.push_back(hist::initHistos("RelRspEmfEtaEt",jetalgs[i],
245 <                                               100,0,2,relrsp_xtitle,
246 <                                               "Emf",emfbins,
247 <                                               "Eta",etabins,
248 <                                               "Et", etbins));
230 >    TH1F**** hEtEmfEtaEt     = hist::initHistos("Et",jetalgs[i],100,"jet E_{T} [GeV]",
231 >                                                "Emf",emfbins,
232 >                                                "Eta",etabins,
233 >                                                "Et", etbins);
234 >    TH1F**** hEtCorrEmfEtaEt = hist::initHistos("EtCorrEmfEtaEt",jetalgs[i],100,
235 >                                                "jet E_{T} [GeV]",
236 >                                                "Emf",emfbins,
237 >                                                "Eta",etabins,
238 >                                                "Et", etbins);
239 >    TH1F**** hAbsRspEmfEtaEt = hist::initHistos("AbsRspEmfEtaEt",jetalgs[i],
240 >                                                100,-50,150,absrsp_xtitle,
241 >                                                "Emf",emfbins,
242 >                                                "Eta",etabins,
243 >                                                "Et", etbins);
244 >    TH1F**** hRelRspEmfEtaEt = hist::initHistos("RelRspEmfEtaEt",jetalgs[i],
245 >                                                100,0,2,relrsp_xtitle,
246 >                                                "Emf",emfbins,
247 >                                                "Eta",etabins,
248 >                                                "Et", etbins);
249      
250      
251      int nevts = el->GetN();
# Line 381 | Line 339 | int main(int argc,char**argv)
339        }
340      }
341      
342 +    cout<<jetalgs[i]<<": trees created."<<endl;
343 +
344      
345      // loop over all events
346      for (int ievt=0;ievt<nevts;ievt++) {
# Line 406 | Line 366 | int main(int argc,char**argv)
366  
367          // genet
368          int igenet = hist::get_ibin(genet,etbins);
409        hAbsRspGenEt[i][igenet] ->Fill(absrsp,weight);
410        hRelRspGenEt[i][igenet] ->Fill(relrsp,weight);
369          tGenEt[igenet]->Fill();
370          
371          // et
372          int iet = hist::get_ibin(et,etbins);
415        hAbsRspEt[i][iet]->Fill(absrsp,weight);
416        hRelRspEt[i][iet]->Fill(relrsp,weight);
373          tEt[iet]->Fill();
374          
375          // eta
376          int ieta = hist::get_ibin(eta,etabins);
421        hAbsRspEta[i][ieta]->Fill(absrsp,weight);
422        hRelRspEta[i][ieta]->Fill(relrsp,weight);
377          tEta[ieta]->Fill();
378          
379          // phi
380          int iphi = hist::get_ibin(phi,phibins);
427        hAbsRspPhi[i][iphi]->Fill(absrsp,weight);
428        hRelRspPhi[i][iphi]->Fill(relrsp,weight);
381          tPhi[iphi]->Fill();
382          
383          // emf
384          int iemf = hist::get_ibin(emf,emfbins);
433        hAbsRspEmf[i][iemf]->Fill(absrsp,weight);
434        hRelRspEmf[i][iemf]->Fill(relrsp,weight);
385          tEmf[iemf]->Fill();
386          
387          // et-eta
438        hAbsRspEtaEt[i][ieta][iet]->Fill(absrsp,weight);
439        hRelRspEtaEt[i][ieta][iet]->Fill(relrsp,weight);
388          tEtEtaEt[ieta][iet]->Fill();
389          
390          // et-emf
443        hAbsRspEmfEt[i][iemf][iet]->Fill(absrsp,weight);
444        hRelRspEmfEt[i][iemf][iet]->Fill(relrsp,weight);
391          tEtEmfEt[iemf][iet]->Fill();
392          
393          // et-eta-emf
448        hAbsRspEmfEtaEt[i][iemf][ieta][iet]->Fill(absrsp,weight);
449        hRelRspEmfEtaEt[i][iemf][ieta][iet]->Fill(relrsp,weight);
394          tEtEmfEtaEt[iemf][ieta][iet]->Fill();
395          
396        } // jets
# Line 458 | Line 402 | int main(int argc,char**argv)
402      // replace histograms
403  
404      replaceHistos(netbins,
405 <                  hGenEt[i],hEtCorrGenEt[i],hAbsRspGenEt[i],hRelRspGenEt[i],tGenEt);
406 <    replaceHistos(netbins,hEt[i],hEtCorrEt[i],hAbsRspEt[i],hRelRspEt[i],tEt);
407 <    replaceHistos(netabins,hEta[i],hEtCorrEta[i],hAbsRspEta[i],hRelRspEta[i],tEta);
408 <    replaceHistos(nphibins,hPhi[i],hEtCorrPhi[i],hAbsRspPhi[i],hRelRspPhi[i],tPhi);
409 <    replaceHistos(nemfbins,hEmf[i],hEtCorrEmf[i],hAbsRspEmf[i],hRelRspEmf[i],tEmf);
405 >                  hGenEt,hEtCorrGenEt,hAbsRspGenEt,hRelRspGenEt,tGenEt);
406 >    replaceHistos(netbins,hEt,hEtCorrEt,hAbsRspEt,hRelRspEt,tEt);
407 >    replaceHistos(netabins,hEta,hEtCorrEta,hAbsRspEta,hRelRspEta,tEta);
408 >    replaceHistos(nphibins,hPhi,hEtCorrPhi,hAbsRspPhi,hRelRspPhi,tPhi);
409 >    replaceHistos(nemfbins,hEmf,hEtCorrEmf,hAbsRspEmf,hRelRspEmf,tEmf);
410      replaceHistos(netabins,netbins,
411 <                  hEtEtaEt[i],hEtCorrEtaEt[i],hAbsRspEtaEt[i],hRelRspEtaEt[i],
411 >                  hEtEtaEt,hEtCorrEtaEt,hAbsRspEtaEt,hRelRspEtaEt,
412                    tEtEtaEt);
413      replaceHistos(nemfbins,netbins,
414 <                  hEtEmfEt[i],hEtCorrEmfEt[i],hAbsRspEmfEt[i],hRelRspEmfEt[i],
414 >                  hEtEmfEt,hEtCorrEmfEt,hAbsRspEmfEt,hRelRspEmfEt,
415                    tEtEmfEt);
416      replaceHistos(nemfbins,netabins,netbins,
417 <                  hEtEmfEtaEt[i],hEtCorrEmfEtaEt[i],
418 <                  hAbsRspEmfEtaEt[i],hRelRspEmfEtaEt[i],
417 >                  hEtEmfEtaEt,hEtCorrEmfEtaEt,
418 >                  hAbsRspEmfEtaEt,hRelRspEmfEtaEt,
419                    tEtEmfEtaEt);
420      
421 +    cout<<jetalgs[i]<<": all histograms replaced, and tree deleted."<<endl;
422 +
423      TDirectory* d = plotfile->mkdir(jetalgs[i].c_str());
424      d->cd();
425      
426      // fit response histos
427 <    fitHistos(hAbsRspGenEt[i],netbins,nsigma);
428 <    fitHistos(hRelRspGenEt[i],netbins,nsigma);
427 >    fitHistos(hAbsRspGenEt,netbins,nsigma);
428 >    fitHistos(hRelRspGenEt,netbins,nsigma);
429  
430 <    fitHistos(hAbsRspEt[i],   netbins,nsigma);
431 <    fitHistos(hRelRspEt[i],   netbins,nsigma);
430 >    fitHistos(hAbsRspEt,   netbins,nsigma);
431 >    fitHistos(hRelRspEt,   netbins,nsigma);
432  
433 <    fitHistos(hAbsRspEta[i],  netabins,nsigma);
434 <    fitHistos(hRelRspEta[i],  netabins,nsigma);
433 >    fitHistos(hAbsRspEta,  netabins,nsigma);
434 >    fitHistos(hRelRspEta,  netabins,nsigma);
435  
436 <    fitHistos(hAbsRspPhi[i],  nphibins,nsigma);
437 <    fitHistos(hRelRspPhi[i],  nphibins,nsigma);
436 >    fitHistos(hAbsRspPhi,  nphibins,nsigma);
437 >    fitHistos(hRelRspPhi,  nphibins,nsigma);
438      
439 <    fitHistos(hAbsRspEmf[i],  nemfbins,nsigma);
440 <    fitHistos(hRelRspEmf[i],  nemfbins,nsigma);
439 >    fitHistos(hAbsRspEmf,  nemfbins,nsigma);
440 >    fitHistos(hRelRspEmf,  nemfbins,nsigma);
441      
442 <    fitHistos(hAbsRspEtaEt[i],netabins,netbins,nsigma);
443 <    fitHistos(hRelRspEtaEt[i],netabins,netbins,nsigma);
442 >    fitHistos(hAbsRspEtaEt,netabins,netbins,nsigma);
443 >    fitHistos(hRelRspEtaEt,netabins,netbins,nsigma);
444  
445 <    fitHistos(hAbsRspEmfEt[i],nemfbins,netbins,nsigma);
446 <    fitHistos(hRelRspEmfEt[i],nemfbins,netbins,nsigma);
445 >    fitHistos(hAbsRspEmfEt,nemfbins,netbins,nsigma);
446 >    fitHistos(hRelRspEmfEt,nemfbins,netbins,nsigma);
447  
448 <    fitHistos(hAbsRspEmfEtaEt[i],nemfbins,netabins,netbins,nsigma);
449 <    fitHistos(hRelRspEmfEtaEt[i],nemfbins,netabins,netbins,nsigma);
448 >    fitHistos(hAbsRspEmfEtaEt,nemfbins,netabins,netbins,nsigma);
449 >    fitHistos(hRelRspEmfEtaEt,nemfbins,netabins,netbins,nsigma);
450 >
451 >    cout<<jetalgs[i]<<": fits done."<<endl;
452  
453      
454      // save histograms
455 <    saveHistos(hGenEt[i],      netbins);
456 <    saveHistos(hEtCorrGenEt[i],netbins);
457 <    saveHistos(hAbsRspGenEt[i],netbins);
458 <    saveHistos(hRelRspGenEt[i],netbins);
459 <
460 <    saveHistos(hEt[i],         netbins);
461 <    saveHistos(hEtCorrEt[i],   netbins);
462 <    saveHistos(hAbsRspEt[i],   netbins);
463 <    saveHistos(hRelRspEt[i],   netbins);
464 <
465 <    saveHistos(hEta[i],        netabins);
466 <    saveHistos(hEtCorrEta[i],  netabins);
467 <    saveHistos(hAbsRspEta[i],  netabins);
468 <    saveHistos(hRelRspEta[i],  netabins);
469 <
470 <    saveHistos(hPhi[i],        nphibins);
471 <    saveHistos(hEtCorrPhi[i],  nphibins);
472 <    saveHistos(hAbsRspPhi[i],  nphibins);
473 <    saveHistos(hRelRspPhi[i],  nphibins);
474 <    
475 <    saveHistos(hEmf[i],        nemfbins);
476 <    saveHistos(hEtCorrEmf[i],  nemfbins);
477 <    saveHistos(hAbsRspEmf[i],  nemfbins);
478 <    saveHistos(hRelRspEmf[i],  nemfbins);
479 <    
480 <    saveHistos(hEtEtaEt[i],    netabins,netbins);
481 <    saveHistos(hEtCorrEtaEt[i],netabins,netbins);
482 <    saveHistos(hAbsRspEtaEt[i],netabins,netbins);
483 <    saveHistos(hRelRspEtaEt[i],netabins,netbins);
484 <
485 <    saveHistos(hEtEmfEt[i],    nemfbins,netbins);
486 <    saveHistos(hEtCorrEmfEt[i],nemfbins,netbins);
487 <    saveHistos(hAbsRspEmfEt[i],nemfbins,netbins);
488 <    saveHistos(hRelRspEmfEt[i],nemfbins,netbins);
489 <
490 <    saveHistos(hEtEmfEtaEt[i],    nemfbins,netabins,netbins);
491 <    saveHistos(hEtCorrEmfEtaEt[i],nemfbins,netabins,netbins);
492 <    saveHistos(hAbsRspEmfEtaEt[i],nemfbins,netabins,netbins);
493 <    saveHistos(hRelRspEmfEtaEt[i],nemfbins,netabins,netbins);
455 >    saveHistos(hGenEt,      netbins);
456 >    saveHistos(hEtCorrGenEt,netbins);
457 >    saveHistos(hAbsRspGenEt,netbins);
458 >    saveHistos(hRelRspGenEt,netbins);
459 >
460 >    saveHistos(hEt,         netbins);
461 >    saveHistos(hEtCorrEt,   netbins);
462 >    saveHistos(hAbsRspEt,   netbins);
463 >    saveHistos(hRelRspEt,   netbins);
464 >
465 >    saveHistos(hEta,        netabins);
466 >    saveHistos(hEtCorrEta,  netabins);
467 >    saveHistos(hAbsRspEta,  netabins);
468 >    saveHistos(hRelRspEta,  netabins);
469 >
470 >    saveHistos(hPhi,        nphibins);
471 >    saveHistos(hEtCorrPhi,  nphibins);
472 >    saveHistos(hAbsRspPhi,  nphibins);
473 >    saveHistos(hRelRspPhi,  nphibins);
474 >    
475 >    saveHistos(hEmf,        nemfbins);
476 >    saveHistos(hEtCorrEmf,  nemfbins);
477 >    saveHistos(hAbsRspEmf,  nemfbins);
478 >    saveHistos(hRelRspEmf,  nemfbins);
479 >    
480 >    saveHistos(hEtEtaEt,    netabins,netbins);
481 >    saveHistos(hEtCorrEtaEt,netabins,netbins);
482 >    saveHistos(hAbsRspEtaEt,netabins,netbins);
483 >    saveHistos(hRelRspEtaEt,netabins,netbins);
484 >
485 >    saveHistos(hEtEmfEt,    nemfbins,netbins);
486 >    saveHistos(hEtCorrEmfEt,nemfbins,netbins);
487 >    saveHistos(hAbsRspEmfEt,nemfbins,netbins);
488 >    saveHistos(hRelRspEmfEt,nemfbins,netbins);
489 >
490 >    saveHistos(hEtEmfEtaEt,    nemfbins,netabins,netbins);
491 >    saveHistos(hEtCorrEmfEtaEt,nemfbins,netabins,netbins);
492 >    saveHistos(hAbsRspEmfEtaEt,nemfbins,netabins,netbins);
493 >    saveHistos(hRelRspEmfEtaEt,nemfbins,netabins,netbins);
494 >
495 >    plotfile->Write();
496 >  
497 >    cout<<jetalgs[i]<<": histograms saved."<<endl;
498    }
499    
500    plotfile->Write();
# Line 616 | Line 568 | void replaceHistos(int nbins1,int nbins2
568   {
569    for (int i1=0;i1<nbins1;i1++)
570      replaceHistos(nbins2,hVar[i1],hEtCorr[i1],hAbsRsp[i1],hRelRsp[i1],tVar[i1]);
571 +  delete [] tVar;
572   }
573  
574  
# Line 627 | Line 580 | void replaceHistos(int nbins1,int nbins2
580    for (int i1=0;i1<nbins1;i1++)
581      replaceHistos(nbins2,nbins3,
582                    hVar[i1],hEtCorr[i1],hAbsRsp[i1],hRelRsp[i1],tVar[i1]);
583 +  delete [] tVar;
584   }
585  
586  
# Line 663 | Line 617 | void fitHistos(TH1F**** histos,int n1,in
617  
618  
619   //______________________________________________________________________________
620 < void saveHistos(TH1F** histos,int n)
620 > void saveHistos(TH1F**& histos,int n)
621   {
622 <  for (int i=0;i<n;i++) histos[i]->Write();
622 >  for (int i=0;i<n;i++) {
623 >    histos[i]->Write();
624 >    delete histos[i];
625 >  }
626 >  delete [] histos;
627   }
628  
629  
630   //______________________________________________________________________________
631 < void saveHistos(TH1F*** histos,int n1,int n2)
631 > void saveHistos(TH1F***& histos,int n1,int n2)
632   {
633    for (int i1=0;i1<n1;i1++) saveHistos(histos[i1],n2);
634 +  delete [] histos;
635   }
636  
637  
638   //______________________________________________________________________________
639 < void saveHistos(TH1F**** histos,int n1,int n2,int n3)
639 > void saveHistos(TH1F****& histos,int n1,int n2,int n3)
640   {
641    for (int i1=0;i1<n1;i1++) saveHistos(histos[i1],n2,n3);
642 +  delete [] histos;
643   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines