CMS 3D CMS Logo

MaterialBudgetHGCalHistos.cc
Go to the documentation of this file.
3 
4 template <class T>
5 const T& max(const T& a, const T& b) {
6  return (b < a) ? a : b; // or: return comp(b,a)?a:b; for the comp version
7 }
8 
9 MaterialBudgetHGCalHistos::MaterialBudgetHGCalHistos(std::shared_ptr<MaterialBudgetData> data,
10  std::shared_ptr<TestHistoMgr> mgr,
11  const std::string& fileName,
12  double minZ,
13  double maxZ,
14  int nintZ,
15  double rMin,
16  double rMax,
17  int nrbin,
18  double etaMin,
19  double etaMax,
20  int netabin,
21  double phiMin,
22  double phiMax,
23  int nphibin,
24  double RMin,
25  double RMax,
26  int nRbin)
28  hmgr(mgr),
29  zMin_(minZ),
30  zMax_(maxZ),
31  nzbin_(nintZ),
32  rMin_(rMin),
33  rMax_(rMax),
34  nrbin_(nrbin),
35  etaMin_(etaMin),
36  etaMax_(etaMax),
37  netabin_(netabin),
38  phiMin_(phiMin),
39  phiMax_(phiMax),
40  nphibin_(nphibin),
41  RMin_(RMin),
42  RMax_(RMax),
43  nRbin_(nRbin)
44 
45 {
47  book();
48 }
49 
51  std::cout << "=== booking user histos ===" << std::endl;
52 
53  // total X0
54  hmgr->addHistoProf1(new TProfile("10", "MB prof Eta;#eta;x/X_{0} ", netabin_, etaMin_, etaMax_));
55  hmgr->addHisto1(new TH1F("11", "Eta ", netabin_, etaMin_, etaMax_));
56  hmgr->addHistoProf1(new TProfile("20", "MB prof Phi;#varphi [rad];x/X_{0} ", nphibin_, phiMin_, phiMax_));
57  hmgr->addHisto1(new TH1F("21", "Phi ", nphibin_, phiMin_, phiMax_));
58  hmgr->addHistoProf2(new TProfile2D(
59  "30", "MB prof Eta Phi;#eta;#varphi;x/X_{0} ", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
60  hmgr->addHisto2(new TH2F("31", "Eta vs Phi ", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
61  hmgr->addHistoProf1(new TProfile("40", "MB prof R;R [mm];x/X_{0} ", nRbin_, RMin_, RMax_));
62  hmgr->addHisto1(new TH1F("41", "R ", nRbin_, RMin_, RMax_));
63  hmgr->addHistoProf2(
64  new TProfile2D("50", "MB prof sum R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
65  hmgr->addHisto2(new TH2F("999", "Tot track length for MB", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
66  hmgr->addHisto2(new TH2F("51", "R vs z ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
67  hmgr->addHistoProf2(new TProfile2D(
68  "52", "MB ortho prof sum R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
69  hmgr->addHisto2(
70  new TH2F("60", "MB prof local R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
71  hmgr->addHistoProf2(
72  new TProfile2D("70", "MB prof local R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
73  hmgr->addHistoProf2(new TProfile2D(
74  "72", "MB ortho prof local R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
75 
76  // Copper
77  hmgr->addHistoProf1(new TProfile("110", "MB prof Eta [Copper];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
78  hmgr->addHistoProf1(new TProfile("120", "MB prof Phi [Copper];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
79  hmgr->addHistoProf2(new TProfile2D(
80  "130", "MB prof Eta Phi [Copper];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
81  hmgr->addHistoProf1(new TProfile("140", "MB prof R [Copper];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
82  hmgr->addHistoProf2(new TProfile2D(
83  "150", "MB prof sum R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
84  hmgr->addHistoProf2(new TProfile2D(
85  "152", "MB ortho prof sum R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
86  hmgr->addHisto2(new TH2F(
87  "160", "MB prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
88  hmgr->addHistoProf2(new TProfile2D(
89  "170", "MB prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
90  hmgr->addHistoProf2(new TProfile2D(
91  "172", "MB ortho prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
92 
93  // H_Scintillator
94  hmgr->addHistoProf1(new TProfile("210", "MB prof Eta [Scintillator];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
95  hmgr->addHistoProf1(
96  new TProfile("220", "MB prof Phi [Scintillator];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
97  hmgr->addHistoProf2(new TProfile2D("230",
98  "MB prof Eta Phi [Scintillator];#eta;#varphi;x/X_{0}",
99  netabin_,
100  etaMin_,
101  etaMax_,
102  nphibin_,
103  phiMin_,
104  phiMax_));
105  hmgr->addHistoProf1(new TProfile("240", "MB prof R [Scintillator];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
106  hmgr->addHistoProf2(new TProfile2D(
107  "250", "MB prof sum R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
108  hmgr->addHistoProf2(new TProfile2D(
109  "252", "MB ortho prof sum R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
110  hmgr->addHisto2(new TH2F(
111  "260", "MB prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
112  hmgr->addHistoProf2(new TProfile2D(
113  "270", "MB prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
114  hmgr->addHistoProf2(new TProfile2D("272",
115  "MB ortho prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ",
116  nzbin_,
117  zMin_,
118  zMax_,
119  nrbin_,
120  rMin_,
121  rMax_));
122 
123  // Cables
124  hmgr->addHistoProf1(new TProfile("310", "MB prof Eta [Cables];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
125  hmgr->addHistoProf1(new TProfile("320", "MB prof Phi [Cables];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
126  hmgr->addHistoProf2(new TProfile2D(
127  "330", "MB prof Eta Phi [Cables];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
128  hmgr->addHistoProf1(new TProfile("340", "MB prof R [Cables];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
129  hmgr->addHistoProf2(new TProfile2D(
130  "350", "MB prof sum R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
131  hmgr->addHistoProf2(new TProfile2D(
132  "352", "MB ortho prof sum R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
133  hmgr->addHisto2(new TH2F(
134  "360", "MB prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
135  hmgr->addHistoProf2(new TProfile2D(
136  "370", "MB prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
137  hmgr->addHistoProf2(new TProfile2D(
138  "372", "MB ortho prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
139 
140  // HGC_G10_FR4
141  hmgr->addHistoProf1(new TProfile("410", "MB prof Eta [HGC_G10_FR4];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
142  hmgr->addHistoProf1(
143  new TProfile("420", "MB prof Phi [HGC_G10_FR4];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
144  hmgr->addHistoProf2(new TProfile2D("430",
145  "MB prof Eta Phi [HGC_G10_FR4];#eta;#varphi;x/X_{0}",
146  netabin_,
147  etaMin_,
148  etaMax_,
149  nphibin_,
150  phiMin_,
151  phiMax_));
152  hmgr->addHistoProf1(new TProfile("440", "MB prof R [HGC_G10_FR4];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
153  hmgr->addHistoProf2(new TProfile2D(
154  "450", "MB prof sum R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
155  hmgr->addHistoProf2(new TProfile2D(
156  "452", "MB ortho prof sum R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
157  hmgr->addHisto2(new TH2F(
158  "460", "MB prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
159  hmgr->addHistoProf2(new TProfile2D(
160  "470", "MB prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
161  hmgr->addHistoProf2(new TProfile2D("472",
162  "MB ortho prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ",
163  nzbin_,
164  zMin_,
165  zMax_,
166  nrbin_,
167  rMin_,
168  rMax_));
169 
170  // Silicon
171  hmgr->addHistoProf1(new TProfile("510", "MB prof Eta [Silicon];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
172  hmgr->addHistoProf1(new TProfile("520", "MB prof Phi [Silicon];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
173  hmgr->addHistoProf2(new TProfile2D(
174  "530", "MB prof Eta Phi [Silicon];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
175  hmgr->addHistoProf1(new TProfile("540", "MB prof R [Silicon];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
176  hmgr->addHistoProf2(new TProfile2D(
177  "550", "MB prof sum R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
178  hmgr->addHistoProf2(new TProfile2D(
179  "552", "MB ortho prof sum R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
180  hmgr->addHisto2(new TH2F(
181  "560", "MB prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
182  hmgr->addHistoProf2(new TProfile2D(
183  "570", "MB prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
184  hmgr->addHistoProf2(new TProfile2D(
185  "572", "MB ortho prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
186 
187  // Other
188  hmgr->addHistoProf1(new TProfile("610", "MB prof Eta [Other];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
189  hmgr->addHistoProf1(new TProfile("620", "MB prof Phi [Other];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
190  hmgr->addHistoProf2(new TProfile2D(
191  "630", "MB prof Eta Phi [Other];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
192  hmgr->addHistoProf1(new TProfile("640", "MB prof R [Other];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
193  hmgr->addHistoProf2(new TProfile2D(
194  "650", "MB prof sum R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
195  hmgr->addHistoProf2(new TProfile2D(
196  "652", "MB ortho prof sum R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
197  hmgr->addHisto2(
198  new TH2F("660", "MB prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
199  hmgr->addHistoProf2(new TProfile2D(
200  "670", "MB prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
201  hmgr->addHistoProf2(new TProfile2D(
202  "672", "MB ortho prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
203 
204  // Air
205  hmgr->addHistoProf1(new TProfile("710", "MB prof Eta [Air];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
206  hmgr->addHistoProf1(new TProfile("720", "MB prof Phi [Air];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
207  hmgr->addHistoProf2(new TProfile2D(
208  "730", "MB prof Eta Phi [Air];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
209  hmgr->addHistoProf1(new TProfile("740", "MB prof R [Air];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
210  hmgr->addHistoProf2(new TProfile2D(
211  "750", "MB prof sum R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
212  hmgr->addHistoProf2(new TProfile2D(
213  "752", "MB ortho prof sum R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
214  hmgr->addHisto2(
215  new TH2F("760", "MB prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
216  hmgr->addHistoProf2(new TProfile2D(
217  "770", "MB prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
218  hmgr->addHistoProf2(new TProfile2D(
219  "772", "MB ortho prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
220 
221  //StainlessSteel
222  hmgr->addHistoProf1(new TProfile("810", "MB prof Eta [StainlessSteel];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
223  hmgr->addHistoProf1(
224  new TProfile("820", "MB prof Phi [StainlessSteel];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
225  hmgr->addHistoProf2(new TProfile2D("830",
226  "MB prof Eta Phi [StainlessSteel];#eta;#varphi;x/X_{0}",
227  netabin_,
228  etaMin_,
229  etaMax_,
230  nphibin_,
231  phiMin_,
232  phiMax_));
233  hmgr->addHistoProf1(new TProfile("840", "MB prof R [StainlessSteel];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
234  hmgr->addHistoProf2(new TProfile2D(
235  "850", "MB prof sum R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
236  hmgr->addHistoProf2(new TProfile2D("852",
237  "MB ortho prof sum R z [StainlessSteel];z [mm];R [mm];x/X_{0} ",
238  nzbin_,
239  zMin_,
240  zMax_,
241  nrbin_,
242  rMin_,
243  rMax_));
244  hmgr->addHisto2(new TH2F(
245  "860", "MB prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
246  hmgr->addHistoProf2(new TProfile2D(
247  "870", "MB prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
248  hmgr->addHistoProf2(new TProfile2D("872",
249  "MB ortho prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ",
250  nzbin_,
251  zMin_,
252  zMax_,
253  nrbin_,
254  rMin_,
255  rMax_));
256 
257  //WCu
258  hmgr->addHistoProf1(new TProfile("910", "MB prof Eta [WCu];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
259  hmgr->addHistoProf1(new TProfile("920", "MB prof Phi [WCu];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
260  hmgr->addHistoProf2(new TProfile2D(
261  "930", "MB prof Eta Phi [WCu];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
262  hmgr->addHistoProf1(new TProfile("940", "MB prof R [WCu];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
263  hmgr->addHistoProf2(new TProfile2D(
264  "950", "MB prof sum R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
265  hmgr->addHistoProf2(new TProfile2D(
266  "952", "MB ortho prof sum R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
267  hmgr->addHisto2(
268  new TH2F("960", "MB prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
269  hmgr->addHistoProf2(new TProfile2D(
270  "970", "MB prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
271  hmgr->addHistoProf2(new TProfile2D(
272  "972", "MB ortho prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
273 
274  // Lead
275  hmgr->addHistoProf1(new TProfile("1010", "MB prof Eta [Lead];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
276  hmgr->addHistoProf1(new TProfile("1020", "MB prof Phi [Lead];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
277  hmgr->addHistoProf2(new TProfile2D(
278  "1030", "MB prof Eta Phi [Lead];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
279  hmgr->addHistoProf1(new TProfile("1040", "MB prof R [Lead];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
280  hmgr->addHistoProf2(new TProfile2D(
281  "1050", "MB prof sum R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
282  hmgr->addHistoProf2(new TProfile2D(
283  "1052", "MB ortho prof sum R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
284  hmgr->addHisto2(
285  new TH2F("1060", "MB prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
286  hmgr->addHistoProf2(new TProfile2D(
287  "1070", "MB prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
288  hmgr->addHistoProf2(new TProfile2D(
289  "1072", "MB ortho prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
290 
291  // Epoxy
292  hmgr->addHistoProf1(new TProfile("1110", "MB prof Eta [Epoxy];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
293  hmgr->addHistoProf1(new TProfile("1120", "MB prof Phi [Epoxy];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
294  hmgr->addHistoProf2(new TProfile2D(
295  "1130", "MB prof Eta Phi [Epoxy];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
296  hmgr->addHistoProf1(new TProfile("1140", "MB prof R [Epoxy];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
297  hmgr->addHistoProf2(new TProfile2D(
298  "1150", "MB prof sum R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
299  hmgr->addHistoProf2(new TProfile2D(
300  "1152", "MB ortho prof sum R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
301  hmgr->addHisto2(new TH2F(
302  "1160", "MB prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
303  hmgr->addHistoProf2(new TProfile2D(
304  "1170", "MB prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
305  hmgr->addHistoProf2(new TProfile2D(
306  "1172", "MB ortho prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
307 
308  // Kapton
309  hmgr->addHistoProf1(new TProfile("1210", "MB prof Eta [Kapton];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
310  hmgr->addHistoProf1(new TProfile("1220", "MB prof Phi [Kapton];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
311  hmgr->addHistoProf2(new TProfile2D(
312  "1230", "MB prof Eta Phi [Kapton];#eta;#varphi;x/X_{0}", netabin_, etaMin_, etaMax_, nphibin_, phiMin_, phiMax_));
313  hmgr->addHistoProf1(new TProfile("1240", "MB prof R [Kapton];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
314  hmgr->addHistoProf2(new TProfile2D(
315  "1250", "MB prof sum R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
316  hmgr->addHistoProf2(new TProfile2D(
317  "1252", "MB ortho prof sum R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
318  hmgr->addHisto2(new TH2F(
319  "1260", "MB prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
320  hmgr->addHistoProf2(new TProfile2D(
321  "1270", "MB prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
322  hmgr->addHistoProf2(new TProfile2D(
323  "1272", "MB ortho prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
324 
325  // Aluminium
326  hmgr->addHistoProf1(new TProfile("1310", "MB prof Eta [Aluminium];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
327  hmgr->addHistoProf1(
328  new TProfile("1320", "MB prof Phi [Aluminium];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
329  hmgr->addHistoProf2(new TProfile2D("1330",
330  "MB prof Eta Phi [Aluminium];#eta;#varphi;x/X_{0}",
331  netabin_,
332  etaMin_,
333  etaMax_,
334  nphibin_,
335  phiMin_,
336  phiMax_));
337  hmgr->addHistoProf1(new TProfile("1340", "MB prof R [Aluminium];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
338  hmgr->addHistoProf2(new TProfile2D(
339  "1350", "MB prof sum R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
340  hmgr->addHistoProf2(new TProfile2D(
341  "1352", "MB ortho prof sum R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
342  hmgr->addHisto2(new TH2F(
343  "1360", "MB prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
344  hmgr->addHistoProf2(new TProfile2D(
345  "1370", "MB prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
346  hmgr->addHistoProf2(new TProfile2D(
347  "1372", "MB ortho prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
348 
349  // Polystyrene
350  hmgr->addHistoProf1(new TProfile("1410", "MB prof Eta [Polystyrene];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
351  hmgr->addHistoProf1(
352  new TProfile("1420", "MB prof Phi [Polystyrene];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
353  hmgr->addHistoProf2(new TProfile2D("1430",
354  "MB prof Eta Phi [Polystyrene];#eta;#varphi;x/X_{0}",
355  netabin_,
356  etaMin_,
357  etaMax_,
358  nphibin_,
359  phiMin_,
360  phiMax_));
361  hmgr->addHistoProf1(new TProfile("1440", "MB prof R [Polystyrene];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
362  hmgr->addHistoProf2(new TProfile2D(
363  "1450", "MB prof sum R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
364  hmgr->addHistoProf2(new TProfile2D(
365  "1452", "MB ortho prof sum R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
366  hmgr->addHisto2(new TH2F(
367  "1460", "MB prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
368  hmgr->addHistoProf2(new TProfile2D(
369  "1470", "MB prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
370  hmgr->addHistoProf2(new TProfile2D("1472",
371  "MB ortho prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ",
372  nzbin_,
373  zMin_,
374  zMax_,
375  nrbin_,
376  rMin_,
377  rMax_));
378 
379  // HGC_EEConnector
380  hmgr->addHistoProf1(new TProfile("1510", "MB prof Eta [HGC_EEConnector];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
381  hmgr->addHistoProf1(
382  new TProfile("1520", "MB prof Phi [HGC_EEConnector];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
383  hmgr->addHistoProf2(new TProfile2D("1530",
384  "MB prof Eta Phi [HGC_EEConnector];#eta;#varphi;x/X_{0}",
385  netabin_,
386  etaMin_,
387  etaMax_,
388  nphibin_,
389  phiMin_,
390  phiMax_));
391  hmgr->addHistoProf1(new TProfile("1540", "MB prof R [HGC_EEConnector];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
392  hmgr->addHistoProf2(new TProfile2D(
393  "1550", "MB prof sum R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
394  hmgr->addHistoProf2(new TProfile2D("1552",
395  "MB ortho prof sum R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
396  nzbin_,
397  zMin_,
398  zMax_,
399  nrbin_,
400  rMin_,
401  rMax_));
402  hmgr->addHisto2(new TH2F(
403  "1560", "MB prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
404  hmgr->addHistoProf2(new TProfile2D(
405  "1570", "MB prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
406  hmgr->addHistoProf2(new TProfile2D("1572",
407  "MB ortho prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
408  nzbin_,
409  zMin_,
410  zMax_,
411  nrbin_,
412  rMin_,
413  rMax_));
414 
415  // HGC_HEConnector
416  hmgr->addHistoProf1(new TProfile("1610", "MB prof Eta [HGC_HEConnector];#eta;x/X_{0}", netabin_, etaMin_, etaMax_));
417  hmgr->addHistoProf1(
418  new TProfile("1620", "MB prof Phi [HGC_HEConnector];#varphi [rad];x/X_{0}", nphibin_, phiMin_, phiMax_));
419  hmgr->addHistoProf2(new TProfile2D("1630",
420  "MB prof Eta Phi [HGC_HEConnector];#eta;#varphi;x/X_{0}",
421  netabin_,
422  etaMin_,
423  etaMax_,
424  nphibin_,
425  phiMin_,
426  phiMax_));
427  hmgr->addHistoProf1(new TProfile("1640", "MB prof R [HGC_HEConnector];R [mm];x/X_{0}", nrbin_, RMin_, RMax_));
428  hmgr->addHistoProf2(new TProfile2D(
429  "1650", "MB prof sum R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
430  hmgr->addHistoProf2(new TProfile2D("1652",
431  "MB ortho prof sum R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
432  nzbin_,
433  zMin_,
434  zMax_,
435  nrbin_,
436  rMin_,
437  rMax_));
438  hmgr->addHisto2(new TH2F(
439  "1660", "MB prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
440  hmgr->addHistoProf2(new TProfile2D(
441  "1670", "MB prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
442  hmgr->addHistoProf2(new TProfile2D("1672",
443  "MB ortho prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
444  nzbin_,
445  zMin_,
446  zMax_,
447  nrbin_,
448  rMin_,
449  rMax_));
450 
451  //=========================================================================================================
452  // total Lambda0
453  hmgr->addHistoProf1(new TProfile("10010", "IL prof Eta;#eta;#lambda/#lambda_{0} ", netabin_, etaMin_, etaMax_));
454  hmgr->addHistoProf1(
455  new TProfile("10020", "IL prof Phi;#varphi [rad];#lambda/#lambda_{0} ", nphibin_, phiMin_, phiMax_));
456  hmgr->addHistoProf2(new TProfile2D("10030",
457  "IL prof Eta Phi;#eta;#varphi;#lambda/#lambda_{0} ",
458  netabin_,
459  etaMin_,
460  etaMax_,
461  nphibin_,
462  phiMin_,
463  phiMax_));
464 
465  // rr
466  hmgr->addHistoProf1(new TProfile("10040", "IL prof R;R [mm];#lambda/#lambda_{0} ", nrbin_, RMin_, RMax_));
467  hmgr->addHistoProf2(new TProfile2D(
468  "10050", "IL prof sum R z;z [mm];R [mm];#lambda/#lambda_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
469  hmgr->addHistoProf2(new TProfile2D(
470  "10052", "IL ortho prof sum R z;z [mm];R [mm];#lambda/#lambda_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
471  hmgr->addHisto2(new TH2F("1999", "Tot track length for l0", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
472  hmgr->addHisto2(
473  new TH2F("10060", "IL prof local R z;z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
474  hmgr->addHistoProf2(new TProfile2D(
475  "10070", "IL prof local R z;z [mm];R [mm];#lambda/#lambda_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
476  hmgr->addHistoProf2(new TProfile2D("10072",
477  "IL ortho prof local R z;z [mm];R [mm];#lambda/#lambda_{0} ",
478  nzbin_,
479  zMin_,
480  zMax_,
481  nrbin_,
482  rMin_,
483  rMax_));
484 
485  // Copper
486  hmgr->addHistoProf1(
487  new TProfile("10110", "IL prof Eta [Copper];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
488  hmgr->addHistoProf1(
489  new TProfile("10120", "IL prof Phi [Copper];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
490  hmgr->addHistoProf2(new TProfile2D("10130",
491  "IL prof Eta Phi [Copper];#eta;#varphi;#lambda/#lambda_{0}",
492  netabin_,
493  etaMin_,
494  etaMax_,
495  nphibin_,
496  phiMin_,
497  phiMax_));
498  hmgr->addHistoProf1(new TProfile("10140", "IL prof R [Copper];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
499  hmgr->addHistoProf2(new TProfile2D(
500  "10150", "IL prof sum R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
501  hmgr->addHistoProf2(new TProfile2D(
502  "10152", "IL ortho prof sum R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
503  hmgr->addHisto2(new TH2F(
504  "10160", "IL prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
505  hmgr->addHistoProf2(new TProfile2D(
506  "10170", "IL prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
507  hmgr->addHistoProf2(new TProfile2D(
508  "10172", "IL ortho prof local R z [Copper];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
509 
510  // H_Scintillator
511  hmgr->addHistoProf1(
512  new TProfile("10210", "IL prof Eta [Scintillator];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
513  hmgr->addHistoProf1(new TProfile(
514  "10220", "IL prof Phi [Scintillator];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
515  hmgr->addHistoProf2(new TProfile2D("10230",
516  "IL prof Eta Phi [Scintillator];#eta;#varphi;#lambda/#lambda_{0}",
517  netabin_,
518  etaMin_,
519  etaMax_,
520  nphibin_,
521  phiMin_,
522  phiMax_));
523  hmgr->addHistoProf1(
524  new TProfile("10240", "IL prof R [Scintillator];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
525  hmgr->addHistoProf2(new TProfile2D(
526  "10250", "IL prof sum R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
527  hmgr->addHistoProf2(new TProfile2D("10252",
528  "IL ortho prof sum R z [Scintillator];z [mm];R [mm];x/X_{0} ",
529  nzbin_,
530  zMin_,
531  zMax_,
532  nrbin_,
533  rMin_,
534  rMax_));
535  hmgr->addHisto2(new TH2F(
536  "10260", "IL prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
537  hmgr->addHistoProf2(new TProfile2D(
538  "10270", "IL prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
539  hmgr->addHistoProf2(new TProfile2D("10272",
540  "IL ortho prof local R z [Scintillator];z [mm];R [mm];x/X_{0} ",
541  nzbin_,
542  zMin_,
543  zMax_,
544  nrbin_,
545  rMin_,
546  rMax_));
547 
548  // Cables
549  hmgr->addHistoProf1(
550  new TProfile("10310", "IL prof Eta [Cables];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
551  hmgr->addHistoProf1(
552  new TProfile("10320", "IL prof Phi [Cables];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
553  hmgr->addHistoProf2(new TProfile2D("10330",
554  "IL prof Eta Phi [Cables];#eta;#varphi;#lambda/#lambda_{0}",
555  netabin_,
556  etaMin_,
557  etaMax_,
558  nphibin_,
559  phiMin_,
560  phiMax_));
561  hmgr->addHistoProf1(new TProfile("10340", "IL prof R [Cables];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
562  hmgr->addHistoProf2(new TProfile2D(
563  "10350", "IL prof sum R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
564  hmgr->addHistoProf2(new TProfile2D(
565  "10352", "IL ortho prof sum R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
566  hmgr->addHisto2(new TH2F(
567  "10360", "IL prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
568  hmgr->addHistoProf2(new TProfile2D(
569  "10370", "IL prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
570  hmgr->addHistoProf2(new TProfile2D(
571  "10372", "IL ortho prof local R z [Cables];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
572 
573  // HGC_G10_FR4
574  hmgr->addHistoProf1(
575  new TProfile("10410", "IL prof Eta [HGC_G10_FR4];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
576  hmgr->addHistoProf1(
577  new TProfile("10420", "IL prof Phi [HGC_G10_FR4];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
578  hmgr->addHistoProf2(new TProfile2D("10430",
579  "IL prof Eta Phi [HGC_G10_FR4];#eta;#varphi;#lambda/#lambda_{0}",
580  netabin_,
581  etaMin_,
582  etaMax_,
583  nphibin_,
584  phiMin_,
585  phiMax_));
586  hmgr->addHistoProf1(
587  new TProfile("10440", "IL prof R [HGC_G10_FR4];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
588  hmgr->addHistoProf2(new TProfile2D(
589  "10450", "IL prof sum R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
590  hmgr->addHistoProf2(new TProfile2D("10452",
591  "IL ortho prof sum R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ",
592  nzbin_,
593  zMin_,
594  zMax_,
595  nrbin_,
596  rMin_,
597  rMax_));
598  hmgr->addHisto2(new TH2F(
599  "10460", "IL prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
600  hmgr->addHistoProf2(new TProfile2D(
601  "10470", "IL prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
602  hmgr->addHistoProf2(new TProfile2D("10472",
603  "IL ortho prof local R z [HGC_G10_FR4];z [mm];R [mm];x/X_{0} ",
604  nzbin_,
605  zMin_,
606  zMax_,
607  nrbin_,
608  rMin_,
609  rMax_));
610 
611  // Silicon
612  hmgr->addHistoProf1(
613  new TProfile("10510", "IL prof Eta [Silicon];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
614  hmgr->addHistoProf1(
615  new TProfile("10520", "IL prof Phi [Silicon];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
616  hmgr->addHistoProf2(new TProfile2D("10530",
617  "IL prof Eta Phi [Silicon];#eta;#varphi;#lambda/#lambda_{0}",
618  netabin_,
619  etaMin_,
620  etaMax_,
621  nphibin_,
622  phiMin_,
623  phiMax_));
624  hmgr->addHistoProf1(new TProfile("10540", "IL prof R [Silicon];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
625  hmgr->addHistoProf2(new TProfile2D(
626  "10550", "IL prof sum R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
627  hmgr->addHistoProf2(new TProfile2D(
628  "10552", "IL ortho prof sum R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
629  hmgr->addHisto2(new TH2F(
630  "10560", "IL prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
631  hmgr->addHistoProf2(new TProfile2D(
632  "10570", "IL prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
633  hmgr->addHistoProf2(new TProfile2D(
634  "10572", "IL ortho prof local R z [Silicon];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
635 
636  // Other
637  hmgr->addHistoProf1(
638  new TProfile("10610", "IL prof Eta [Other];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
639  hmgr->addHistoProf1(
640  new TProfile("10620", "IL prof Phi [Other];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
641  hmgr->addHistoProf2(new TProfile2D("10630",
642  "IL prof Eta Phi [Other];#eta;#varphi;#lambda/#lambda_{0}",
643  netabin_,
644  etaMin_,
645  etaMax_,
646  nphibin_,
647  phiMin_,
648  phiMax_));
649  hmgr->addHistoProf1(new TProfile("10640", "IL prof R [Other];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
650  hmgr->addHistoProf2(new TProfile2D(
651  "10650", "IL prof sum R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
652  hmgr->addHistoProf2(new TProfile2D(
653  "10652", "IL ortho prof sum R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
654  hmgr->addHisto2(new TH2F(
655  "10660", "IL prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
656  hmgr->addHistoProf2(new TProfile2D(
657  "10670", "IL prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
658  hmgr->addHistoProf2(new TProfile2D(
659  "10672", "IL ortho prof local R z [Other];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
660 
661  // Air
662  hmgr->addHistoProf1(new TProfile("10710", "IL prof Eta [Air];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
663  hmgr->addHistoProf1(
664  new TProfile("10720", "IL prof Phi [Air];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
665  hmgr->addHistoProf2(new TProfile2D("10730",
666  "IL prof Eta Phi [Air];#eta;#varphi;#lambda/#lambda_{0}",
667  netabin_,
668  etaMin_,
669  etaMax_,
670  nphibin_,
671  phiMin_,
672  phiMax_));
673  hmgr->addHistoProf1(new TProfile("10740", "IL prof R [Air];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
674  hmgr->addHistoProf2(new TProfile2D(
675  "10750", "IL prof sum R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
676  hmgr->addHistoProf2(new TProfile2D(
677  "10752", "IL ortho prof sum R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
678  hmgr->addHisto2(
679  new TH2F("10760", "IL prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
680  hmgr->addHistoProf2(new TProfile2D(
681  "10770", "IL prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
682  hmgr->addHistoProf2(new TProfile2D(
683  "10772", "IL ortho prof local R z [Air];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
684 
685  //StainlessSteel
686  hmgr->addHistoProf1(
687  new TProfile("10810", "IL prof Eta [StainlessSteel];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
688  hmgr->addHistoProf1(new TProfile(
689  "10820", "IL prof Phi [StainlessSteel];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
690  hmgr->addHistoProf2(new TProfile2D("10830",
691  "IL prof Eta Phi [StainlessSteel];#eta;#varphi;#lambda/#lambda_{0}",
692  netabin_,
693  etaMin_,
694  etaMax_,
695  nphibin_,
696  phiMin_,
697  phiMax_));
698  hmgr->addHistoProf1(
699  new TProfile("10840", "IL prof R [StainlessSteel];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
700  hmgr->addHistoProf2(new TProfile2D(
701  "10850", "IL prof sum R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
702  hmgr->addHistoProf2(new TProfile2D("10852",
703  "IL ortho prof sum R z [StainlessSteel];z [mm];R [mm];x/X_{0} ",
704  nzbin_,
705  zMin_,
706  zMax_,
707  nrbin_,
708  rMin_,
709  rMax_));
710  hmgr->addHisto2(new TH2F(
711  "10860", "IL prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
712  hmgr->addHistoProf2(new TProfile2D(
713  "10870", "IL prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
714  hmgr->addHistoProf2(new TProfile2D("10872",
715  "IL ortho prof local R z [StainlessSteel];z [mm];R [mm];x/X_{0} ",
716  nzbin_,
717  zMin_,
718  zMax_,
719  nrbin_,
720  rMin_,
721  rMax_));
722 
723  //WCu
724  hmgr->addHistoProf1(new TProfile("10910", "IL prof Eta [WCu];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
725  hmgr->addHistoProf1(
726  new TProfile("10920", "IL prof Phi [WCu];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
727  hmgr->addHistoProf2(new TProfile2D("10930",
728  "IL prof Eta Phi [WCu];#eta;#varphi;#lambda/#lambda_{0}",
729  netabin_,
730  etaMin_,
731  etaMax_,
732  nphibin_,
733  phiMin_,
734  phiMax_));
735  hmgr->addHistoProf1(new TProfile("10940", "IL prof R [WCu];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
736  hmgr->addHistoProf2(new TProfile2D(
737  "10950", "IL prof sum R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
738  hmgr->addHistoProf2(new TProfile2D(
739  "10952", "IL ortho prof sum R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
740  hmgr->addHisto2(
741  new TH2F("10960", "IL prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
742  hmgr->addHistoProf2(new TProfile2D(
743  "10970", "IL prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
744  hmgr->addHistoProf2(new TProfile2D(
745  "10972", "IL ortho prof local R z [WCu];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
746 
747  // Lead
748  hmgr->addHistoProf1(new TProfile("11010", "IL prof Eta [Lead];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
749  hmgr->addHistoProf1(
750  new TProfile("11020", "IL prof Phi [Lead];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
751  hmgr->addHistoProf2(new TProfile2D("11030",
752  "IL prof Eta Phi [Lead];#eta;#varphi;#lambda/#lambda_{0}",
753  netabin_,
754  etaMin_,
755  etaMax_,
756  nphibin_,
757  phiMin_,
758  phiMax_));
759  hmgr->addHistoProf1(new TProfile("11040", "IL prof R [Lead];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
760  hmgr->addHistoProf2(new TProfile2D(
761  "11050", "IL prof sum R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
762  hmgr->addHistoProf2(new TProfile2D(
763  "11052", "IL ortho prof sum R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
764  hmgr->addHisto2(new TH2F(
765  "11060", "IL prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
766  hmgr->addHistoProf2(new TProfile2D(
767  "11070", "IL prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
768  hmgr->addHistoProf2(new TProfile2D(
769  "11072", "IL ortho prof local R z [Lead];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
770 
771  // Epoxy
772  hmgr->addHistoProf1(
773  new TProfile("11110", "IL prof Eta [Epoxy];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
774  hmgr->addHistoProf1(
775  new TProfile("11120", "IL prof Phi [Epoxy];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
776  hmgr->addHistoProf2(new TProfile2D("11130",
777  "IL prof Eta Phi [Epoxy];#eta;#varphi;#lambda/#lambda_{0}",
778  netabin_,
779  etaMin_,
780  etaMax_,
781  nphibin_,
782  phiMin_,
783  phiMax_));
784  hmgr->addHistoProf1(new TProfile("11140", "IL prof R [Epoxy];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
785  hmgr->addHistoProf2(new TProfile2D(
786  "11150", "IL prof sum R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
787  hmgr->addHistoProf2(new TProfile2D(
788  "11152", "IL ortho prof sum R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
789  hmgr->addHisto2(new TH2F(
790  "11160", "IL prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
791  hmgr->addHistoProf2(new TProfile2D(
792  "11170", "IL prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
793  hmgr->addHistoProf2(new TProfile2D(
794  "11172", "IL ortho prof local R z [Epoxy];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
795 
796  // Kapton
797  hmgr->addHistoProf1(
798  new TProfile("11210", "IL prof Eta [Kapton];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
799  hmgr->addHistoProf1(
800  new TProfile("11220", "IL prof Phi [Kapton];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
801  hmgr->addHistoProf2(new TProfile2D("11230",
802  "IL prof Eta Phi [Kapton];#eta;#varphi;#lambda/#lambda_{0}",
803  netabin_,
804  etaMin_,
805  etaMax_,
806  nphibin_,
807  phiMin_,
808  phiMax_));
809  hmgr->addHistoProf1(new TProfile("11240", "IL prof R [Kapton];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
810  hmgr->addHistoProf2(new TProfile2D(
811  "11250", "IL prof sum R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
812  hmgr->addHistoProf2(new TProfile2D(
813  "11252", "IL ortho prof sum R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
814  hmgr->addHisto2(new TH2F(
815  "11260", "IL prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
816  hmgr->addHistoProf2(new TProfile2D(
817  "11270", "IL prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
818  hmgr->addHistoProf2(new TProfile2D(
819  "11272", "IL ortho prof local R z [Kapton];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
820 
821  // Aluminium
822  hmgr->addHistoProf1(
823  new TProfile("11310", "IL prof Eta [Aluminium];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
824  hmgr->addHistoProf1(
825  new TProfile("11320", "IL prof Phi [Aluminium];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
826  hmgr->addHistoProf2(new TProfile2D("11330",
827  "IL prof Eta Phi [Aluminium];#eta;#varphi;#lambda/#lambda_{0}",
828  netabin_,
829  etaMin_,
830  etaMax_,
831  nphibin_,
832  phiMin_,
833  phiMax_));
834  hmgr->addHistoProf1(new TProfile("11340", "IL prof R [Aluminium];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
835  hmgr->addHistoProf2(new TProfile2D(
836  "11350", "IL prof sum R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
837  hmgr->addHistoProf2(new TProfile2D(
838  "11352", "IL ortho prof sum R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
839  hmgr->addHisto2(new TH2F(
840  "11360", "IL prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
841  hmgr->addHistoProf2(new TProfile2D(
842  "11370", "IL prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
843  hmgr->addHistoProf2(new TProfile2D("11372",
844  "IL ortho prof local R z [Aluminium];z [mm];R [mm];x/X_{0} ",
845  nzbin_,
846  zMin_,
847  zMax_,
848  nrbin_,
849  rMin_,
850  rMax_));
851 
852  // Polystyrene
853  hmgr->addHistoProf1(
854  new TProfile("11410", "IL prof Eta [Polystyrene];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
855  hmgr->addHistoProf1(
856  new TProfile("11420", "IL prof Phi [Polystyrene];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
857  hmgr->addHistoProf2(new TProfile2D("11430",
858  "IL prof Eta Phi [Polystyrene];#eta;#varphi;#lambda/#lambda_{0}",
859  netabin_,
860  etaMin_,
861  etaMax_,
862  nphibin_,
863  phiMin_,
864  phiMax_));
865  hmgr->addHistoProf1(
866  new TProfile("11440", "IL prof R [Polystyrene];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
867  hmgr->addHistoProf2(new TProfile2D(
868  "11450", "IL prof sum R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
869  hmgr->addHistoProf2(new TProfile2D("11452",
870  "IL ortho prof sum R z [Polystyrene];z [mm];R [mm];x/X_{0} ",
871  nzbin_,
872  zMin_,
873  zMax_,
874  nrbin_,
875  rMin_,
876  rMax_));
877  hmgr->addHisto2(new TH2F(
878  "11460", "IL prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
879  hmgr->addHistoProf2(new TProfile2D(
880  "11470", "IL prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
881  hmgr->addHistoProf2(new TProfile2D("11472",
882  "IL ortho prof local R z [Polystyrene];z [mm];R [mm];x/X_{0} ",
883  nzbin_,
884  zMin_,
885  zMax_,
886  nrbin_,
887  rMin_,
888  rMax_));
889 
890  // HGC_EEConnector
891  hmgr->addHistoProf1(
892  new TProfile("11510", "IL prof Eta [HGC_EEConnector];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
893  hmgr->addHistoProf1(new TProfile(
894  "11520", "IL prof Phi [HGC_EEConnector];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
895  hmgr->addHistoProf2(new TProfile2D("11530",
896  "IL prof Eta Phi [HGC_EEConnector];#eta;#varphi;#lambda/#lambda_{0}",
897  netabin_,
898  etaMin_,
899  etaMax_,
900  nphibin_,
901  phiMin_,
902  phiMax_));
903  hmgr->addHistoProf1(
904  new TProfile("11540", "IL prof R [HGC_EEConnector];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
905  hmgr->addHistoProf2(new TProfile2D(
906  "11550", "IL prof sum R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
907  hmgr->addHistoProf2(new TProfile2D("11552",
908  "IL ortho prof sum R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
909  nzbin_,
910  zMin_,
911  zMax_,
912  nrbin_,
913  rMin_,
914  rMax_));
915  hmgr->addHisto2(new TH2F("11560",
916  "IL prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
917  nzbin_,
918  zMin_,
919  zMax_,
920  nrbin_,
921  rMin_,
922  rMax_));
923  hmgr->addHistoProf2(new TProfile2D("11570",
924  "IL prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
925  nzbin_,
926  zMin_,
927  zMax_,
928  nrbin_,
929  rMin_,
930  rMax_));
931  hmgr->addHistoProf2(new TProfile2D("11572",
932  "IL ortho prof local R z [HGC_EEConnector];z [mm];R [mm];x/X_{0} ",
933  nzbin_,
934  zMin_,
935  zMax_,
936  nrbin_,
937  rMin_,
938  rMax_));
939 
940  // HGC_HEConnector
941  hmgr->addHistoProf1(
942  new TProfile("11610", "IL prof Eta [HGC_HEConnector];#eta;#lambda/#lambda_{0}", netabin_, etaMin_, etaMax_));
943  hmgr->addHistoProf1(new TProfile(
944  "11620", "IL prof Phi [HGC_HEConnector];#varphi [rad];#lambda/#lambda_{0}", nphibin_, phiMin_, phiMax_));
945  hmgr->addHistoProf2(new TProfile2D("11630",
946  "IL prof Eta Phi [HGC_HEConnector];#eta;#varphi;#lambda/#lambda_{0}",
947  netabin_,
948  etaMin_,
949  etaMax_,
950  nphibin_,
951  phiMin_,
952  phiMax_));
953  hmgr->addHistoProf1(
954  new TProfile("11640", "IL prof R [HGC_HEConnector];R [mm];#lambda/#lambda_{0}", nrbin_, RMin_, RMax_));
955  hmgr->addHistoProf2(new TProfile2D(
956  "11650", "IL prof sum R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ", nzbin_, zMin_, zMax_, nrbin_, rMin_, rMax_));
957  hmgr->addHistoProf2(new TProfile2D("11652",
958  "IL ortho prof sum R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
959  nzbin_,
960  zMin_,
961  zMax_,
962  nrbin_,
963  rMin_,
964  rMax_));
965  hmgr->addHisto2(new TH2F("11660",
966  "IL prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
967  nzbin_,
968  zMin_,
969  zMax_,
970  nrbin_,
971  rMin_,
972  rMax_));
973  hmgr->addHistoProf2(new TProfile2D("11670",
974  "IL prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
975  nzbin_,
976  zMin_,
977  zMax_,
978  nrbin_,
979  rMin_,
980  rMax_));
981  hmgr->addHistoProf2(new TProfile2D("11672",
982  "IL ortho prof local R z [HGC_HEConnector];z [mm];R [mm];x/X_{0} ",
983  nzbin_,
984  zMin_,
985  zMax_,
986  nrbin_,
987  rMin_,
988  rMax_));
989 
990  std::cout << "=== booking user histos done ===" << std::endl;
991 }
992 
994 
996 
998  //
999  // fill histograms and profiles only if the material has been crossed
1000  //
1001 
1002  if (theData->getNumberOfSteps() != 0) {
1003  // Total X0
1004  hmgr->getHisto1(11)->Fill(theData->getEta());
1005  hmgr->getHisto1(21)->Fill(theData->getPhi());
1006  hmgr->getHisto2(31)->Fill(theData->getEta(), theData->getPhi());
1007 
1008  hmgr->getHistoProf1(10)->Fill(theData->getEta(), theData->getTotalMB());
1009  hmgr->getHistoProf1(20)->Fill(theData->getPhi(), theData->getTotalMB());
1010  hmgr->getHistoProf2(30)->Fill(theData->getEta(), theData->getPhi(), theData->getTotalMB());
1011 
1012  // rr
1013 
1014  // Copper
1015  hmgr->getHistoProf1(110)->Fill(theData->getEta(), theData->getCopperMB());
1016  hmgr->getHistoProf1(120)->Fill(theData->getPhi(), theData->getCopperMB());
1017  hmgr->getHistoProf2(130)->Fill(theData->getEta(), theData->getPhi(), theData->getCopperMB());
1018 
1019  // H_Scintillator
1020  hmgr->getHistoProf1(210)->Fill(theData->getEta(), theData->getH_ScintillatorMB());
1021  hmgr->getHistoProf1(220)->Fill(theData->getPhi(), theData->getH_ScintillatorMB());
1022  hmgr->getHistoProf2(230)->Fill(theData->getEta(), theData->getPhi(), theData->getH_ScintillatorMB());
1023 
1024  // Cables
1025  hmgr->getHistoProf1(310)->Fill(theData->getEta(), theData->getCablesMB());
1026  hmgr->getHistoProf1(320)->Fill(theData->getPhi(), theData->getCablesMB());
1027  hmgr->getHistoProf2(330)->Fill(theData->getEta(), theData->getPhi(), theData->getCablesMB());
1028 
1029  // HGC_G10_FR4
1030  hmgr->getHistoProf1(410)->Fill(theData->getEta(), theData->getHGC_G10_FR4MB());
1031  hmgr->getHistoProf1(420)->Fill(theData->getPhi(), theData->getHGC_G10_FR4MB());
1032  hmgr->getHistoProf2(430)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_G10_FR4MB());
1033 
1034  // Silicon
1035  hmgr->getHistoProf1(510)->Fill(theData->getEta(), theData->getSiliconMB());
1036  hmgr->getHistoProf1(520)->Fill(theData->getPhi(), theData->getSiliconMB());
1037  hmgr->getHistoProf2(530)->Fill(theData->getEta(), theData->getPhi(), theData->getSiliconMB());
1038 
1039  // Other
1040  hmgr->getHistoProf1(610)->Fill(theData->getEta(), theData->getOtherMB());
1041  hmgr->getHistoProf1(620)->Fill(theData->getPhi(), theData->getOtherMB());
1042  hmgr->getHistoProf2(630)->Fill(theData->getEta(), theData->getPhi(), theData->getOtherMB());
1043 
1044  // Air
1045  hmgr->getHistoProf1(710)->Fill(theData->getEta(), theData->getAirMB());
1046  hmgr->getHistoProf1(720)->Fill(theData->getPhi(), theData->getAirMB());
1047  hmgr->getHistoProf2(730)->Fill(theData->getEta(), theData->getPhi(), theData->getAirMB());
1048 
1049  // StainlessSteel
1050  hmgr->getHistoProf1(810)->Fill(theData->getEta(), theData->getStainlessSteelMB());
1051  hmgr->getHistoProf1(820)->Fill(theData->getPhi(), theData->getStainlessSteelMB());
1052  hmgr->getHistoProf2(830)->Fill(theData->getEta(), theData->getPhi(), theData->getStainlessSteelMB());
1053 
1054  // WCu
1055  hmgr->getHistoProf1(910)->Fill(theData->getEta(), theData->getWCuMB());
1056  hmgr->getHistoProf1(920)->Fill(theData->getPhi(), theData->getWCuMB());
1057  hmgr->getHistoProf2(930)->Fill(theData->getEta(), theData->getPhi(), theData->getWCuMB());
1058 
1059  // Lead
1060  hmgr->getHistoProf1(1010)->Fill(theData->getEta(), theData->getLeadMB());
1061  hmgr->getHistoProf1(1020)->Fill(theData->getPhi(), theData->getLeadMB());
1062  hmgr->getHistoProf2(1030)->Fill(theData->getEta(), theData->getPhi(), theData->getLeadMB());
1063 
1064  // Epoxy
1065  hmgr->getHistoProf1(1110)->Fill(theData->getEta(), theData->getEpoxyMB());
1066  hmgr->getHistoProf1(1120)->Fill(theData->getPhi(), theData->getEpoxyMB());
1067  hmgr->getHistoProf2(1130)->Fill(theData->getEta(), theData->getPhi(), theData->getEpoxyMB());
1068 
1069  // Kapton
1070  hmgr->getHistoProf1(1210)->Fill(theData->getEta(), theData->getKaptonMB());
1071  hmgr->getHistoProf1(1220)->Fill(theData->getPhi(), theData->getKaptonMB());
1072  hmgr->getHistoProf2(1230)->Fill(theData->getEta(), theData->getPhi(), theData->getKaptonMB());
1073 
1074  // Aluminium
1075  hmgr->getHistoProf1(1310)->Fill(theData->getEta(), theData->getAluminiumMB());
1076  hmgr->getHistoProf1(1320)->Fill(theData->getPhi(), theData->getAluminiumMB());
1077  hmgr->getHistoProf2(1330)->Fill(theData->getEta(), theData->getPhi(), theData->getAluminiumMB());
1078 
1079  // Polystyrene
1080  hmgr->getHistoProf1(1410)->Fill(theData->getEta(), theData->getPolystyreneMB());
1081  hmgr->getHistoProf1(1420)->Fill(theData->getPhi(), theData->getPolystyreneMB());
1082  hmgr->getHistoProf2(1430)->Fill(theData->getEta(), theData->getPhi(), theData->getPolystyreneMB());
1083 
1084  // HGC_EEConnector
1085  hmgr->getHistoProf1(1510)->Fill(theData->getEta(), theData->getHGC_EEConnectorMB());
1086  hmgr->getHistoProf1(1520)->Fill(theData->getPhi(), theData->getHGC_EEConnectorMB());
1087  hmgr->getHistoProf2(1530)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_EEConnectorMB());
1088 
1089  // HGC_HEConnector
1090  hmgr->getHistoProf1(1610)->Fill(theData->getEta(), theData->getHGC_HEConnectorMB());
1091  hmgr->getHistoProf1(1620)->Fill(theData->getPhi(), theData->getHGC_HEConnectorMB());
1092  hmgr->getHistoProf2(1630)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_HEConnectorMB());
1093 
1094  //
1095  // Compute the total x/X0 crossed at each step radius for each path
1096  //
1097  //
1098  float theTotalMB_TOT = 0.0;
1099  float theTotalMB_COP = 0.0;
1100  float theTotalMB_SCI = 0.0;
1101  float theTotalMB_CAB = 0.0;
1102  float theTotalMB_HGF = 0.0;
1103  float theTotalMB_NIM = 0.0;
1104  float theTotalMB_OTH = 0.0;
1105  float theTotalMB_AIR = 0.0;
1106  float theTotalMB_SST = 0.0;
1107  float theTotalMB_WCU = 0.0;
1108  float theTotalMB_LEA = 0.0;
1109  float theTotalMB_EPX = 0.0;
1110  float theTotalMB_KAP = 0.0;
1111  float theTotalMB_ALU = 0.0;
1112  float theTotalMB_POL = 0.0;
1113  float theTotalMB_EEC = 0.0;
1114  float theTotalMB_HEC = 0.0;
1115  for (int iStep = 0; iStep < theData->getNumberOfSteps(); iStep++) {
1116  theTotalMB_TOT += theData->getStepDmb(iStep);
1117  theTotalMB_COP += theData->getCopperDmb(iStep);
1118  theTotalMB_SCI += theData->getH_ScintillatorDmb(iStep);
1119  theTotalMB_CAB += theData->getCablesDmb(iStep);
1120  theTotalMB_HGF += theData->getHGC_G10_FR4Dmb(iStep);
1121  theTotalMB_NIM += theData->getSiliconDmb(iStep);
1122  theTotalMB_OTH += theData->getOtherDmb(iStep);
1123  theTotalMB_AIR += theData->getAirDmb(iStep);
1124  theTotalMB_SST += theData->getStainlessSteelDmb(iStep);
1125  theTotalMB_WCU += theData->getWCuDmb(iStep);
1126  theTotalMB_LEA += theData->getLeadDmb(iStep);
1127  theTotalMB_EPX += theData->getEpoxyDmb(iStep);
1128  theTotalMB_KAP += theData->getKaptonDmb(iStep);
1129  theTotalMB_ALU += theData->getAluminiumDmb(iStep);
1130  theTotalMB_POL += theData->getPolystyreneDmb(iStep);
1131  theTotalMB_EEC += theData->getHGC_EEConnectorDmb(iStep);
1132  theTotalMB_HEC += theData->getHGC_HEConnectorDmb(iStep);
1133 
1134  int iCop = 0;
1135  int iSci = 0;
1136  int iCab = 0;
1137  int iHgf = 0;
1138  int iSil = 0;
1139  int iOth = 0;
1140  int iAir = 0;
1141  int iSst = 0;
1142  int iWcu = 0;
1143  int iLea = 0;
1144  int iEpx = 0;
1145  int iKap = 0;
1146  int iAlu = 0;
1147  int iPol = 0;
1148  int iEec = 0;
1149  int iHec = 0;
1150  if (theData->getCopperDmb(iStep) > 0.) {
1151  iCop = 1;
1152  }
1153  if (theData->getH_ScintillatorDmb(iStep) > 0.) {
1154  iSci = 1;
1155  }
1156  if (theData->getCablesDmb(iStep) > 0.) {
1157  iCab = 1;
1158  }
1159  if (theData->getHGC_G10_FR4Dmb(iStep) > 0.) {
1160  iHgf = 1;
1161  }
1162  if (theData->getSiliconDmb(iStep) > 0.) {
1163  iSil = 1;
1164  }
1165  if (theData->getOtherDmb(iStep) > 0.) {
1166  iOth = 1;
1167  }
1168  if (theData->getAirDmb(iStep) > 0.) {
1169  iAir = 1;
1170  }
1171  if (theData->getStainlessSteelDmb(iStep) > 0.) {
1172  iSst = 1;
1173  }
1174  if (theData->getWCuDmb(iStep) > 0.) {
1175  iWcu = 1;
1176  }
1177  if (theData->getLeadDmb(iStep) > 0.) {
1178  iLea = 1;
1179  }
1180  if (theData->getEpoxyDmb(iStep) > 0.) {
1181  iEpx = 1;
1182  }
1183  if (theData->getKaptonDmb(iStep) > 0.) {
1184  iKap = 1;
1185  }
1186  if (theData->getAluminiumDmb(iStep) > 0.) {
1187  iAlu = 1;
1188  }
1189  if (theData->getPolystyreneDmb(iStep) > 0.) {
1190  iPol = 1;
1191  }
1192  if (theData->getHGC_EEConnectorDmb(iStep) > 0.) {
1193  iEec = 1;
1194  }
1195  if (theData->getHGC_HEConnectorDmb(iStep) > 0.) {
1196  iHec = 1;
1197  }
1198 
1199  float deltaRadius = sqrt(pow(theData->getStepFinalX(iStep) - theData->getStepInitialX(iStep), 2) +
1200  pow(theData->getStepFinalY(iStep) - theData->getStepInitialY(iStep), 2));
1201  float deltaz = theData->getStepFinalZ(iStep) - theData->getStepInitialZ(iStep);
1202 
1203  float deltaeta = theData->getStepFinalEta(iStep) - theData->getStepInitialEta(iStep);
1204 
1205  // float deltaphi = theData->getStepFinalPhi(iStep)-theData->getStepInitialPhi(iStep) ;
1206 
1207  float x0 = theData->getStepMaterialX0(iStep);
1208 
1209  int nSubStep = 2;
1210  float boxWidth = 0.1;
1211  if ((deltaRadius > boxWidth) || (fabs(deltaz) > boxWidth)) {
1212  nSubStep = static_cast<int>(max(ceil(deltaRadius / boxWidth / 2.) * 2, ceil(fabs(deltaz) / boxWidth / 2.) * 2));
1213  }
1214 
1215  for (int iSubStep = 1; iSubStep < nSubStep; iSubStep += 2) {
1216  float subdeltaRadius = deltaRadius / nSubStep;
1217  float polarRadius = sqrt(pow(theData->getStepInitialX(iStep), 2) + pow(theData->getStepInitialY(iStep), 2)) +
1218  iSubStep * subdeltaRadius;
1219 
1220  float subdeltaz = deltaz / nSubStep;
1221  float z = theData->getStepInitialZ(iStep) + iSubStep * subdeltaz;
1222 
1223  float subdeltaeta = deltaeta / nSubStep;
1224  float eta = theData->getStepInitialEta(iStep) + iSubStep * subdeltaeta;
1225 
1226  // float subdeltaphi = deltaphi/nSubStep;
1227  // float phi = theData->getStepInitialPhi(iStep) + iSubStep*subdeltaphi;
1228 
1229  float subdelta = sqrt(pow(subdeltaRadius, 2) + pow(subdeltaz, 2));
1230 
1231  float fillValue = subdelta / x0;
1232 
1233  float costhetacorrection = cos(2 * atan(exp(-fabs(eta))));
1234  // Average length
1235  hmgr->getHisto2(999)->Fill(z, polarRadius, subdelta);
1236  // Total
1237  hmgr->getHisto1(41)->Fill(polarRadius);
1238  hmgr->getHistoProf1(40)->Fill(polarRadius, theTotalMB_TOT);
1239  hmgr->getHisto2(51)->Fill(z, polarRadius);
1240  hmgr->getHistoProf2(50)->Fill(z, polarRadius, theTotalMB_TOT);
1241  hmgr->getHistoProf2(52)->Fill(z, polarRadius, theTotalMB_TOT * costhetacorrection);
1242  hmgr->getHisto2(60)->Fill(z, polarRadius, fillValue);
1243  hmgr->getHistoProf2(70)->Fill(z, polarRadius, fillValue);
1244  hmgr->getHistoProf2(72)->Fill(z, polarRadius, fillValue * costhetacorrection);
1245 
1246  // Copper
1247  hmgr->getHistoProf1(140)->Fill(polarRadius, theTotalMB_COP);
1248  hmgr->getHistoProf2(150)->Fill(z, polarRadius, theTotalMB_COP);
1249  hmgr->getHistoProf2(152)->Fill(z, polarRadius, theTotalMB_COP * costhetacorrection);
1250  hmgr->getHisto2(160)->Fill(z, polarRadius, iCop * fillValue);
1251  hmgr->getHistoProf2(170)->Fill(z, polarRadius, iCop * fillValue);
1252  hmgr->getHistoProf2(172)->Fill(z, polarRadius, iCop * fillValue * costhetacorrection);
1253 
1254  // H_Scintillator
1255  hmgr->getHistoProf1(240)->Fill(polarRadius, theTotalMB_SCI);
1256  hmgr->getHistoProf2(250)->Fill(z, polarRadius, theTotalMB_SCI);
1257  hmgr->getHistoProf2(252)->Fill(z, polarRadius, theTotalMB_SCI * costhetacorrection);
1258  hmgr->getHisto2(260)->Fill(z, polarRadius, iSci * fillValue);
1259  hmgr->getHistoProf2(270)->Fill(z, polarRadius, iSci * fillValue);
1260  hmgr->getHistoProf2(272)->Fill(z, polarRadius, iSci * fillValue * costhetacorrection);
1261 
1262  // Cables
1263  hmgr->getHistoProf1(340)->Fill(polarRadius, theTotalMB_CAB);
1264  hmgr->getHistoProf2(350)->Fill(z, polarRadius, theTotalMB_CAB);
1265  hmgr->getHistoProf2(352)->Fill(z, polarRadius, theTotalMB_CAB * costhetacorrection);
1266  hmgr->getHisto2(360)->Fill(z, polarRadius, iCab * fillValue);
1267  hmgr->getHistoProf2(370)->Fill(z, polarRadius, iCab * fillValue);
1268  hmgr->getHistoProf2(372)->Fill(z, polarRadius, iCab * fillValue * costhetacorrection);
1269 
1270  // HGC_G10_FR4
1271  hmgr->getHistoProf1(440)->Fill(polarRadius, theTotalMB_HGF);
1272  hmgr->getHistoProf2(450)->Fill(z, polarRadius, theTotalMB_HGF);
1273  hmgr->getHistoProf2(452)->Fill(z, polarRadius, theTotalMB_HGF * costhetacorrection);
1274  hmgr->getHisto2(460)->Fill(z, polarRadius, iHgf * fillValue);
1275  hmgr->getHistoProf2(470)->Fill(z, polarRadius, iHgf * fillValue);
1276  hmgr->getHistoProf2(472)->Fill(z, polarRadius, iHgf * fillValue * costhetacorrection);
1277 
1278  // Silicon
1279  hmgr->getHistoProf1(540)->Fill(polarRadius, theTotalMB_NIM);
1280  hmgr->getHistoProf2(550)->Fill(z, polarRadius, theTotalMB_NIM);
1281  hmgr->getHistoProf2(552)->Fill(z, polarRadius, theTotalMB_NIM * costhetacorrection);
1282  hmgr->getHisto2(560)->Fill(z, polarRadius, iSil * fillValue);
1283  hmgr->getHistoProf2(570)->Fill(z, polarRadius, iSil * fillValue);
1284  hmgr->getHistoProf2(572)->Fill(z, polarRadius, iSil * fillValue * costhetacorrection);
1285 
1286  // Other
1287  hmgr->getHistoProf1(640)->Fill(polarRadius, theTotalMB_OTH);
1288  hmgr->getHistoProf2(650)->Fill(z, polarRadius, theTotalMB_OTH);
1289  hmgr->getHistoProf2(652)->Fill(z, polarRadius, theTotalMB_OTH * costhetacorrection);
1290  hmgr->getHisto2(660)->Fill(z, polarRadius, iOth * fillValue);
1291  hmgr->getHistoProf2(670)->Fill(z, polarRadius, iOth * fillValue);
1292  hmgr->getHistoProf2(672)->Fill(z, polarRadius, iOth * fillValue * costhetacorrection);
1293 
1294  // Air
1295  hmgr->getHistoProf1(740)->Fill(polarRadius, theTotalMB_AIR);
1296  hmgr->getHistoProf2(750)->Fill(z, polarRadius, theTotalMB_AIR);
1297  hmgr->getHistoProf2(752)->Fill(z, polarRadius, theTotalMB_AIR * costhetacorrection);
1298  hmgr->getHisto2(760)->Fill(z, polarRadius, iAir * fillValue);
1299  hmgr->getHistoProf2(770)->Fill(z, polarRadius, iAir * fillValue);
1300  hmgr->getHistoProf2(772)->Fill(z, polarRadius, iAir * fillValue * costhetacorrection);
1301 
1302  // StainlessSteel
1303  hmgr->getHistoProf1(840)->Fill(polarRadius, theTotalMB_SST);
1304  hmgr->getHistoProf2(850)->Fill(z, polarRadius, theTotalMB_SST);
1305  hmgr->getHistoProf2(852)->Fill(z, polarRadius, theTotalMB_SST * costhetacorrection);
1306  hmgr->getHisto2(860)->Fill(z, polarRadius, iSst * fillValue);
1307  hmgr->getHistoProf2(870)->Fill(z, polarRadius, iSst * fillValue);
1308  hmgr->getHistoProf2(872)->Fill(z, polarRadius, iSst * fillValue * costhetacorrection);
1309 
1310  // WCu
1311  hmgr->getHistoProf1(940)->Fill(polarRadius, theTotalMB_WCU);
1312  hmgr->getHistoProf2(950)->Fill(z, polarRadius, theTotalMB_WCU);
1313  hmgr->getHistoProf2(952)->Fill(z, polarRadius, theTotalMB_WCU * costhetacorrection);
1314  hmgr->getHisto2(960)->Fill(z, polarRadius, iWcu * fillValue);
1315  hmgr->getHistoProf2(970)->Fill(z, polarRadius, iWcu * fillValue);
1316  hmgr->getHistoProf2(972)->Fill(z, polarRadius, iWcu * fillValue * costhetacorrection);
1317 
1318  // Lead
1319  hmgr->getHistoProf1(1040)->Fill(polarRadius, theTotalMB_LEA);
1320  hmgr->getHistoProf2(1050)->Fill(z, polarRadius, theTotalMB_LEA);
1321  hmgr->getHistoProf2(1052)->Fill(z, polarRadius, theTotalMB_LEA * costhetacorrection);
1322  hmgr->getHisto2(1060)->Fill(z, polarRadius, iLea * fillValue);
1323  hmgr->getHistoProf2(1070)->Fill(z, polarRadius, iLea * fillValue);
1324  hmgr->getHistoProf2(1072)->Fill(z, polarRadius, iLea * fillValue * costhetacorrection);
1325 
1326  // Epoxy
1327  hmgr->getHistoProf1(1140)->Fill(polarRadius, theTotalMB_EPX);
1328  hmgr->getHistoProf2(1150)->Fill(z, polarRadius, theTotalMB_EPX);
1329  hmgr->getHistoProf2(1152)->Fill(z, polarRadius, theTotalMB_EPX * costhetacorrection);
1330  hmgr->getHisto2(1160)->Fill(z, polarRadius, iEpx * fillValue);
1331  hmgr->getHistoProf2(1170)->Fill(z, polarRadius, iEpx * fillValue);
1332  hmgr->getHistoProf2(1172)->Fill(z, polarRadius, iEpx * fillValue * costhetacorrection);
1333 
1334  // Kapton
1335  hmgr->getHistoProf1(1240)->Fill(polarRadius, theTotalMB_KAP);
1336  hmgr->getHistoProf2(1250)->Fill(z, polarRadius, theTotalMB_KAP);
1337  hmgr->getHistoProf2(1252)->Fill(z, polarRadius, theTotalMB_KAP * costhetacorrection);
1338  hmgr->getHisto2(1260)->Fill(z, polarRadius, iKap * fillValue);
1339  hmgr->getHistoProf2(1270)->Fill(z, polarRadius, iKap * fillValue);
1340  hmgr->getHistoProf2(1272)->Fill(z, polarRadius, iKap * fillValue * costhetacorrection);
1341 
1342  // Aluminium
1343  hmgr->getHistoProf1(1340)->Fill(polarRadius, theTotalMB_ALU);
1344  hmgr->getHistoProf2(1350)->Fill(z, polarRadius, theTotalMB_ALU);
1345  hmgr->getHistoProf2(1352)->Fill(z, polarRadius, theTotalMB_ALU * costhetacorrection);
1346  hmgr->getHisto2(1360)->Fill(z, polarRadius, iAlu * fillValue);
1347  hmgr->getHistoProf2(1370)->Fill(z, polarRadius, iAlu * fillValue);
1348  hmgr->getHistoProf2(1372)->Fill(z, polarRadius, iAlu * fillValue * costhetacorrection);
1349 
1350  // Polystyrene
1351  hmgr->getHistoProf1(1440)->Fill(polarRadius, theTotalMB_POL);
1352  hmgr->getHistoProf2(1450)->Fill(z, polarRadius, theTotalMB_POL);
1353  hmgr->getHistoProf2(1452)->Fill(z, polarRadius, theTotalMB_POL * costhetacorrection);
1354  hmgr->getHisto2(1460)->Fill(z, polarRadius, iPol * fillValue);
1355  hmgr->getHistoProf2(1470)->Fill(z, polarRadius, iPol * fillValue);
1356  hmgr->getHistoProf2(1472)->Fill(z, polarRadius, iPol * fillValue * costhetacorrection);
1357 
1358  // HGC_EEConnector
1359  hmgr->getHistoProf1(1540)->Fill(polarRadius, theTotalMB_EEC);
1360  hmgr->getHistoProf2(1550)->Fill(z, polarRadius, theTotalMB_EEC);
1361  hmgr->getHistoProf2(1552)->Fill(z, polarRadius, theTotalMB_EEC * costhetacorrection);
1362  hmgr->getHisto2(1560)->Fill(z, polarRadius, iEec * fillValue);
1363  hmgr->getHistoProf2(1570)->Fill(z, polarRadius, iEec * fillValue);
1364  hmgr->getHistoProf2(1572)->Fill(z, polarRadius, iEec * fillValue * costhetacorrection);
1365 
1366  // HGC_HEConnector
1367  hmgr->getHistoProf1(1640)->Fill(polarRadius, theTotalMB_HEC);
1368  hmgr->getHistoProf2(1650)->Fill(z, polarRadius, theTotalMB_HEC);
1369  hmgr->getHistoProf2(1652)->Fill(z, polarRadius, theTotalMB_HEC * costhetacorrection);
1370  hmgr->getHisto2(1660)->Fill(z, polarRadius, iHec * fillValue);
1371  hmgr->getHistoProf2(1670)->Fill(z, polarRadius, iHec * fillValue);
1372  hmgr->getHistoProf2(1672)->Fill(z, polarRadius, iHec * fillValue * costhetacorrection);
1373  }
1374  }
1375 
1376  //============================================================================================
1377  // Total Lambda0
1378  hmgr->getHistoProf1(10010)->Fill(theData->getEta(), theData->getTotalIL());
1379  hmgr->getHistoProf1(10020)->Fill(theData->getPhi(), theData->getTotalIL());
1380  hmgr->getHistoProf2(10030)->Fill(theData->getEta(), theData->getPhi(), theData->getTotalIL());
1381 
1382  // Copper
1383  hmgr->getHistoProf1(10110)->Fill(theData->getEta(), theData->getCopperIL());
1384  hmgr->getHistoProf1(10120)->Fill(theData->getPhi(), theData->getCopperIL());
1385  hmgr->getHistoProf2(10130)->Fill(theData->getEta(), theData->getPhi(), theData->getCopperIL());
1386 
1387  // H_Scintillator
1388  hmgr->getHistoProf1(10210)->Fill(theData->getEta(), theData->getH_ScintillatorIL());
1389  hmgr->getHistoProf1(10220)->Fill(theData->getPhi(), theData->getH_ScintillatorIL());
1390  hmgr->getHistoProf2(10230)->Fill(theData->getEta(), theData->getPhi(), theData->getH_ScintillatorIL());
1391 
1392  // Cables
1393  hmgr->getHistoProf1(10310)->Fill(theData->getEta(), theData->getCablesIL());
1394  hmgr->getHistoProf1(10320)->Fill(theData->getPhi(), theData->getCablesIL());
1395  hmgr->getHistoProf2(10330)->Fill(theData->getEta(), theData->getPhi(), theData->getCablesIL());
1396 
1397  // HGC_G10_FR4
1398  hmgr->getHistoProf1(10410)->Fill(theData->getEta(), theData->getHGC_G10_FR4IL());
1399  hmgr->getHistoProf1(10420)->Fill(theData->getPhi(), theData->getHGC_G10_FR4IL());
1400  hmgr->getHistoProf2(10430)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_G10_FR4IL());
1401 
1402  // Silicon
1403  hmgr->getHistoProf1(10510)->Fill(theData->getEta(), theData->getSiliconIL());
1404  hmgr->getHistoProf1(10520)->Fill(theData->getPhi(), theData->getSiliconIL());
1405  hmgr->getHistoProf2(10530)->Fill(theData->getEta(), theData->getPhi(), theData->getSiliconIL());
1406 
1407  // Other
1408  hmgr->getHistoProf1(10610)->Fill(theData->getEta(), theData->getOtherIL());
1409  hmgr->getHistoProf1(10620)->Fill(theData->getPhi(), theData->getOtherIL());
1410  hmgr->getHistoProf2(10630)->Fill(theData->getEta(), theData->getPhi(), theData->getOtherIL());
1411 
1412  // Air
1413  hmgr->getHistoProf1(10710)->Fill(theData->getEta(), theData->getAirIL());
1414  hmgr->getHistoProf1(10720)->Fill(theData->getPhi(), theData->getAirIL());
1415  hmgr->getHistoProf2(10730)->Fill(theData->getEta(), theData->getPhi(), theData->getAirIL());
1416 
1417  // StainlessSteel
1418  hmgr->getHistoProf1(10810)->Fill(theData->getEta(), theData->getStainlessSteelIL());
1419  hmgr->getHistoProf1(10820)->Fill(theData->getPhi(), theData->getStainlessSteelIL());
1420  hmgr->getHistoProf2(10830)->Fill(theData->getEta(), theData->getPhi(), theData->getStainlessSteelIL());
1421 
1422  // WCu
1423  hmgr->getHistoProf1(10910)->Fill(theData->getEta(), theData->getWCuIL());
1424  hmgr->getHistoProf1(10920)->Fill(theData->getPhi(), theData->getWCuIL());
1425  hmgr->getHistoProf2(10930)->Fill(theData->getEta(), theData->getPhi(), theData->getWCuIL());
1426 
1427  // Lead
1428  hmgr->getHistoProf1(11010)->Fill(theData->getEta(), theData->getLeadIL());
1429  hmgr->getHistoProf1(11020)->Fill(theData->getPhi(), theData->getLeadIL());
1430  hmgr->getHistoProf2(11030)->Fill(theData->getEta(), theData->getPhi(), theData->getLeadIL());
1431 
1432  // Epoxy
1433  hmgr->getHistoProf1(11110)->Fill(theData->getEta(), theData->getEpoxyIL());
1434  hmgr->getHistoProf1(11120)->Fill(theData->getPhi(), theData->getEpoxyIL());
1435  hmgr->getHistoProf2(11130)->Fill(theData->getEta(), theData->getPhi(), theData->getEpoxyIL());
1436 
1437  // Kapton
1438  hmgr->getHistoProf1(11210)->Fill(theData->getEta(), theData->getKaptonIL());
1439  hmgr->getHistoProf1(11220)->Fill(theData->getPhi(), theData->getKaptonIL());
1440  hmgr->getHistoProf2(11230)->Fill(theData->getEta(), theData->getPhi(), theData->getKaptonIL());
1441 
1442  // Aluminium
1443  hmgr->getHistoProf1(11310)->Fill(theData->getEta(), theData->getAluminiumIL());
1444  hmgr->getHistoProf1(11320)->Fill(theData->getPhi(), theData->getAluminiumIL());
1445  hmgr->getHistoProf2(11330)->Fill(theData->getEta(), theData->getPhi(), theData->getAluminiumIL());
1446 
1447  // Polystyrene
1448  hmgr->getHistoProf1(11410)->Fill(theData->getEta(), theData->getPolystyreneIL());
1449  hmgr->getHistoProf1(11420)->Fill(theData->getPhi(), theData->getPolystyreneIL());
1450  hmgr->getHistoProf2(11430)->Fill(theData->getEta(), theData->getPhi(), theData->getPolystyreneIL());
1451 
1452  // HGC_EEConnector
1453  hmgr->getHistoProf1(11510)->Fill(theData->getEta(), theData->getHGC_EEConnectorIL());
1454  hmgr->getHistoProf1(11520)->Fill(theData->getPhi(), theData->getHGC_EEConnectorIL());
1455  hmgr->getHistoProf2(11530)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_EEConnectorIL());
1456 
1457  // HGC_HEConnector
1458  hmgr->getHistoProf1(11610)->Fill(theData->getEta(), theData->getHGC_HEConnectorIL());
1459  hmgr->getHistoProf1(11620)->Fill(theData->getPhi(), theData->getHGC_HEConnectorIL());
1460  hmgr->getHistoProf2(11630)->Fill(theData->getEta(), theData->getPhi(), theData->getHGC_HEConnectorIL());
1461 
1462  // Compute the total l/l0 crossed at each step radius for each path
1463  float theTotalIL_TOT = 0.0;
1464  float theTotalIL_COP = 0.0;
1465  float theTotalIL_SCI = 0.0;
1466  float theTotalIL_CAB = 0.0;
1467  float theTotalIL_HGF = 0.0;
1468  float theTotalIL_NIM = 0.0;
1469  float theTotalIL_OTH = 0.0;
1470  float theTotalIL_AIR = 0.0;
1471  float theTotalIL_SST = 0.0;
1472  float theTotalIL_WCU = 0.0;
1473  float theTotalIL_LEA = 0.0;
1474  float theTotalIL_EPX = 0.0;
1475  float theTotalIL_KAP = 0.0;
1476  float theTotalIL_ALU = 0.0;
1477  float theTotalIL_POL = 0.0;
1478  float theTotalIL_EEC = 0.0;
1479  float theTotalIL_HEC = 0.0;
1480  for (int iStep = 0; iStep < theData->getNumberOfSteps(); iStep++) {
1481  theTotalIL_TOT += theData->getStepDil(iStep);
1482  theTotalIL_COP += theData->getCopperDil(iStep);
1483  theTotalIL_SCI += theData->getH_ScintillatorDil(iStep);
1484  theTotalIL_CAB += theData->getCablesDil(iStep);
1485  theTotalIL_HGF += theData->getHGC_G10_FR4Dil(iStep);
1486  theTotalIL_NIM += theData->getSiliconDil(iStep);
1487  theTotalIL_OTH += theData->getOtherDil(iStep);
1488  theTotalIL_AIR += theData->getAirDil(iStep);
1489  theTotalIL_SST += theData->getStainlessSteelDil(iStep);
1490  theTotalIL_WCU += theData->getWCuDil(iStep);
1491  theTotalIL_LEA += theData->getLeadDil(iStep);
1492  theTotalIL_EPX += theData->getEpoxyDil(iStep);
1493  theTotalIL_KAP += theData->getKaptonDil(iStep);
1494  theTotalIL_ALU += theData->getAluminiumDil(iStep);
1495  theTotalIL_POL += theData->getPolystyreneDil(iStep);
1496  theTotalIL_EEC += theData->getHGC_EEConnectorDil(iStep);
1497  theTotalIL_HEC += theData->getHGC_HEConnectorDil(iStep);
1498 
1499  int iCop = 0;
1500  int iSci = 0;
1501  int iCab = 0;
1502  int iHgf = 0;
1503  int iSil = 0;
1504  int iOth = 0;
1505  int iAir = 0;
1506  int iSst = 0;
1507  int iWcu = 0;
1508  int iLea = 0;
1509  int iEpx = 0;
1510  int iKap = 0;
1511  int iAlu = 0;
1512  int iPol = 0;
1513  int iEec = 0;
1514  int iHec = 0;
1515 
1516  if (theData->getCopperDil(iStep) > 0.) {
1517  iCop = 1;
1518  }
1519  if (theData->getH_ScintillatorDil(iStep) > 0.) {
1520  iSci = 1;
1521  }
1522  if (theData->getCablesDil(iStep) > 0.) {
1523  iCab = 1;
1524  }
1525  if (theData->getHGC_G10_FR4Dil(iStep) > 0.) {
1526  iHgf = 1;
1527  }
1528  if (theData->getSiliconDil(iStep) > 0.) {
1529  iSil = 1;
1530  }
1531  if (theData->getOtherDil(iStep) > 0.) {
1532  iOth = 1;
1533  }
1534  if (theData->getAirDil(iStep) > 0.) {
1535  iAir = 1;
1536  }
1537  if (theData->getStainlessSteelDil(iStep) > 0.) {
1538  iSst = 1;
1539  }
1540  if (theData->getWCuDil(iStep) > 0.) {
1541  iWcu = 1;
1542  }
1543  if (theData->getLeadDil(iStep) > 0.) {
1544  iLea = 1;
1545  }
1546  if (theData->getEpoxyDil(iStep) > 0.) {
1547  iEpx = 1;
1548  }
1549  if (theData->getKaptonDil(iStep) > 0.) {
1550  iKap = 1;
1551  }
1552  if (theData->getAluminiumDil(iStep) > 0.) {
1553  iAlu = 1;
1554  }
1555  if (theData->getPolystyreneDil(iStep) > 0.) {
1556  iPol = 1;
1557  }
1558  if (theData->getHGC_EEConnectorDil(iStep) > 0.) {
1559  iEec = 1;
1560  }
1561  if (theData->getHGC_HEConnectorDil(iStep) > 0.) {
1562  iHec = 1;
1563  }
1564 
1565  float deltaRadius = sqrt(pow(theData->getStepFinalX(iStep) - theData->getStepInitialX(iStep), 2) +
1566  pow(theData->getStepFinalY(iStep) - theData->getStepInitialY(iStep), 2));
1567  float deltaz = theData->getStepFinalZ(iStep) - theData->getStepInitialZ(iStep);
1568 
1569  float deltaeta = theData->getStepFinalEta(iStep) - theData->getStepInitialEta(iStep);
1570 
1571  // float deltaphi = theData->getStepFinalPhi(iStep)-theData->getStepInitialPhi(iStep) ;
1572 
1573  float il = theData->getStepMaterialLambda0(iStep);
1574 
1575  int nSubStep = 2;
1576  float boxWidth = 0.1;
1577  if ((deltaRadius > boxWidth) || (fabs(deltaz) > boxWidth)) {
1578  nSubStep = static_cast<int>(max(ceil(deltaRadius / boxWidth / 2.) * 2, ceil(fabs(deltaz) / boxWidth / 2.) * 2));
1579  }
1580 
1581  for (int iSubStep = 1; iSubStep < nSubStep; iSubStep += 2) {
1582  float subdeltaRadius = deltaRadius / nSubStep;
1583  float polarRadius = sqrt(pow(theData->getStepInitialX(iStep), 2) + pow(theData->getStepInitialY(iStep), 2)) +
1584  iSubStep * subdeltaRadius;
1585 
1586  float subdeltaz = deltaz / nSubStep;
1587  float z = theData->getStepInitialZ(iStep) + iSubStep * subdeltaz;
1588 
1589  float subdeltaeta = deltaeta / nSubStep;
1590  float eta = theData->getStepInitialEta(iStep) + iSubStep * subdeltaeta;
1591 
1592  // float subdeltaphi = deltaphi/nSubStep;
1593  // float phi = theData->getStepInitialPhi(iStep) + iSubStep*subdeltaphi;
1594 
1595  float subdelta = sqrt(pow(subdeltaRadius, 2) + pow(subdeltaz, 2));
1596 
1597  float fillValue = subdelta / il;
1598 
1599  float costhetacorrection = cos(2 * atan(exp(-fabs(eta))));
1600  // Average length
1601  hmgr->getHisto2(1999)->Fill(z, polarRadius, subdelta);
1602  // Total
1603  hmgr->getHistoProf1(10040)->Fill(polarRadius, theTotalIL_TOT);
1604  hmgr->getHistoProf2(10050)->Fill(z, polarRadius, theTotalIL_TOT);
1605  hmgr->getHistoProf2(10052)->Fill(z, polarRadius, theTotalIL_TOT * costhetacorrection);
1606  hmgr->getHisto2(10060)->Fill(z, polarRadius, fillValue);
1607  hmgr->getHistoProf2(10070)->Fill(z, polarRadius, fillValue);
1608  hmgr->getHistoProf2(10072)->Fill(z, polarRadius, fillValue * costhetacorrection);
1609 
1610  // Copper
1611  hmgr->getHistoProf1(10140)->Fill(polarRadius, theTotalIL_COP);
1612  hmgr->getHistoProf2(10150)->Fill(z, polarRadius, theTotalIL_COP);
1613  hmgr->getHistoProf2(10152)->Fill(z, polarRadius, theTotalIL_COP * costhetacorrection);
1614  hmgr->getHisto2(10160)->Fill(z, polarRadius, iCop * fillValue);
1615  hmgr->getHistoProf2(10170)->Fill(z, polarRadius, iCop * fillValue);
1616  hmgr->getHistoProf2(10172)->Fill(z, polarRadius, iCop * fillValue * costhetacorrection);
1617 
1618  // H_Scintillator
1619  hmgr->getHistoProf1(10240)->Fill(polarRadius, theTotalIL_SCI);
1620  hmgr->getHistoProf2(10250)->Fill(z, polarRadius, theTotalIL_SCI);
1621  hmgr->getHistoProf2(10252)->Fill(z, polarRadius, theTotalIL_SCI * costhetacorrection);
1622  hmgr->getHisto2(10260)->Fill(z, polarRadius, iSci * fillValue);
1623  hmgr->getHistoProf2(10270)->Fill(z, polarRadius, iSci * fillValue);
1624  hmgr->getHistoProf2(10272)->Fill(z, polarRadius, iSci * fillValue * costhetacorrection);
1625 
1626  // Cables
1627  hmgr->getHistoProf1(10340)->Fill(polarRadius, theTotalIL_CAB);
1628  hmgr->getHistoProf2(10350)->Fill(z, polarRadius, theTotalIL_CAB);
1629  hmgr->getHistoProf2(10352)->Fill(z, polarRadius, theTotalIL_CAB * costhetacorrection);
1630  hmgr->getHisto2(10360)->Fill(z, polarRadius, iCab * fillValue);
1631  hmgr->getHistoProf2(10370)->Fill(z, polarRadius, iCab * fillValue);
1632  hmgr->getHistoProf2(10372)->Fill(z, polarRadius, iCab * fillValue * costhetacorrection);
1633 
1634  // HGC_G10_FR4
1635  hmgr->getHistoProf1(10440)->Fill(polarRadius, theTotalIL_HGF);
1636  hmgr->getHistoProf2(10450)->Fill(z, polarRadius, theTotalIL_HGF);
1637  hmgr->getHistoProf2(10452)->Fill(z, polarRadius, theTotalIL_HGF * costhetacorrection);
1638  hmgr->getHisto2(10460)->Fill(z, polarRadius, iHgf * fillValue);
1639  hmgr->getHistoProf2(10470)->Fill(z, polarRadius, iHgf * fillValue);
1640  hmgr->getHistoProf2(10472)->Fill(z, polarRadius, iHgf * fillValue * costhetacorrection);
1641 
1642  // Silicon
1643  hmgr->getHistoProf1(10540)->Fill(polarRadius, theTotalIL_NIM);
1644  hmgr->getHistoProf2(10550)->Fill(z, polarRadius, theTotalIL_NIM);
1645  hmgr->getHistoProf2(10552)->Fill(z, polarRadius, theTotalIL_NIM * costhetacorrection);
1646  hmgr->getHisto2(10560)->Fill(z, polarRadius, iSil * fillValue);
1647  hmgr->getHistoProf2(10570)->Fill(z, polarRadius, iSil * fillValue);
1648  hmgr->getHistoProf2(10572)->Fill(z, polarRadius, iSil * fillValue * costhetacorrection);
1649 
1650  // Other
1651  hmgr->getHistoProf1(10640)->Fill(polarRadius, theTotalIL_OTH);
1652  hmgr->getHistoProf2(10650)->Fill(z, polarRadius, theTotalIL_OTH);
1653  hmgr->getHistoProf2(10652)->Fill(z, polarRadius, theTotalIL_OTH * costhetacorrection);
1654  hmgr->getHisto2(10660)->Fill(z, polarRadius, iOth * fillValue);
1655  hmgr->getHistoProf2(10670)->Fill(z, polarRadius, iOth * fillValue);
1656  hmgr->getHistoProf2(10672)->Fill(z, polarRadius, iOth * fillValue * costhetacorrection);
1657 
1658  // Air
1659  hmgr->getHistoProf1(10740)->Fill(polarRadius, theTotalIL_AIR);
1660  hmgr->getHistoProf2(10750)->Fill(z, polarRadius, theTotalIL_AIR);
1661  hmgr->getHistoProf2(10752)->Fill(z, polarRadius, theTotalIL_AIR * costhetacorrection);
1662  hmgr->getHisto2(10760)->Fill(z, polarRadius, iAir * fillValue);
1663  hmgr->getHistoProf2(10770)->Fill(z, polarRadius, iAir * fillValue);
1664  hmgr->getHistoProf2(10772)->Fill(z, polarRadius, iAir * fillValue * costhetacorrection);
1665 
1666  // StainlessSteel
1667  hmgr->getHistoProf1(10840)->Fill(polarRadius, theTotalIL_SST);
1668  hmgr->getHistoProf2(10850)->Fill(z, polarRadius, theTotalIL_SST);
1669  hmgr->getHistoProf2(10852)->Fill(z, polarRadius, theTotalIL_SST * costhetacorrection);
1670  hmgr->getHisto2(10860)->Fill(z, polarRadius, iSst * fillValue);
1671  hmgr->getHistoProf2(10870)->Fill(z, polarRadius, iSst * fillValue);
1672  hmgr->getHistoProf2(10872)->Fill(z, polarRadius, iSst * fillValue * costhetacorrection);
1673 
1674  // WCu
1675  hmgr->getHistoProf1(10940)->Fill(polarRadius, theTotalIL_WCU);
1676  hmgr->getHistoProf2(10950)->Fill(z, polarRadius, theTotalIL_WCU);
1677  hmgr->getHistoProf2(10952)->Fill(z, polarRadius, theTotalIL_WCU * costhetacorrection);
1678  hmgr->getHisto2(10960)->Fill(z, polarRadius, iWcu * fillValue);
1679  hmgr->getHistoProf2(10970)->Fill(z, polarRadius, iWcu * fillValue);
1680  hmgr->getHistoProf2(10972)->Fill(z, polarRadius, iWcu * fillValue * costhetacorrection);
1681 
1682  // Lead
1683  hmgr->getHistoProf1(11040)->Fill(polarRadius, theTotalIL_LEA);
1684  hmgr->getHistoProf2(11050)->Fill(z, polarRadius, theTotalIL_LEA);
1685  hmgr->getHistoProf2(11052)->Fill(z, polarRadius, theTotalIL_LEA * costhetacorrection);
1686  hmgr->getHisto2(11060)->Fill(z, polarRadius, iLea * fillValue);
1687  hmgr->getHistoProf2(11070)->Fill(z, polarRadius, iLea * fillValue);
1688  hmgr->getHistoProf2(11072)->Fill(z, polarRadius, iLea * fillValue * costhetacorrection);
1689 
1690  // Epoxy
1691  hmgr->getHistoProf1(11140)->Fill(polarRadius, theTotalIL_EPX);
1692  hmgr->getHistoProf2(11150)->Fill(z, polarRadius, theTotalIL_EPX);
1693  hmgr->getHistoProf2(11152)->Fill(z, polarRadius, theTotalIL_EPX * costhetacorrection);
1694  hmgr->getHisto2(11160)->Fill(z, polarRadius, iEpx * fillValue);
1695  hmgr->getHistoProf2(11170)->Fill(z, polarRadius, iEpx * fillValue);
1696  hmgr->getHistoProf2(11172)->Fill(z, polarRadius, iEpx * fillValue * costhetacorrection);
1697 
1698  // Kapton
1699  hmgr->getHistoProf1(11240)->Fill(polarRadius, theTotalIL_KAP);
1700  hmgr->getHistoProf2(11250)->Fill(z, polarRadius, theTotalIL_KAP);
1701  hmgr->getHistoProf2(11252)->Fill(z, polarRadius, theTotalIL_KAP * costhetacorrection);
1702  hmgr->getHisto2(11260)->Fill(z, polarRadius, iKap * fillValue);
1703  hmgr->getHistoProf2(11270)->Fill(z, polarRadius, iKap * fillValue);
1704  hmgr->getHistoProf2(11272)->Fill(z, polarRadius, iKap * fillValue * costhetacorrection);
1705 
1706  // Aluminium
1707  hmgr->getHistoProf1(11340)->Fill(polarRadius, theTotalIL_ALU);
1708  hmgr->getHistoProf2(11350)->Fill(z, polarRadius, theTotalIL_ALU);
1709  hmgr->getHistoProf2(11352)->Fill(z, polarRadius, theTotalIL_ALU * costhetacorrection);
1710  hmgr->getHisto2(11360)->Fill(z, polarRadius, iAlu * fillValue);
1711  hmgr->getHistoProf2(11370)->Fill(z, polarRadius, iAlu * fillValue);
1712  hmgr->getHistoProf2(11372)->Fill(z, polarRadius, iAlu * fillValue * costhetacorrection);
1713 
1714  // Polystyrene
1715  hmgr->getHistoProf1(11440)->Fill(polarRadius, theTotalIL_POL);
1716  hmgr->getHistoProf2(11450)->Fill(z, polarRadius, theTotalIL_POL);
1717  hmgr->getHistoProf2(11452)->Fill(z, polarRadius, theTotalIL_POL * costhetacorrection);
1718  hmgr->getHisto2(11460)->Fill(z, polarRadius, iPol * fillValue);
1719  hmgr->getHistoProf2(11470)->Fill(z, polarRadius, iPol * fillValue);
1720  hmgr->getHistoProf2(11472)->Fill(z, polarRadius, iPol * fillValue * costhetacorrection);
1721 
1722  // HGC_EEConnector
1723  hmgr->getHistoProf1(11540)->Fill(polarRadius, theTotalIL_EEC);
1724  hmgr->getHistoProf2(11550)->Fill(z, polarRadius, theTotalIL_EEC);
1725  hmgr->getHistoProf2(11552)->Fill(z, polarRadius, theTotalIL_EEC * costhetacorrection);
1726  hmgr->getHisto2(11560)->Fill(z, polarRadius, iEec * fillValue);
1727  hmgr->getHistoProf2(11570)->Fill(z, polarRadius, iEec * fillValue);
1728  hmgr->getHistoProf2(11572)->Fill(z, polarRadius, iEec * fillValue * costhetacorrection);
1729 
1730  // HGC_HEConnector
1731  hmgr->getHistoProf1(11640)->Fill(polarRadius, theTotalIL_HEC);
1732  hmgr->getHistoProf2(11650)->Fill(z, polarRadius, theTotalIL_HEC);
1733  hmgr->getHistoProf2(11652)->Fill(z, polarRadius, theTotalIL_HEC * costhetacorrection);
1734  hmgr->getHisto2(11660)->Fill(z, polarRadius, iHec * fillValue);
1735  hmgr->getHistoProf2(11670)->Fill(z, polarRadius, iHec * fillValue);
1736  hmgr->getHistoProf2(11672)->Fill(z, polarRadius, iHec * fillValue * costhetacorrection);
1737  }
1738  }
1739 
1740  // rr
1741  } else {
1742  std::cout << "*** WARNING This event is out of the acceptance *** " << std::endl;
1743  std::cout << "eta = " << theData->getEta() << "\t phi = " << theData->getPhi()
1744  << "\t x/X0 = " << theData->getTotalMB() << "\t l/l0 = " << theData->getTotalIL()
1745  << "\t steps = " << theData->getNumberOfSteps() << std::endl;
1746  std::cout << "***" << std::endl;
1747  }
1748 }
1749 
1751  hmgr->getHisto2(60)->Divide(hmgr->getHisto2(999));
1752  hmgr->getHisto2(160)->Divide(hmgr->getHisto2(999));
1753  hmgr->getHisto2(260)->Divide(hmgr->getHisto2(999));
1754  hmgr->getHisto2(360)->Divide(hmgr->getHisto2(999));
1755  hmgr->getHisto2(460)->Divide(hmgr->getHisto2(999));
1756  hmgr->getHisto2(560)->Divide(hmgr->getHisto2(999));
1757  hmgr->getHisto2(660)->Divide(hmgr->getHisto2(999));
1758  hmgr->getHisto2(760)->Divide(hmgr->getHisto2(999));
1759  hmgr->getHisto2(860)->Divide(hmgr->getHisto2(999));
1760  hmgr->getHisto2(960)->Divide(hmgr->getHisto2(999));
1761  hmgr->getHisto2(1060)->Divide(hmgr->getHisto2(999));
1762  hmgr->getHisto2(1160)->Divide(hmgr->getHisto2(999));
1763  hmgr->getHisto2(1260)->Divide(hmgr->getHisto2(999));
1764  hmgr->getHisto2(1360)->Divide(hmgr->getHisto2(999));
1765  hmgr->getHisto2(1460)->Divide(hmgr->getHisto2(999));
1766  hmgr->getHisto2(1560)->Divide(hmgr->getHisto2(999));
1767  hmgr->getHisto2(1660)->Divide(hmgr->getHisto2(999));
1768 
1769  hmgr->getHisto2(10060)->Divide(hmgr->getHisto2(1999));
1770  hmgr->getHisto2(10160)->Divide(hmgr->getHisto2(1999));
1771  hmgr->getHisto2(10260)->Divide(hmgr->getHisto2(1999));
1772  hmgr->getHisto2(10360)->Divide(hmgr->getHisto2(1999));
1773  hmgr->getHisto2(10460)->Divide(hmgr->getHisto2(1999));
1774  hmgr->getHisto2(10560)->Divide(hmgr->getHisto2(1999));
1775  hmgr->getHisto2(10660)->Divide(hmgr->getHisto2(1999));
1776  hmgr->getHisto2(10760)->Divide(hmgr->getHisto2(1999));
1777  hmgr->getHisto2(10860)->Divide(hmgr->getHisto2(1999));
1778  hmgr->getHisto2(10960)->Divide(hmgr->getHisto2(1999));
1779  hmgr->getHisto2(11060)->Divide(hmgr->getHisto2(1999));
1780  hmgr->getHisto2(11160)->Divide(hmgr->getHisto2(1999));
1781  hmgr->getHisto2(11260)->Divide(hmgr->getHisto2(1999));
1782  hmgr->getHisto2(11360)->Divide(hmgr->getHisto2(1999));
1783  hmgr->getHisto2(11460)->Divide(hmgr->getHisto2(1999));
1784  hmgr->getHisto2(11560)->Divide(hmgr->getHisto2(1999));
1785  hmgr->getHisto2(11660)->Divide(hmgr->getHisto2(1999));
1786 
1787  std::cout << "=== save user histos ===" << std::endl;
1788  hmgr->save(theFileName);
1789 }
constexpr int32_t ceil(float num)
MaterialBudgetHGCalHistos(std::shared_ptr< MaterialBudgetData > data, std::shared_ptr< TestHistoMgr > mgr, const std::string &fileName)
T sqrt(T t)
Definition: SSEVec.h:23
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
const T & max(const T &a, const T &b)
double b
Definition: hdecay.h:120
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80
double a
Definition: hdecay.h:121
std::shared_ptr< TestHistoMgr > hmgr
long double T
std::shared_ptr< MaterialBudgetData > theData
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29