12 gROOT->LoadMacro(
"$VMCWORKDIR/macro/mvd/Tools.C");
13 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
15 TFile*
fsim =
new TFile(
"/home/moini/myPandaRoot/myCodes/ROOTfiles/h_c_channel/emc_complete_onlyFwEndCap.root");
17 TTree *
tsim=(TTree *) fsim->Get(
"pndsim") ;
19 tsim->SetBranchAddress(
"MCTrack",&mctrack_array);
21 TClonesArray*
digi_array=
new TClonesArray(
"PndEmcDigi");
22 tsim->SetBranchAddress(
"EmcDigi",&digi_array);
24 TClonesArray*
cluster_array=
new TClonesArray(
"PndEmcCluster");
25 tsim->SetBranchAddress(
"EmcCluster",&cluster_array);
27 TClonesArray*
bump_array=
new TClonesArray(
"PndEmcBump");
28 tsim->SetBranchAddress(
"EmcBump",&bump_array);
36 TH1F *
hene_mc=
new TH1F(
"hene_mc",
"MC energy (GeV)",100,0.0,1.05);
37 TH1F *
h10=
new TH1F(
"h10",
" Theta (MC)",180,0.,180.);
38 TH1F *
h20=
new TH1F(
"h20",
" Phi (MC)",360,0.,360.);
39 TH1F *
h10d=
new TH1F(
"h10d",
" Theta (data)",180,0.,180.);
40 TH1F *
h20d=
new TH1F(
"h20d",
" Phi (data)",360,0.,360.);
41 TH1F *
h1=
new TH1F(
"h1",
" Theta difference",100,-2.,2.);
42 TH1F *
h2=
new TH1F(
"h2",
" Phi difference",100,-2.,2.);
44 Int_t
ncounts = tsim->GetEntriesFast();
45 cout <<
"Number of events = " << ncounts<< endl;
49 TH1F *HISTdigi_ene=
new TH1F(
"HISTdigi_ene",
"FwEndCap energy (digi)",2000,0.0,2.05);
50 TH1F *HISTene_d=
new TH1F(
"HISTene_d",
"energy (digi)",1000,0.0001,1.01);
51 TH2F *HISTxpad_x_d =
new TH2F(
"HISTxpad_x_d",
"xpad vs x (digi)",200,200,300,2*38.5,-38.5,38.5);
52 TH2F *HISTypad_y_d =
new TH2F(
"HISTypad_y_d",
"ypad vs y (digi)",200,200,300,2*38.5,-38.5,38.5);
53 TH2F *HISTrow_x_d =
new TH2F(
"HISTrow_x_d",
"row vs x (digi)",200,200,300,2*38.5,-38.5,38.5);
54 TH2F *HISTrow_crystal_d =
new TH2F(
"HISTrow_crystal_d",
"row vs column (digi)",2*38.5,-38.5,38.5,2*38.5,-38.5,38.5);
55 TH2F *HISTy_x_d =
new TH2F(
"HISTy_x_d",
"y vs x (digi map)",200,200,300,200,200,300);
56 TH1F *HISTOdigi_ene11_12=
new TH1F(
"HISTOdigi_ene11_12",
"crystal [11,12] dep. energy (GeV)",100,0.0001,1.01);
57 TH1F *HISTOdigi_ene12_12=
new TH1F(
"HISTOdigi_ene12_12",
"crystal [12,12] dep. energy (GeV)",100,0.0001,1.01);
58 TH1F *HISTOdigi_ene13_12=
new TH1F(
"HISTOdigi_ene13_12",
"crystal [13,12] dep. energy (GeV)",100,0.0001,1.01);
59 TH1F *HISTOdigi_ene14_12=
new TH1F(
"HISTOdigi_ene14_12",
"crystal [14,12] dep. energy (GeV)",100,0.0001,1.01);
60 TH1F *HISTtotdigis_fromClusterAnalysis =
new TH1F(
"HISTtotdigis_fromClusterAnalysis",
"total number of digis per event",100,0,25);
61 TH1I *HISTmultiplicity_5MeVtrigThresh_d =
new TH1I(
"HISTmultiplicity_5MeVtrigThresh_d",
"Crystal digi multiplicity per event (3 MeV detection threshold and considering 5 MeV trigger threshold)",40,0.5,40.5);
62 TH1I *HISTmultiplicity_10MeVtrigThresh_d =
new TH1I(
"HISTmultiplicity_10MeVtrigThresh_d",
"Crystal digi multiplicity per event (3 MeV detection threshold and considering 10 MeV trigger threshold)",40,0.5,40.5);
64 TH1I *HISTnumberOfClusters =
new TH1I(
"HISTnumberOfClusters",
"Total number of clusters per event, having more than or equal to one digi per cluster",100,0,20);
65 TH1I *HISTclustNo =
new TH1I(
"HISTclustNo",
"Total number of clusters per event, having more than one digi per cluster and satisfying the cluster threshold energy",1000,0,20);
66 TH1I *HISTndigisOfHighestEnergyCluster =
new TH1I(
"HISTndigisOfHighestEnergyCluster",
"Number of digis per event for clusters with highest energy deposition",1000,0,30);
67 TH1F *HISTmax_cluster_energy=
new TH1F(
"HISTOmax_cluster_energy",
"Maximum cluster energy deposition per event",500,0.,1.05);
68 TH1F *HISTmax_cluster_theta =
new TH1F(
"HISTmax_cluster_theta",
"#theta per event of the cluster with maximum deposition energy",100,0,30);
69 TH1F *HISTmax_cluster_phi =
new TH1F(
"HISTmax_cluster_phi",
"#phi per event of the cluster with maximum deposition energy",370,-185,185);
70 TH1F *HISTmax_cluster_x =
new TH1F(
"HISTmax_cluster_x",
"x per event of the cluster with maximum deposition energy",220,-110,110);
71 TH1F *HISTmax_cluster_y =
new TH1F(
"HISTmax_cluster_y",
"y per event of the cluster with maximum deposition energy",220,-110,110);
72 TH1F *HISTmax_cluster_z =
new TH1F(
"HISTmax_cluster_z",
"z per event of the cluster with maximum deposition energy",80,208,216);
73 TH2F *HISTmax_cluster_y_x =
new TH2F(
"HISTmax_cluster_y_x",
"y vs x per event of the cluster with maximum deposition energy",220,-110,110,220,-110,110);
74 TH1F *HISTtheta_MonteCarlo =
new TH1F(
"HISTtheta_MonteCarlo",
"Monte Carlo #theta per event of the cluster with maximum deposition energy",100,0,30);
75 TH1F *HISTphi_MonteCarlo =
new TH1F(
"HISTphi_MonteCarlo",
"Monte Carlo #phi per event of the cluster with maximum deposition energy",370,-185,185);
76 TH1F *HISTmax_cluster_theta_diff =
new TH1F(
"HISTmax_cluster_theta_diff",
"Difference between Monte Carlo and reconstructed #theta per event of the cluster with maximum deposition energy",100,-5,5);
77 TH1F *HISTmax_cluster_phi_diff =
new TH1F(
"HISTmax_cluster_phi_diff",
"Difference between Monte Carlo and reconstructed #phi per event of the cluster with maximum deposition energy",360,-5,5);
78 TH2F *HISTtheta_MonteCarlo_cluster =
new TH2F(
"HISTtheta_MonteCarlo_cluster",
"Monte Carlo versus cluster #theta of the cluster with maximum deposition energy",100,0,30,100,0,30);
79 TH2F *HISTphi_MonteCarlo_cluster =
new TH2F(
"HISTphi_MonteCarlo_cluster",
"Monte Carlo versus cluster #phi of the cluster with maximum deposition energy",370,-185,185,370,-185,185);
80 TH1F *HISTmax_cluster_x_diff =
new TH1F(
"HISTmax_cluster_x_diff",
"Difference between Monte Carlo and reconstructed x per event of the cluster with maximum deposition energy",100,-5,5);
81 TH1F *HISTmax_cluster_y_diff =
new TH1F(
"HISTmax_cluster_y_diff",
"Difference between Monte Carlo and reconstructed y per event of the cluster with maximum deposition energy",100,-5,5);
82 TH2F *HISTclusterSize_clusterPhi =
new TH2F(
"HISTclusterSize_clusterPhi",
"number of digis vs cluster #phi for clusters with highest energy deposition",370,-185,185,100,0,25);
83 TH2F *HISTclusterEnergy_clusterPhi =
new TH2F(
"HISTclusterEnergy_clusterPhi",
"cluster energy deposition vs cluster #phi for clusters with highest energy deposition",370,-185,185,500,0.,1.05);
84 TH2F *HISTnumberOfclusters_clusterPhi =
new TH2F(
"HISTnumberOfclusters_clusterPhi",
"number of clusters vs cluster #phi for clusters with highest energy deposition",370,-185,185,100,0,20);
85 TH2F *HISTtotdigis_clusterPhi =
new TH2F(
"HISTtotdigis_clusterPhi",
"total number of digis vs cluster #phi (#phi of clusters with highest energy deposition)",370,-185,185,100,0,25);
87 TH1F *HISTinvariantMass =
new TH1F(
"HISTinvariantMass",
"invariant mass of every two clusters (7 highest energy clusters in total)",3200,0,3.2);
88 TH2F *HISTinvariantMass_openingAngle =
new TH2F(
"HISTinvariantMass_openingAngle",
"opening angle of the two clusters versus the invariant mass of the assumed two gammas that make the two clusters",3200,0,3.2,140,0,50);
89 TH1F *HIST_Egamma1Egamma2 =
new TH1F(
"HIST_Egamma1Egamma2",
"E_{#gamma1} #times E_{#gamma2}",8000,0,8.);
90 TH2F *HIST_Egamma1vsEgamma2 =
new TH2F(
"HIST_Egamma1vsEgamma2",
"E_{#gamma2} versus E_{#gamma1}",8000,0,8.,3200,0,3.2);
91 TH2F *HIST_Egamma1Egamma2_openingAngle =
new TH2F(
"HIST_Egamma1Egamma2_openingAngle",
"opening angle of the two clusters versus E_{#gamma1} #times E_{#gamma2}",8000,0,8.,140,0,50);
92 TH2F *HISTinvariantMass_Egamma1Egamma2 =
new TH2F(
"HISTinvariantMass_Egamma1Egamma2",
"E_{#gamma1} #times E_{#gamma2} versus the invariant mass of the two gammas",3200,0,3.2,8000,0,8.);
93 TH2F *HIST_Egamma1_Egamma1Egamma2 =
new TH2F(
"HIST_Egamma1_Egamma1Egamma2",
"E_{#gamma1} #times E_{#gamma2} versus E_{#gamma1}",6400,0,6.4,8000,0,8.);
94 TH2F *HIST_Egamma1_openingAngle =
new TH2F(
"HIST_Egamma1_openingAngle",
"opening angle of the two clusters versus E_{#gamma1}",6400,0,6.4,140,0,50);
95 TH3F *HISTinvariantMass_openingAngle_Egamma1Egamma2 =
new TH3F(
"HISTinvariantMass_openingAngle_Egamma1Egamma2",
"",150,0,1.5,140,0,50,400,0,4.);
99 Int_t efficiencyCounter_d=0;
100 Int_t atLeastOneHitPerEventCounter_d=0;
102 for (
int j = 0; j <
ncounts; j++) {
104 Int_t efficiencyFlag10MeV_d=0;
105 Int_t efficiencyFlag5MeV_d=0;
106 Int_t atLeastOneHitPerEventFlag_d=0;
113 theta_mc=photon_momentum.Theta()*(180./
TMath::Pi());
114 phi_mc=photon_momentum.Phi()*(180./
TMath::Pi());
194 Int_t NumberOfClusters, ClustNo, totdigis_fromClusterAnalysis, ndigisOfHighestEnergyCluster;
195 NumberOfClusters=ClustNo=totdigis_fromClusterAnalysis=ndigisOfHighestEnergyCluster=0;
196 Int_t idClusterSatisfiedThresholdEnergy=-1;
198 Double_t highestenergy_sumOfclusters=0;
200 std::vector <double> highestenergy;
201 std::vector <double> cluster_x;
202 std::vector <double> cluster_y;
203 std::vector <double> cluster_z;
204 std::vector <double> cluster_dist;
205 std::vector <double> cluster_module;
206 std::vector <double> originalClusterIndex;
208 if (cluster_array->GetEntriesFast() > 0)
210 NumberOfClusters=cluster_array->GetEntriesFast();
211 std::vector <double> clusterEnergies;
212 std::vector <double> clusterEnergies_original;
214 for (Int_t
i=0;
i<NumberOfClusters;
i++)
220 clusterEnergies.push_back(cluster_energy);
221 clusterEnergies_original.push_back(cluster_energy);
224 totdigis_fromClusterAnalysis +=
ndigi;
225 if (ndigi >= 1 && cluster_energy >= clusterThresholdEnergy)
276 std::sort(clusterEnergies.begin(), clusterEnergies.end());
278 if (NumberOfClusters>=7)
280 for (
int k=0; k<NumberOfClusters; k++)
282 highestenergy.push_back(clusterEnergies[(NumberOfClusters-1)-k]);
288 for (
int i=0;
i<NumberOfClusters;
i++)
289 if (!(clusterEnergies_original[
i]>highestenergy[k]) && !(clusterEnergies_original[
i]<highestenergy[k]))
290 originalClusterIndex.push_back(
i);
293 TVector3 cluster_pos=cluster->
where();
294 cluster_x.push_back(cluster->
x());
295 cluster_y.push_back(cluster->
y());
296 cluster_z.push_back(cluster->
z());
297 cluster_dist.push_back(cluster_pos.Mag());
301 for (
int k0=1; k0<NumberOfClusters; k0++)
303 Double_t cosTheta = (1./cluster_dist[0]/cluster_dist[k0])*(cluster_x[0]*cluster_x[k0]+cluster_y[0]*cluster_y[k0]+cluster_z[0]*cluster_z[k0]);
304 Double_t invMass =
sqrt(2*highestenergy[0]*highestenergy[k0]*(1-cosTheta));
305 HISTinvariantMass->Fill(invMass);
306 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
307 HIST_Egamma1Egamma2->Fill(highestenergy[0]*highestenergy[k0]);
308 HIST_Egamma1vsEgamma2->Fill(highestenergy[0],highestenergy[k0]);
309 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[0]*highestenergy[k0],
acos(cosTheta)*180/3.1415926535);
310 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[0]*highestenergy[k0]);
311 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[0],highestenergy[0]*highestenergy[k0]);
312 HIST_Egamma1_openingAngle->Fill(highestenergy[0],
acos(cosTheta)*180/3.1415926535);
313 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[0]*highestenergy[k0]);
315 for (
int k1=2; k1<NumberOfClusters; k1++)
317 Double_t cosTheta = (1./cluster_dist[1]/cluster_dist[k1])*(cluster_x[1]*cluster_x[k1]+cluster_y[1]*cluster_y[k1]+cluster_z[1]*cluster_z[k1]);
318 Double_t invMass =
sqrt(2*highestenergy[1]*highestenergy[k1]*(1-cosTheta));
319 HISTinvariantMass->Fill(invMass);
320 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
321 HIST_Egamma1Egamma2->Fill(highestenergy[1]*highestenergy[k1]);
322 HIST_Egamma1vsEgamma2->Fill(highestenergy[1],highestenergy[k1]);
323 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[1]*highestenergy[k1],
acos(cosTheta)*180/3.1415926535);
324 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[1]*highestenergy[k1]);
325 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[1],highestenergy[1]*highestenergy[k1]);
326 HIST_Egamma1_openingAngle->Fill(highestenergy[1],
acos(cosTheta)*180/3.1415926535);
327 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[1]*highestenergy[k1]);
329 for (
int k2=3; k2<NumberOfClusters; k2++)
331 Double_t cosTheta = (1./cluster_dist[2]/cluster_dist[k2])*(cluster_x[2]*cluster_x[k2]+cluster_y[2]*cluster_y[k2]+cluster_z[2]*cluster_z[k2]);
332 Double_t invMass =
sqrt(2*highestenergy[2]*highestenergy[k2]*(1-cosTheta));
333 HISTinvariantMass->Fill(invMass);
334 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
335 HIST_Egamma1Egamma2->Fill(highestenergy[2]*highestenergy[k2]);
336 HIST_Egamma1vsEgamma2->Fill(highestenergy[2],highestenergy[k2]);
337 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[2]*highestenergy[k2],
acos(cosTheta)*180/3.1415926535);
338 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[2]*highestenergy[k2]);
339 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[2],highestenergy[2]*highestenergy[k2]);
340 HIST_Egamma1_openingAngle->Fill(highestenergy[2],
acos(cosTheta)*180/3.1415926535);
341 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[2]*highestenergy[k2]);
343 for (
int k3=4; k3<NumberOfClusters; k3++)
345 Double_t cosTheta = (1./cluster_dist[3]/cluster_dist[k3])*(cluster_x[3]*cluster_x[k3]+cluster_y[3]*cluster_y[k3]+cluster_z[3]*cluster_z[k3]);
346 Double_t invMass =
sqrt(2*highestenergy[3]*highestenergy[k3]*(1-cosTheta));
347 HISTinvariantMass->Fill(invMass);
348 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
349 HIST_Egamma1Egamma2->Fill(highestenergy[3]*highestenergy[k3]);
350 HIST_Egamma1vsEgamma2->Fill(highestenergy[3],highestenergy[k3]);
351 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[3]*highestenergy[k3],
acos(cosTheta)*180/3.1415926535);
352 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[3]*highestenergy[k3]);
353 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[3],highestenergy[3]*highestenergy[k3]);
354 HIST_Egamma1_openingAngle->Fill(highestenergy[3],
acos(cosTheta)*180/3.1415926535);
355 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[3]*highestenergy[k3]);
357 for (
int k4=5; k4<NumberOfClusters; k4++)
359 Double_t cosTheta = (1./cluster_dist[4]/cluster_dist[k4])*(cluster_x[4]*cluster_x[k4]+cluster_y[4]*cluster_y[k4]+cluster_z[4]*cluster_z[k4]);
360 Double_t invMass =
sqrt(2*highestenergy[4]*highestenergy[k4]*(1-cosTheta));
361 HISTinvariantMass->Fill(invMass);
362 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
363 HIST_Egamma1Egamma2->Fill(highestenergy[4]*highestenergy[k4]);
364 HIST_Egamma1vsEgamma2->Fill(highestenergy[4],highestenergy[k4]);
365 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[4]*highestenergy[k4],
acos(cosTheta)*180/3.1415926535);
366 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[4]*highestenergy[k4]);
367 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[4],highestenergy[4]*highestenergy[k4]);
368 HIST_Egamma1_openingAngle->Fill(highestenergy[4],
acos(cosTheta)*180/3.1415926535);
369 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[4]*highestenergy[k4]);
371 for (
int k5=6; k5<NumberOfClusters; k5++)
373 Double_t cosTheta = (1./cluster_dist[5]/cluster_dist[k5])*(cluster_x[5]*cluster_x[k5]+cluster_y[5]*cluster_y[k5]+cluster_z[5]*cluster_z[k5]);
374 Double_t invMass =
sqrt(2*highestenergy[5]*highestenergy[k5]*(1-cosTheta));
375 HISTinvariantMass->Fill(invMass);
376 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
377 HIST_Egamma1Egamma2->Fill(highestenergy[5]*highestenergy[k5]);
378 HIST_Egamma1vsEgamma2->Fill(highestenergy[5],highestenergy[k5]);
379 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[5]*highestenergy[k5],
acos(cosTheta)*180/3.1415926535);
380 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[5]*highestenergy[k5]);
381 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[5],highestenergy[5]*highestenergy[k5]);
382 HIST_Egamma1_openingAngle->Fill(highestenergy[5],
acos(cosTheta)*180/3.1415926535);
383 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[5]*highestenergy[k5]);
390 if (NumberOfClusters>0)
391 HISTnumberOfClusters->Fill(NumberOfClusters);
393 HISTclustNo->Fill(ClustNo);
394 if (ndigisOfHighestEnergyCluster>0)
395 HISTndigisOfHighestEnergyCluster->Fill(ndigisOfHighestEnergyCluster);
397 HISTtotdigis_fromClusterAnalysis->Fill(totdigis_fromClusterAnalysis);
400 cout<<
"Evt. No. "<< j<<endl;
408 gStyle->SetPalette(1);
511 TCanvas*
c10 =
new TCanvas(
"c10",
"", 100, 100, 1200, 800);
513 c10->cd(1)->SetLogy();
514 HISTinvariantMass->Draw();
515 c10->cd(2)->SetLogy();
516 HIST_Egamma1Egamma2->Draw();
517 c10->cd(3)->SetLogz();
518 HIST_Egamma1vsEgamma2->Draw(
"colz");
519 c10->cd(4)->SetLogz();
520 HISTinvariantMass_openingAngle->Draw(
"colz");
521 c10->cd(5)->SetLogz();
522 HIST_Egamma1Egamma2_openingAngle->Draw(
"colz");
523 c10->cd(6)->SetLogz();
524 HIST_Egamma1_openingAngle->Draw(
"colz");
525 c10->cd(7)->SetLogz();
526 HIST_Egamma1_Egamma1Egamma2->Draw(
"colz");
527 c10->cd(8)->SetLogz();
528 HISTinvariantMass_Egamma1Egamma2->Draw(
"colz");
530 TCanvas* c100 =
new TCanvas(
"c100",
"", 100, 100, 1200, 800);
531 HISTinvariantMass_openingAngle_Egamma1Egamma2->Draw(
"Box");
532 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetXaxis()->SetTitle(
"m_{#gamma#gamma}");
533 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetXaxis()->SetTitleOffset(1.5);
534 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetYaxis()->SetTitle(
"opening angle");
535 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetYaxis()->SetTitleOffset(1.5);
536 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetZaxis()->SetTitle(
"E_{#gamma1} #times E_{#gamma2}");
537 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetZaxis()->SetTitleOffset(1.1);
540 TString outfile=
"./invMass_histo_allGammasAnalysis_onlyFwEndCapIncluded_GetEnergyCorrected.root";
541 TFile* file_out =
new TFile(outfile,
"RECREATE");
543 HISTinvariantMass->Write();
544 HISTinvariantMass_openingAngle->Write();
545 HIST_Egamma1Egamma2->Write();
546 HIST_Egamma1vsEgamma2->Write();
547 HIST_Egamma1Egamma2_openingAngle->Write();
548 HISTinvariantMass_Egamma1Egamma2->Write();
549 HIST_Egamma1_Egamma1Egamma2->Write();
550 HIST_Egamma1_openingAngle->Write();
551 HISTinvariantMass_openingAngle_Egamma1Egamma2->Write();
558 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
friend F32vec4 acos(const F32vec4 &a)
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
Short_t GetModule() const
friend F32vec4 sqrt(const F32vec4 &a)
TClonesArray * digi_array
TVector3 GetMomentum() const
int analysis_digi_cluster_allGammasAnalysis_fwendcap()
TClonesArray * cluster_array
a cluster (group of neighboring crystals) of hit emc crystals
Int_t NumberOfDigis() const
Double_t GetEnergyCorrected() const
TClonesArray * bump_array
TClonesArray * mctrack_array