25 const Int_t xNbin = 3000;
28 const Int_t yNbin = 3000;
31 const Int_t zNbin = 4000;
34 const Int_t rNbin = 3000;
36 const Float_t distMax = +1200.0;
37 const Int_t distNbin = 4000;
39 const Float_t thetaMax = +180.0;
40 const Int_t thetaNbin = 3000;
43 const Int_t phiNbin = 3000;
46 const Int_t etaNbin = 3000;
48 TH2F* hXY =
new TH2F(
"hXY",
"Material budget in the BM@N", xNbin, xMin, xMax, yNbin, yMin, yMax);
49 TH2F* hXZ =
new TH2F(
"hXZ",
"Material budget in the BM@N", zNbin, zMin, zMax, xNbin, xMin, xMax);
50 TH2F* hXR =
new TH2F(
"hXR",
"Material budget in the BM@N", xNbin, xMin, xMax, rNbin, rMin, rMax);
51 TH2F* hXDist =
new TH2F(
"hXDist",
"Material budget in the BM@N", xNbin, xMin, xMax, distNbin, distMin, distMax);
53 new TH2F(
"hXTheta",
"Material budget in the BM@N", xNbin, xMin, xMax, thetaNbin, thetaMin, thetaMax);
54 TH2F* hXPhi =
new TH2F(
"hXPhi",
"Material budget in the BM@N", xNbin, xMin, xMax, phiNbin, phiMin, phiMax);
55 TH2F* hXEta =
new TH2F(
"hXEta",
"Material budget in the BM@N", xNbin, xMin, xMax, etaNbin, etaMin, etaMax);
57 TH2F* hYZ =
new TH2F(
"hYZ",
"Material budget in the BM@N", zNbin, zMin, zMax, yNbin, yMin, yMax);
58 TH2F* hYR =
new TH2F(
"hYR",
"Material budget in the BM@N", yNbin, yMin, yMax, rNbin, rMin, rMax);
59 TH2F* hYDist =
new TH2F(
"hYDist",
"Material budget in the BM@N", yNbin, yMin, yMax, distNbin, distMin, distMax);
61 new TH2F(
"hYTheta",
"Material budget in the BM@N", yNbin, yMin, yMax, thetaNbin, thetaMin, thetaMax);
62 TH2F* hYPhi =
new TH2F(
"hYPhi",
"Material budget in the BM@N", yNbin, yMin, yMax, phiNbin, phiMin, phiMax);
63 TH2F* hYEta =
new TH2F(
"hYEta",
"Material budget in the BM@N", yNbin, yMin, yMax, etaNbin, etaMin, etaMax);
65 TH2F* hZR =
new TH2F(
"hZR",
"Material budget in the BM@N", zNbin, zMin, zMax, rNbin, rMin, rMax);
66 TH2F* hZDist =
new TH2F(
"hZDist",
"Material budget in the BM@N", zNbin, zMin, zMax, distNbin, distMin, distMax);
68 new TH2F(
"hZTheta",
"Material budget in the BM@N", zNbin, zMin, zMax, thetaNbin, thetaMin, thetaMax);
69 TH2F* hZPhi =
new TH2F(
"hZPhi",
"Material budget in the BM@N", zNbin, zMin, zMax, phiNbin, phiMin, phiMax);
70 TH2F* hZEta =
new TH2F(
"hZEta",
"Material budget in the BM@N", zNbin, zMin, zMax, etaNbin, etaMin, etaMax);
72 TH2F* hRDist =
new TH2F(
"hRDist",
"Material budget in the BM@N", rNbin, rMin, rMax, distNbin, distMin, distMax);
74 new TH2F(
"hRTheta",
"Material budget in the BM@N", rNbin, rMin, rMax, thetaNbin, thetaMin, thetaMax);
75 TH2F* hRPhi =
new TH2F(
"hRPhi",
"Material budget in the BM@N", rNbin, rMin, rMax, phiNbin, phiMin, phiMax);
76 TH2F* hREta =
new TH2F(
"hREta",
"Material budget in the BM@N", rNbin, rMin, rMax, etaNbin, etaMin, etaMax);
78 TH2F* hDistTheta =
new TH2F(
"hDistTheta",
"Material budget in the BM@N", distNbin, distMin, distMax, thetaNbin,
81 new TH2F(
"hDistPhi",
"Material budget in the BM@N", distNbin, distMin, distMax, phiNbin, phiMin, phiMax);
83 new TH2F(
"hDistEta",
"Material budget in the BM@N", distNbin, distMin, distMax, etaNbin, etaMin, etaMax);
86 new TH2F(
"hThetaPhi",
"Material budget in the BM@N", thetaNbin, thetaMin, thetaMax, phiNbin, phiMin, phiMax);
88 new TH2F(
"hThetaEta",
"Material budget in the BM@N", thetaNbin, thetaMin, thetaMax, etaNbin, etaMin, etaMax);
91 new TH2F(
"hPhiEta",
"Material budget in the BM@N", phiNbin, phiMin, phiMax, etaNbin, etaMin, etaMax);
136 cout <<
" Processing RadLenSimZR..." << endl;
137 cout <<
" Number of events in file = " << events << endl;
141 for (
Int_t iEv = 0; iEv < events; iEv++) {
146 for (
Int_t pointIndex = 0; pointIndex < fNpoints; pointIndex++) {
147 FairRadLenPoint* RadLenP = (FairRadLenPoint*)fRadLenPs->
At(pointIndex);
148 Float_t Len = RadLenP->GetRadLength();
149 PosIn = RadLenP->GetPosition();
150 PosOut = RadLenP->GetPositionOut();
151 DistVec = PosIn - PosOut;
176 hXY->
Fill(X, Y, LenEff);
177 hXZ->
Fill(Z, X, LenEff);
178 hXR->
Fill(X,
R, LenEff);
180 hXTheta->
Fill(X, Theta, LenEff);
181 hXPhi->
Fill(X, Phi, LenEff);
182 hXEta->
Fill(X, Eta, LenEff);
183 hYZ->
Fill(Z, Y, LenEff);
184 hYR->
Fill(Y,
R, LenEff);
186 hYTheta->
Fill(Y, Theta, LenEff);
187 hYPhi->
Fill(Y, Phi, LenEff);
188 hYEta->
Fill(Y, Eta, LenEff);
189 hZR->
Fill(Z,
R, LenEff);
191 hZTheta->
Fill(Z, Theta, LenEff);
192 hZPhi->
Fill(Z, Phi, LenEff);
193 hZEta->
Fill(Z, Eta, LenEff);
195 hRTheta->
Fill(
R, Theta, LenEff);
196 hRPhi->
Fill(
R, Phi, LenEff);
197 hREta->
Fill(
R, Eta, LenEff);
198 hDistTheta->
Fill(
Dist, Theta, LenEff);
201 hThetaPhi->
Fill(Theta, Phi, LenEff);
202 hThetaEta->
Fill(Theta, Eta, LenEff);
203 hPhiEta->
Fill(Phi, Eta, LenEff);
208 cout << iEv + 1 <<
" out of " << events <<
" events processed" << endl;
351 DrawHisto(hXDist,
"X, cm",
"Distance from IP, cm");
352 DrawHisto(hXTheta,
"X, cm",
"#theta, deg");
357 DrawHisto(hYDist,
"Y, cm",
"Distance from IP, cm");
358 DrawHisto(hYTheta,
"Y, cm",
"#theta, deg");
362 DrawHisto(hZDist,
"Z, cm",
"Distance from IP, cm");
363 DrawHisto(hZTheta,
"Z, cm",
"#theta, deg");
366 DrawHisto(hRDist,
"R, cm",
"Distance from IP, cm");
367 DrawHisto(hRTheta,
"R, cm",
"#theta, deg");
370 DrawHisto(hDistTheta,
"Distance from IP, cm",
"#theta, deg");
371 DrawHisto(hDistPhi,
"Distance from IP, cm",
"#phi, deg");
372 DrawHisto(hDistEta,
"Distance from IP, cm",
"#eta");
373 DrawHisto(hThetaPhi,
"#theta, deg",
"#phi, deg");
374 DrawHisto(hThetaEta,
"#theta, deg",
"#eta");