highestenergy_sumOfclusters += highestenergy[k]; if (k==NumberOfClusters_noModule5-1) //eventually write the summation of the cluster enegies
11 gROOT->LoadMacro(
"$VMCWORKDIR/macro/mvd/Tools.C");
12 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
14 TFile*
fsim =
new TFile(
"/home/moini/myPandaRoot/myCodes/ROOTfiles/h_c_channel/emc_complete_fullEMC.root");
16 TTree *
tsim=(TTree *) fsim->Get(
"pndsim") ;
18 tsim->SetBranchAddress(
"MCTrack",&mctrack_array);
20 TClonesArray*
digi_array=
new TClonesArray(
"PndEmcDigi");
21 tsim->SetBranchAddress(
"EmcDigi",&digi_array);
23 TClonesArray*
cluster_array=
new TClonesArray(
"PndEmcCluster");
24 tsim->SetBranchAddress(
"EmcCluster",&cluster_array);
26 TClonesArray*
bump_array=
new TClonesArray(
"PndEmcBump");
27 tsim->SetBranchAddress(
"EmcBump",&bump_array);
35 TH1F *
hene_mc=
new TH1F(
"hene_mc",
"MC energy (GeV)",100,0.0,1.05);
36 TH1F *
h10=
new TH1F(
"h10",
" Theta (MC)",180,0.,180.);
37 TH1F *
h20=
new TH1F(
"h20",
" Phi (MC)",360,0.,360.);
38 TH1F *
h10d=
new TH1F(
"h10d",
" Theta (data)",180,0.,180.);
39 TH1F *
h20d=
new TH1F(
"h20d",
" Phi (data)",360,0.,360.);
40 TH1F *
h1=
new TH1F(
"h1",
" Theta difference",100,-2.,2.);
41 TH1F *
h2=
new TH1F(
"h2",
" Phi difference",100,-2.,2.);
43 Int_t
ncounts = tsim->GetEntriesFast();
44 cout <<
"Number of events = " << ncounts<< endl;
48 TH1F *HISTdigi_ene=
new TH1F(
"HISTdigi_ene",
"FwEndCap energy (digi)",2000,0.0,2.05);
49 TH1F *HISTene_d=
new TH1F(
"HISTene_d",
"energy (digi)",1000,0.0001,1.01);
50 TH2F *HISTxpad_x_d =
new TH2F(
"HISTxpad_x_d",
"xpad vs x (digi)",200,200,300,2*38.5,-38.5,38.5);
51 TH2F *HISTypad_y_d =
new TH2F(
"HISTypad_y_d",
"ypad vs y (digi)",200,200,300,2*38.5,-38.5,38.5);
52 TH2F *HISTrow_x_d =
new TH2F(
"HISTrow_x_d",
"row vs x (digi)",200,200,300,2*38.5,-38.5,38.5);
53 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);
54 TH2F *HISTy_x_d =
new TH2F(
"HISTy_x_d",
"y vs x (digi map)",200,200,300,200,200,300);
55 TH1F *HISTOdigi_ene11_12=
new TH1F(
"HISTOdigi_ene11_12",
"crystal [11,12] dep. energy (GeV)",100,0.0001,1.01);
56 TH1F *HISTOdigi_ene12_12=
new TH1F(
"HISTOdigi_ene12_12",
"crystal [12,12] dep. energy (GeV)",100,0.0001,1.01);
57 TH1F *HISTOdigi_ene13_12=
new TH1F(
"HISTOdigi_ene13_12",
"crystal [13,12] dep. energy (GeV)",100,0.0001,1.01);
58 TH1F *HISTOdigi_ene14_12=
new TH1F(
"HISTOdigi_ene14_12",
"crystal [14,12] dep. energy (GeV)",100,0.0001,1.01);
59 TH1F *HISTtotdigis_fromClusterAnalysis =
new TH1F(
"HISTtotdigis_fromClusterAnalysis",
"total number of digis per event",100,0,25);
60 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);
61 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);
63 TH1I *HISTnumberOfClusters =
new TH1I(
"HISTnumberOfClusters",
"Total number of clusters per event, having more than or equal to one digi per cluster",100,0,20);
64 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);
65 TH1I *HISTndigisOfHighestEnergyCluster =
new TH1I(
"HISTndigisOfHighestEnergyCluster",
"Number of digis per event for clusters with highest energy deposition",1000,0,30);
66 TH1F *HISTmax_cluster_energy=
new TH1F(
"HISTOmax_cluster_energy",
"Maximum cluster energy deposition per event",500,0.,1.05);
67 TH1F *HISTmax_cluster_theta =
new TH1F(
"HISTmax_cluster_theta",
"#theta per event of the cluster with maximum deposition energy",100,0,30);
68 TH1F *HISTmax_cluster_phi =
new TH1F(
"HISTmax_cluster_phi",
"#phi per event of the cluster with maximum deposition energy",370,-185,185);
69 TH1F *HISTmax_cluster_x =
new TH1F(
"HISTmax_cluster_x",
"x per event of the cluster with maximum deposition energy",220,-110,110);
70 TH1F *HISTmax_cluster_y =
new TH1F(
"HISTmax_cluster_y",
"y per event of the cluster with maximum deposition energy",220,-110,110);
71 TH1F *HISTmax_cluster_z =
new TH1F(
"HISTmax_cluster_z",
"z per event of the cluster with maximum deposition energy",80,208,216);
72 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);
73 TH1F *HISTtheta_MonteCarlo =
new TH1F(
"HISTtheta_MonteCarlo",
"Monte Carlo #theta per event of the cluster with maximum deposition energy",100,0,30);
74 TH1F *HISTphi_MonteCarlo =
new TH1F(
"HISTphi_MonteCarlo",
"Monte Carlo #phi per event of the cluster with maximum deposition energy",370,-185,185);
75 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);
76 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);
77 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);
78 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);
79 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);
80 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);
81 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);
82 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);
83 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);
84 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);
86 TH1F *HISTinvariantMass =
new TH1F(
"HISTinvariantMass",
"invariant mass of every two clusters",3200,0.,3.2);
87 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,500,0,180);
88 TH1F *HIST_Egamma1Egamma2 =
new TH1F(
"HIST_Egamma1Egamma2",
"E_{#gamma1} #times E_{#gamma2}",8000,0,8.);
89 TH2F *HIST_Egamma1vsEgamma2 =
new TH2F(
"HIST_Egamma1vsEgamma2",
"E_{#gamma2} versus E_{#gamma1}",6400,0,6.4,3200,0,3.2);
90 TH2F *HIST_Egamma1Egamma2_openingAngle =
new TH2F(
"HIST_Egamma1Egamma2_openingAngle",
"opening angle of the two clusters versus E_{#gamma1} #times E_{#gamma2}",8000,0,8.,500,0,180);
91 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.);
92 TH2F *HIST_Egamma1_Egamma1Egamma2 =
new TH2F(
"HIST_Egamma1_Egamma1Egamma2",
"E_{#gamma1} #times E_{#gamma2} versus E_{#gamma1}",6400,0,6.4,8000,0,8.);
93 TH2F *HIST_Egamma1_openingAngle =
new TH2F(
"HIST_Egamma1_openingAngle",
"opening angle of the two clusters versus E_{#gamma1}",6400,0,6.4,500,0,180);
94 TH3F *HISTinvariantMass_openingAngle_Egamma1Egamma2 =
new TH3F(
"HISTinvariantMass_openingAngle_Egamma1Egamma2",
"",150,0,1.5,140,0,50,400,0,4.);
96 TH1F *moduleDistribution =
new TH1F(
"moduleDistribution",
"Module distribution of clusters for the decay channel h_{c}-> #pi^{0} #pi^{0} #eta #gamma",12,0,6);
99 Int_t efficiencyCounter_d=0;
100 Int_t atLeastOneHitPerEventCounter_d=0;
103 for (
int j = 0; j <
ncounts; j++) {
105 Int_t efficiencyFlag10MeV_d=0;
106 Int_t efficiencyFlag5MeV_d=0;
107 Int_t atLeastOneHitPerEventFlag_d=0;
114 theta_mc=photon_momentum.Theta()*(180./
TMath::Pi());
115 phi_mc=photon_momentum.Phi()*(180./
TMath::Pi());
195 Int_t NumberOfClusters, ClustNo, totdigis_fromClusterAnalysis, ndigisOfHighestEnergyCluster, NumberOfClusters_noModule5;
196 NumberOfClusters=ClustNo=totdigis_fromClusterAnalysis=ndigisOfHighestEnergyCluster=NumberOfClusters_noModule5=0;
197 Int_t idClusterSatisfiedThresholdEnergy=-1;
199 Double_t highestenergy_sumOfclusters=0;
201 std::vector <double> highestenergy;
202 std::vector <double> cluster_x;
203 std::vector <double> cluster_y;
204 std::vector <double> cluster_z;
205 std::vector <double> cluster_dist;
206 std::vector <double> cluster_module;
207 std::vector <double> originalClusterIndex;
209 if (cluster_array->GetEntriesFast() > 0)
211 NumberOfClusters=cluster_array->GetEntriesFast();
212 totClusters+=NumberOfClusters;
213 std::vector <double> clusterEnergies;
214 std::vector <double> clusterEnergies_original;
216 for (Int_t
i=0;
i<NumberOfClusters;
i++)
221 NumberOfClusters_noModule5++;
224 moduleDistribution->Fill(cluster->
GetModule());
227 clusterEnergies.push_back(cluster_energy);
228 clusterEnergies_original.push_back(cluster_energy);
231 totdigis_fromClusterAnalysis +=
ndigi;
232 if (ndigi >= 1 && cluster_energy >= clusterThresholdEnergy)
239 std::sort(clusterEnergies.begin(), clusterEnergies.end());
241 if (NumberOfClusters_noModule5>=7)
243 for (
int k=0; k<NumberOfClusters_noModule5; k++)
245 highestenergy.push_back(clusterEnergies[(NumberOfClusters_noModule5-1)-k]);
251 for (
int i=0;
i<NumberOfClusters_noModule5;
i++)
252 if (!(clusterEnergies_original[
i]>highestenergy[k]) && !(clusterEnergies_original[
i]<highestenergy[k]))
254 originalClusterIndex.push_back(
i);
259 TVector3 cluster_pos=cluster->
where();
260 cluster_x.push_back(cluster->
x());
261 cluster_y.push_back(cluster->
y());
262 cluster_z.push_back(cluster->
z());
263 cluster_dist.push_back(cluster_pos.Mag());
264 cluster_module.push_back(cluster->
GetModule());
267 for (
int k0=1; k0<NumberOfClusters_noModule5; k0++)
271 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]);
272 Double_t invMass =
sqrt(2*highestenergy[0]*highestenergy[k0]*(1-cosTheta));
273 HISTinvariantMass->Fill(invMass);
274 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
275 HIST_Egamma1Egamma2->Fill(highestenergy[0]*highestenergy[k0]);
276 HIST_Egamma1vsEgamma2->Fill(highestenergy[0],highestenergy[k0]);
277 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[0]*highestenergy[k0],
acos(cosTheta)*180/3.1415926535);
278 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[0]*highestenergy[k0]);
279 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[0],highestenergy[0]*highestenergy[k0]);
280 HIST_Egamma1_openingAngle->Fill(highestenergy[0],
acos(cosTheta)*180/3.1415926535);
281 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[0]*highestenergy[k0]);
284 for (
int k1=2; k1<NumberOfClusters_noModule5; k1++)
288 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]);
289 Double_t invMass =
sqrt(2*highestenergy[1]*highestenergy[k1]*(1-cosTheta));
290 HISTinvariantMass->Fill(invMass);
291 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
292 HIST_Egamma1Egamma2->Fill(highestenergy[1]*highestenergy[k1]);
293 HIST_Egamma1vsEgamma2->Fill(highestenergy[1],highestenergy[k1]);
294 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[1]*highestenergy[k1],
acos(cosTheta)*180/3.1415926535);
295 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[1]*highestenergy[k1]);
296 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[1],highestenergy[1]*highestenergy[k1]);
297 HIST_Egamma1_openingAngle->Fill(highestenergy[1],
acos(cosTheta)*180/3.1415926535);
298 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[1]*highestenergy[k1]);
301 for (
int k2=3; k2<NumberOfClusters_noModule5; k2++)
305 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]);
306 Double_t invMass =
sqrt(2*highestenergy[2]*highestenergy[k2]*(1-cosTheta));
307 HISTinvariantMass->Fill(invMass);
308 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
309 HIST_Egamma1Egamma2->Fill(highestenergy[2]*highestenergy[k2]);
310 HIST_Egamma1vsEgamma2->Fill(highestenergy[2],highestenergy[k2]);
311 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[2]*highestenergy[k2],
acos(cosTheta)*180/3.1415926535);
312 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[2]*highestenergy[k2]);
313 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[2],highestenergy[2]*highestenergy[k2]);
314 HIST_Egamma1_openingAngle->Fill(highestenergy[2],
acos(cosTheta)*180/3.1415926535);
315 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[2]*highestenergy[k2]);
318 for (
int k3=4; k3<NumberOfClusters_noModule5; k3++)
322 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]);
323 Double_t invMass =
sqrt(2*highestenergy[3]*highestenergy[k3]*(1-cosTheta));
324 HISTinvariantMass->Fill(invMass);
325 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
326 HIST_Egamma1Egamma2->Fill(highestenergy[3]*highestenergy[k3]);
327 HIST_Egamma1vsEgamma2->Fill(highestenergy[3],highestenergy[k3]);
328 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[3]*highestenergy[k3],
acos(cosTheta)*180/3.1415926535);
329 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[3]*highestenergy[k3]);
330 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[3],highestenergy[3]*highestenergy[k3]);
331 HIST_Egamma1_openingAngle->Fill(highestenergy[3],
acos(cosTheta)*180/3.1415926535);
332 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[3]*highestenergy[k3]);
335 for (
int k4=5; k4<NumberOfClusters_noModule5; k4++)
339 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]);
340 Double_t invMass =
sqrt(2*highestenergy[4]*highestenergy[k4]*(1-cosTheta));
341 HISTinvariantMass->Fill(invMass);
342 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
343 HIST_Egamma1Egamma2->Fill(highestenergy[4]*highestenergy[k4]);
344 HIST_Egamma1vsEgamma2->Fill(highestenergy[4],highestenergy[k4]);
345 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[4]*highestenergy[k4],
acos(cosTheta)*180/3.1415926535);
346 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[4]*highestenergy[k4]);
347 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[4],highestenergy[4]*highestenergy[k4]);
348 HIST_Egamma1_openingAngle->Fill(highestenergy[4],
acos(cosTheta)*180/3.1415926535);
349 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[4]*highestenergy[k4]);
352 for (
int k5=6; k5<NumberOfClusters_noModule5; k5++)
356 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]);
357 Double_t invMass =
sqrt(2*highestenergy[5]*highestenergy[k5]*(1-cosTheta));
358 HISTinvariantMass->Fill(invMass);
359 HISTinvariantMass_openingAngle->Fill(invMass,
acos(cosTheta)*180/3.1415926535);
360 HIST_Egamma1Egamma2->Fill(highestenergy[5]*highestenergy[k5]);
361 HIST_Egamma1vsEgamma2->Fill(highestenergy[5],highestenergy[k5]);
362 HIST_Egamma1Egamma2_openingAngle->Fill(highestenergy[5]*highestenergy[k5],
acos(cosTheta)*180/3.1415926535);
363 HISTinvariantMass_Egamma1Egamma2->Fill(invMass,highestenergy[5]*highestenergy[k5]);
364 HIST_Egamma1_Egamma1Egamma2->Fill(highestenergy[5],highestenergy[5]*highestenergy[k5]);
365 HIST_Egamma1_openingAngle->Fill(highestenergy[5],
acos(cosTheta)*180/3.1415926535);
366 HISTinvariantMass_openingAngle_Egamma1Egamma2->Fill(invMass,
acos(cosTheta)*180/3.1415926535,highestenergy[5]*highestenergy[k5]);
374 if (NumberOfClusters>0)
375 HISTnumberOfClusters->Fill(NumberOfClusters);
377 HISTclustNo->Fill(ClustNo);
378 if (ndigisOfHighestEnergyCluster>0)
379 HISTndigisOfHighestEnergyCluster->Fill(ndigisOfHighestEnergyCluster);
381 HISTtotdigis_fromClusterAnalysis->Fill(totdigis_fromClusterAnalysis);
384 cout<<
"Evt. No. "<< j<<endl;
389 cout<<
"totClusters = "<<totClusters<<endl;
391 gStyle->SetPalette(1);
493 TCanvas*
c10 =
new TCanvas(
"c10",
"", 100, 100, 1200, 800);
495 c10->cd(1)->SetLogy();
496 HISTinvariantMass->Draw();
497 c10->cd(2)->SetLogy();
498 HIST_Egamma1Egamma2->Draw();
499 c10->cd(3)->SetLogz();
500 HIST_Egamma1vsEgamma2->Draw(
"colz");
501 c10->cd(4)->SetLogz();
502 HISTinvariantMass_openingAngle->Draw(
"colz");
503 c10->cd(5)->SetLogz();
504 HIST_Egamma1Egamma2_openingAngle->Draw(
"colz");
505 c10->cd(6)->SetLogz();
506 HIST_Egamma1_openingAngle->Draw(
"colz");
507 c10->cd(7)->SetLogz();
508 HIST_Egamma1_Egamma1Egamma2->Draw(
"colz");
509 c10->cd(8)->SetLogz();
510 HISTinvariantMass_Egamma1Egamma2->Draw(
"colz");
512 TCanvas* c100 =
new TCanvas(
"c100",
"", 100, 100, 1200, 800);
513 HISTinvariantMass_openingAngle_Egamma1Egamma2->Draw(
"Box");
514 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetXaxis()->SetTitle(
"m_{#gamma#gamma}");
515 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetXaxis()->SetTitleOffset(1.5);
516 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetYaxis()->SetTitle(
"opening angle");
517 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetYaxis()->SetTitleOffset(1.5);
518 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetZaxis()->SetTitle(
"E_{#gamma1} #times E_{#gamma2}");
519 HISTinvariantMass_openingAngle_Egamma1Egamma2->GetZaxis()->SetTitleOffset(1.1);
522 TCanvas*
c11 =
new TCanvas(
"c11",
"", 100, 100, 1200, 800);
524 moduleDistribution->Draw();
527 TString outfile=
"./invMass_histo_allGammasAnalysis_FullEmcIncluded_GetEnergyCorrected.root";
528 TFile* file_out =
new TFile(outfile,
"RECREATE");
530 HISTinvariantMass->Write();
531 HISTinvariantMass_openingAngle->Write();
532 HIST_Egamma1Egamma2->Write();
533 HIST_Egamma1vsEgamma2->Write();
534 HIST_Egamma1Egamma2_openingAngle->Write();
535 HISTinvariantMass_Egamma1Egamma2->Write();
536 HIST_Egamma1_Egamma1Egamma2->Write();
537 HIST_Egamma1_openingAngle->Write();
538 HISTinvariantMass_openingAngle_Egamma1Egamma2->Write();
545 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
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