12 #include "CLHEP/Random/RandGauss.h"
58 edm::LogInfo(
"SiStripCalibLorentzAngle") <<
"### DIR-NAME = " << Dir_Name_;
60 std::vector<MonitorElement*>::iterator
histo;
85 TH1Ds[
"LA_TIB"] =
new TH1D(
"TanLAPerTesla TIB",
"TanLAPerTesla TIB", 1000, -0.5, 0.5);
87 TH1Ds[
"LA_TOB"] =
new TH1D(
"TanLAPerTesla TOB",
"TanLAPerTesla TOB", 1000, -0.5, 0.5);
89 TH1Ds[
"LA_err_TIB"] =
new TH1D(
"TanLAPerTesla Error TIB",
"TanLAPerTesla Error TIB", 1000, 0, 1);
90 TH1Ds[
"LA_err_TIB"]->SetDirectory(
MuH);
91 TH1Ds[
"LA_err_TOB"] =
new TH1D(
"TanLAPerTesla Error TOB",
"TanLAPerTesla Error TOB", 1000, 0, 1);
92 TH1Ds[
"LA_err_TOB"]->SetDirectory(
MuH);
93 TH1Ds[
"LA_chi2norm_TIB"] =
new TH1D(
"TanLAPerTesla Chi2norm TIB",
"TanLAPerTesla Chi2norm TIB", 2000, 0, 10);
94 TH1Ds[
"LA_chi2norm_TIB"]->SetDirectory(
MuH);
95 TH1Ds[
"LA_chi2norm_TOB"] =
new TH1D(
"TanLAPerTesla Chi2norm TOB",
"TanLAPerTesla Chi2norm TOB", 2000, 0, 10);
96 TH1Ds[
"LA_chi2norm_TOB"]->SetDirectory(
MuH);
97 TH1Ds[
"MagneticField"] =
new TH1D(
"MagneticField",
"MagneticField", 500, 0, 5);
98 TH1Ds[
"MagneticField"]->SetDirectory(
MuH);
100 TH2Ds[
"LA_TIB_graph"] =
new TH2D(
"TanLAPerTesla TIB Layers",
"TanLAPerTesla TIB Layers", 60, 0, 5, 1000, -0.3, 0.3);
101 TH2Ds[
"LA_TIB_graph"]->SetDirectory(
MuH);
102 TH2Ds[
"LA_TIB_graph"]->SetNdivisions(6);
103 TH2Ds[
"LA_TOB_graph"] =
new TH2D(
"TanLAPerTesla TOB Layers",
"TanLAPerTesla TOB Layers", 80, 0, 7, 1000, -0.3, 0.3);
104 TH2Ds[
"LA_TOB_graph"]->SetDirectory(
MuH);
105 TH2Ds[
"LA_TOB_graph"]->SetNdivisions(8);
107 TH1Ds[
"LA_TIB_1"] =
new TH1D(
"TanLAPerTesla TIB1",
"TanLAPerTesla TIB1", 2000, -0.5, 0.5);
109 TH1Ds[
"LA_TIB_1_mono"] =
new TH1D(
"TanLAPerTesla TIB1 MONO",
"TanLAPerTesla TIB1 MONO", 2000, -0.5, 0.5);
111 TH1Ds[
"LA_TIB_1_stereo"] =
new TH1D(
"TanLAPerTesla TIB1 STEREO",
"TanLAPerTesla TIB1 STEREO", 2000, -0.5, 0.5);
113 TH1Ds[
"LA_TIB_2"] =
new TH1D(
"TanLAPerTesla TIB2",
"TanLAPerTesla TIB2", 2000, -0.5, 0.5);
115 TH1Ds[
"LA_TIB_2_mono"] =
new TH1D(
"TanLAPerTesla TIB2 MONO",
"TanLAPerTesla TIB2 MONO", 2000, -0.5, 0.5);
117 TH1Ds[
"LA_TIB_2_stereo"] =
new TH1D(
"TanLAPerTesla TIB2 STEREO",
"TanLAPerTesla TIB2 STEREO", 2000, -0.5, 0.5);
119 TH1Ds[
"LA_TIB_3"] =
new TH1D(
"TanLAPerTesla_TIB 3",
"TanLAPerTesla TIB3", 2000, -0.5, 0.5);
121 TH1Ds[
"LA_TIB_4"] =
new TH1D(
"TanLAPerTesla_TIB 4",
"TanLAPerTesla TIB4", 2000, -0.5, 0.5);
124 TH1Ds[
"LA_TOB_1"] =
new TH1D(
"TanLAPerTesla TOB1",
"TanLAPerTesla TOB1", 2000, -0.5, 0.5);
126 TH1Ds[
"LA_TOB_1_mono"] =
new TH1D(
"TanLAPerTesla TOB1 MONO",
"TanLAPerTesla TOB1 MONO", 2000, -0.5, 0.5);
128 TH1Ds[
"LA_TOB_1_stereo"] =
new TH1D(
"TanLAPerTesla TOB1 STEREO",
"TanLAPerTesla TOB1 STEREO", 2000, -0.5, 0.5);
130 TH1Ds[
"LA_TOB_2"] =
new TH1D(
"TanLAPerTesla TOB2",
"TanLAPerTesla TOB2", 2000, -0.5, 0.5);
132 TH1Ds[
"LA_TOB_2_mono"] =
new TH1D(
"TanLAPerTesla TOB2 MONO",
"TanLAPerTesla TOB2 MONO", 2000, -0.5, 0.5);
134 TH1Ds[
"LA_TOB_2_stereo"] =
new TH1D(
"TanLAPerTesla TOB2 STEREO",
"TanLAPerTesla TOB2 STEREO", 2000, -0.5, 0.5);
136 TH1Ds[
"LA_TOB_3"] =
new TH1D(
"TanLAPerTesla TOB3",
"TanLAPerTesla TOB3", 2000, -0.5, 0.5);
138 TH1Ds[
"LA_TOB_4"] =
new TH1D(
"TanLAPerTesla TOB4",
"TanLAPerTesla TOB4", 2000, -0.5, 0.5);
140 TH1Ds[
"LA_TOB_5"] =
new TH1D(
"TanLAPerTesla TOB5",
"TanLAPerTesla TOB5", 2000, -0.5, 0.5);
142 TH1Ds[
"LA_TOB_6"] =
new TH1D(
"TanLAPerTesla TOB6",
"TanLAPerTesla TOB6", 2000, -0.5, 0.5);
145 TH2Ds[
"LA_phi_TIB"] =
new TH2D(
"TanLAPerTesla vs Phi TIB",
"TanLAPerTesla vs Phi TIB", 800, -4, 4, 600, -0.3, 0.3);
147 TH2Ds[
"LA_phi_TOB"] =
new TH2D(
"TanLAPerTesla vs Phi TOB",
"TanLAPerTesla vs Phi TOB", 800, -4, 4, 600, -0.3, 0.3);
150 TH2Ds[
"LA_phi_TIB1"] =
new TH2D(
"TanLAPerTesla vs Phi TIB1",
"TanLAPerTesla vs Phi TIB1", 800, -4, 4, 600, -0.3, 0.3);
152 TH2Ds[
"LA_phi_TIB1_mono"] =
153 new TH2D(
"TanLAPerTesla vs Phi TIB1 MONO",
"TanLAPerTesla vs Phi TIB1 MONO", 800, -4, 4, 600, -0.3, 0.3);
155 TH2Ds[
"LA_phi_TIB1_stereo"] =
156 new TH2D(
"TanLAPerTesla vs Phi TIB1 STEREO",
"TanLAPerTesla vs Phi TIB1 STEREO", 800, -4, 4, 600, -0.3, 0.3);
158 TH2Ds[
"LA_phi_TIB2"] =
new TH2D(
"TanLAPerTesla vs Phi TIB2",
"TanLAPerTesla vs Phi TIB2", 800, -4, 4, 600, -0.3, 0.3);
160 TH2Ds[
"LA_phi_TIB2_mono"] =
161 new TH2D(
"TanLAPerTesla vs Phi TIB2 MONO",
"TanLAPerTesla vs Phi TIB2 MONO", 800, -4, 4, 600, -0.3, 0.3);
163 TH2Ds[
"LA_phi_TIB2_stereo"] =
164 new TH2D(
"TanLAPerTesla vs Phi TIB2 STEREO",
"TanLAPerTesla vs Phi TIB2 STEREO", 800, -4, 4, 600, -0.3, 0.3);
166 TH2Ds[
"LA_phi_TIB3"] =
new TH2D(
"TanLAPerTesla vs Phi TIB3",
"TanLAPerTesla vs Phi TIB3", 800, -4, 4, 600, -0.3, 0.3);
168 TH2Ds[
"LA_phi_TIB4"] =
new TH2D(
"TanLAPerTesla vs Phi TIB4",
"TanLAPerTesla vs Phi TIB4", 800, -4, 4, 600, -0.3, 0.3);
171 TH2Ds[
"LA_phi_TOB1"] =
new TH2D(
"TanLAPerTesla vs Phi TOB1",
"TanLAPerTesla vs Phi TOB1", 800, -4, 4, 600, -0.3, 0.3);
173 TH2Ds[
"LA_phi_TOB1_mono"] =
174 new TH2D(
"TanLAPerTesla vs Phi TOB1 MONO",
"TanLAPerTesla vs Phi TOB1 MONO", 800, -4, 4, 600, -0.3, 0.3);
176 TH2Ds[
"LA_phi_TOB1_stereo"] =
177 new TH2D(
"TanLAPerTesla vs Phi TOB1 STEREO",
"TanLAPerTesla vs Phi TOB1 STEREO", 800, -4, 4, 600, -0.3, 0.3);
179 TH2Ds[
"LA_phi_TOB2"] =
new TH2D(
"TanLAPerTesla vs Phi TOB2",
"TanLAPerTesla vs Phi TOB2", 800, -4, 4, 600, -0.3, 0.3);
181 TH2Ds[
"LA_phi_TOB2_mono"] =
182 new TH2D(
"TanLAPerTesla vs Phi TOB2 MONO",
"TanLAPerTesla vs Phi TOB2 MONO", 800, -4, 4, 600, -0.3, 0.3);
184 TH2Ds[
"LA_phi_TOB2_stereo"] =
185 new TH2D(
"TanLAPerTesla vs Phi TOB2 STEREO",
"TanLAPerTesla vs Phi TOB2 STEREO", 800, -4, 4, 600, -0.3, 0.3);
187 TH2Ds[
"LA_phi_TOB3"] =
new TH2D(
"TanLAPerTesla vs Phi TOB3",
"TanLAPerTesla vs Phi TOB3", 800, -4, 4, 600, -0.3, 0.3);
189 TH2Ds[
"LA_phi_TOB4"] =
new TH2D(
"TanLAPerTesla vs Phi TOB4",
"TanLAPerTesla vs Phi TOB4", 800, -4, 4, 600, -0.3, 0.3);
191 TH2Ds[
"LA_phi_TOB5"] =
new TH2D(
"TanLAPerTesla vs Phi TOB5",
"TanLAPerTesla vs Phi TOB5", 800, -4, 4, 600, -0.3, 0.3);
193 TH2Ds[
"LA_phi_TOB6"] =
new TH2D(
"TanLAPerTesla vs Phi TOB6",
"TanLAPerTesla vs Phi TOB6", 800, -4, 4, 600, -0.3, 0.3);
196 TH2Ds[
"LA_eta_TIB"] =
197 new TH2D(
"TanLAPerTesla vs Eta TIB",
"TanLAPerTesla vs Eta TIB", 800, -2.6, 2.6, 600, -0.3, 0.3);
199 TH2Ds[
"LA_eta_TOB"] =
200 new TH2D(
"TanLAPerTesla vs Eta TOB",
"TanLAPerTesla vs Eta TOB", 800, -2.6, 2.6, 600, -0.3, 0.3);
203 TH2Ds[
"LA_eta_TIB1"] =
204 new TH2D(
"TanLAPerTesla vs Eta TIB1",
"TanLAPerTesla vs Eta TIB1", 800, -2.6, 2.6, 600, -0.3, 0.3);
206 TH2Ds[
"LA_eta_TIB1_mono"] =
207 new TH2D(
"TanLAPerTesla vs Eta TIB1 MONO",
"TanLAPerTesla vs Eta TIB1 MONO", 800, -2.6, 2.6, 600, -0.3, 0.3);
209 TH2Ds[
"LA_eta_TIB1_stereo"] =
210 new TH2D(
"TanLAPerTesla vs Eta TIB1 STEREO",
"TanLAPerTesla vs Eta TIB1 STEREO", 800, -2.6, 2.6, 600, -0.3, 0.3);
212 TH2Ds[
"LA_eta_TIB2"] =
213 new TH2D(
"TanLAPerTesla vs Eta TIB2",
"TanLAPerTesla vs Eta TIB2", 800, -2.6, 2.6, 600, -0.3, 0.3);
215 TH2Ds[
"LA_eta_TIB2_mono"] =
216 new TH2D(
"TanLAPerTesla vs Eta TIB2 MONO",
"TanLAPerTesla vs Eta TIB2 MONO", 800, -2.6, 2.6, 600, -0.3, 0.3);
218 TH2Ds[
"LA_eta_TIB2_stereo"] =
219 new TH2D(
"TanLAPerTesla vs Eta TIB2 STEREO",
"TanLAPerTesla vs Eta TIB2 STEREO", 800, -2.6, 2.6, 600, -0.3, 0.3);
221 TH2Ds[
"LA_eta_TIB3"] =
222 new TH2D(
"TanLAPerTesla vs Eta TIB3",
"TanLAPerTesla vs Eta TIB3", 800, -2.6, 2.6, 600, -0.3, 0.3);
224 TH2Ds[
"LA_eta_TIB4"] =
225 new TH2D(
"TanLAPerTesla vs Eta TIB4",
"TanLAPerTesla vs Eta TIB4", 800, -2.6, 2.6, 600, -0.3, 0.3);
228 TH2Ds[
"LA_eta_TOB1"] =
229 new TH2D(
"TanLAPerTesla vs Eta TOB1",
"TanLAPerTesla vs Eta TOB1", 800, -2.6, 2.6, 600, -0.3, 0.3);
231 TH2Ds[
"LA_eta_TOB1_mono"] =
232 new TH2D(
"TanLAPerTesla vs Eta TOB1 MONO",
"TanLAPerTesla vs Eta TOB1 MONO", 800, -2.6, 2.6, 600, -0.3, 0.3);
234 TH2Ds[
"LA_eta_TOB1_stereo"] =
235 new TH2D(
"TanLAPerTesla vs Eta TOB1 STEREO",
"TanLAPerTesla vs Eta TOB1 STEREO", 800, -2.6, 2.6, 600, -0.3, 0.3);
237 TH2Ds[
"LA_eta_TOB2"] =
238 new TH2D(
"TanLAPerTesla vs Eta TOB2",
"TanLAPerTesla vs Eta TOB2", 800, -2.6, 2.6, 600, -0.3, 0.3);
240 TH2Ds[
"LA_eta_TOB2_mono"] =
241 new TH2D(
"TanLAPerTesla vs Eta TOB2 MONO",
"TanLAPerTesla vs Eta TOB2 MONO", 800, -2.6, 2.6, 600, -0.3, 0.3);
243 TH2Ds[
"LA_eta_TOB2_stereo"] =
244 new TH2D(
"TanLAPerTesla vs Eta TOB2 STEREO",
"TanLAPerTesla vs Eta TOB2 STEREO", 800, -2.6, 2.6, 600, -0.3, 0.3);
246 TH2Ds[
"LA_eta_TOB3"] =
247 new TH2D(
"TanLAPerTesla vs Eta TOB3",
"TanLAPerTesla vs Eta TOB3", 800, -2.6, 2.6, 600, -0.3, 0.3);
249 TH2Ds[
"LA_eta_TOB4"] =
250 new TH2D(
"TanLAPerTesla vs Eta TOB4",
"TanLAPerTesla vs Eta TOB4", 800, -2.6, 2.6, 600, -0.3, 0.3);
252 TH2Ds[
"LA_eta_TOB5"] =
253 new TH2D(
"TanLAPerTesla vs Eta TOB5",
"TanLAPerTesla vs Eta TOB5", 800, -2.6, 2.6, 600, -0.3, 0.3);
255 TH2Ds[
"LA_eta_TOB6"] =
256 new TH2D(
"TanLAPerTesla vs Eta TOB6",
"TanLAPerTesla vs Eta TOB6", 800, -2.6, 2.6, 600, -0.3, 0.3);
259 ModuleTree =
new TTree(
"ModuleTree",
"ModuleTree");
279 int histocounter = 0;
280 int NotEnoughEntries = 0;
283 int FirstIT_goodfit = 0;
284 int FirstIT_badfit = 0;
285 int SecondIT_badfit = 0;
286 int SecondIT_goodfit = 0;
287 int no_mod_histo = 0;
305 double TIB1calib = 1.;
306 double TIB2calib = 1.;
307 double TIB3calib = 1.;
308 double TIB4calib = 1.;
309 double TOB1calib = 1.;
310 double TOB2calib = 1.;
311 double TOB3calib = 1.;
312 double TOB4calib = 1.;
313 double TOB5calib = 1.;
314 double TOB6calib = 1.;
330 auto fitfunc = std::make_unique<TF1>(
"fitfunc",
"([4]/[3])*[1]*(TMath::Abs(x-[0]))+[2]", -1, 1);
331 auto fitfunc2IT = std::make_unique<TF1>(
"fitfunc2IT",
"([4]/[3])*[1]*(TMath::Abs(x-[0]))+[2]", -1, 1);
333 std::ofstream NoEntries;
334 NoEntries.open(NoEntriesHisto_.c_str());
336 Rep.open(LAreport_.c_str());
338 gStyle->SetOptStat(1110);
343 bool Good2ITFit =
false;
344 bool ModuleHisto =
true;
371 edm::LogInfo(
"SiStripCalibLorentzAngle") <<
"### NO MODULE HISTOGRAM";
374 if (stripdet !=
nullptr && ModuleHisto ==
true) {
397 if (det ==
nullptr) {
398 edm::LogError(
"SiStripCalibLorentzAngle") <<
"[SiStripCalibLorentzAngle::getNewObject] the detID " <<
id
399 <<
" doesn't seem to belong to Tracker" << std::endl;
407 if (stripdet ==
nullptr)
410 if (((*histo)->getEntries() <= FitCuts_Entries) && ModuleHisto ==
true) {
411 if (((*histo)->getEntries() == 0) && ModuleHisto ==
true) {
412 NoEntries <<
"NO ENTRIES MODULE, ID = " <<
id << std::endl;
413 edm::LogInfo(
"SiStripCalibLorentzAngle") <<
"### HISTOGRAM WITH 0 ENTRIES => TYPE:" << subid.
subdetId();
417 <<
"### HISTOGRAM WITH NR. ENTRIES <= ENTRIES_CUT => TYPE:" << subid.
subdetId();
428 std::stringstream LayerStream;
429 LayerStream <<
Layer;
430 name += LayerStream.str();
431 std::stringstream idnum;
436 gStyle->SetOptFit(111);
444 if (((*histo)->getEntries() > FitCuts_Entries) && ModuleHisto ==
true) {
458 fitfunc->SetParameter(0, p0_guess);
459 fitfunc->SetParameter(1, p1_guess);
460 fitfunc->SetParameter(2, p2_guess);
461 fitfunc->FixParameter(3, pitch);
470 FitFunction->GetParameter(2) < FitCuts_p2 || chi2norm > FitCuts_chi2 ||
489 FitFunction->GetParameter(2) < FitCuts_p2 || chi2norm > FitCuts_chi2 ||
504 FitFunction->GetParameter(2) > FitCuts_p2 && chi2norm < FitCuts_chi2 &&
518 FitFunction->GetParameter(2) > FitCuts_p2 && chi2norm < FitCuts_chi2 &&
520 if (Good2ITFit ==
false) {
570 TH1Ds[
"LA_chi2norm_TIB"]->Fill(chi2norm);
585 TH1Ds[
"LA_TIB_1_stereo"]->Fill(
muH);
601 TH1Ds[
"LA_TIB_2_stereo"]->Fill(
muH);
623 TH1Ds[
"LA_chi2norm_TOB"]->Fill(chi2norm);
638 TH1Ds[
"LA_TOB_1_stereo"]->Fill(
muH);
654 TH1Ds[
"LA_TOB_2_stereo"]->Fill(
muH);
691 auto gaus = std::make_unique<TF1>(
"gaus",
"gaus");
693 TH1Ds[
"LA_TIB_1"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
695 float err_mean_TIB1 = gaus->GetParError(1);
696 float rms_TIB1 = gaus->GetParameter(2);
697 TH1Ds[
"LA_TIB_2"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
699 float err_mean_TIB2 = gaus->GetParError(1);
700 float rms_TIB2 = gaus->GetParameter(2);
701 TH1Ds[
"LA_TIB_3"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
703 float err_mean_TIB3 = gaus->GetParError(1);
704 float rms_TIB3 = gaus->GetParameter(2);
705 TH1Ds[
"LA_TIB_4"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
707 float err_mean_TIB4 = gaus->GetParError(1);
708 float rms_TIB4 = gaus->GetParameter(2);
710 TH1Ds[
"LA_TOB_1"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
712 float err_mean_TOB1 = gaus->GetParError(1);
713 float rms_TOB1 = gaus->GetParameter(2);
714 TH1Ds[
"LA_TOB_2"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
716 float err_mean_TOB2 = gaus->GetParError(1);
717 float rms_TOB2 = gaus->GetParameter(2);
718 TH1Ds[
"LA_TOB_3"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
720 float err_mean_TOB3 = gaus->GetParError(1);
721 float rms_TOB3 = gaus->GetParameter(2);
722 TH1Ds[
"LA_TOB_4"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
724 float err_mean_TOB4 = gaus->GetParError(1);
725 float rms_TOB4 = gaus->GetParameter(2);
726 TH1Ds[
"LA_TOB_5"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
728 float err_mean_TOB5 = gaus->GetParError(1);
729 float rms_TOB5 = gaus->GetParameter(2);
730 TH1Ds[
"LA_TOB_6"]->Fit(gaus.get(),
"",
"", -GaussFitRange, GaussFitRange);
732 float err_mean_TOB6 = gaus->GetParError(1);
733 float rms_TOB6 = gaus->GetParameter(2);
736 float TIBx[4] = {1, 2, 3, 4};
737 float TIBex[4] = {0, 0, 0, 0};
739 float TIBey[4] = {err_mean_TIB1, err_mean_TIB2, err_mean_TIB3, err_mean_TIB4};
742 float TOBx[6] = {1, 2, 3, 4, 5, 6};
743 float TOBex[6] = {0, 0, 0, 0, 0, 0};
745 float TOBey[6] = {err_mean_TOB1, err_mean_TOB2, err_mean_TOB3, err_mean_TOB4, err_mean_TOB5, err_mean_TOB6};
747 TIB_graph =
new TGraphErrors(nlayersTIB, TIBx, TIBy, TIBex, TIBey);
748 TOB_graph =
new TGraphErrors(nlayersTOB, TOBx, TOBy, TOBex, TOBey);
753 gStyle->SetOptFit(111);
754 gStyle->SetOptStat(111);
756 TIB_graph->SetTitle(
"TIB Layers #mu_{H}");
757 TIB_graph->GetXaxis()->SetTitle(
"Layers");
759 TIB_graph->GetYaxis()->SetTitle(
"#mu_{H}");
761 TIB_graph->GetYaxis()->SetTitleOffset(1.3);
762 TIB_graph->Fit(
"fit_TIB",
"E",
"", 1, 4);
765 TOB_graph->SetTitle(
"TOB Layers #mu_{H}");
766 TOB_graph->GetXaxis()->SetTitle(
"Layers");
768 TOB_graph->GetYaxis()->SetTitle(
"#mu_{H}");
770 TOB_graph->GetYaxis()->SetTitleOffset(1.3);
771 TOB_graph->Fit(
"fit_TOB",
"E",
"", 1, 6);
777 Rep <<
"- NR.OF TIB AND TOB MODULES = 7932" << std::endl << std::endl << std::endl;
778 Rep <<
"- NO MODULE HISTOS FOUND = " << no_mod_histo << std::endl << std::endl;
779 Rep <<
"- NR.OF HISTOS WITH ENTRIES > " << FitCuts_Entries <<
" = " << histocounter << std::endl << std::endl;
780 Rep <<
"- NR.OF HISTOS WITH ENTRIES <= " << FitCuts_Entries <<
" (!=0) = " << NotEnoughEntries << std::endl
782 Rep <<
"- NR.OF HISTOS WITH 0 ENTRIES = " << ZeroEntries << std::endl << std::endl << std::endl;
783 Rep <<
"- NR.OF GOOD FIT (FIRST IT + SECOND IT GOOD FIT)= " << GoodFit << std::endl << std::endl;
784 Rep <<
"- NR.OF FIRST IT GOOD FIT = " << FirstIT_goodfit << std::endl << std::endl;
785 Rep <<
"- NR.OF SECOND IT GOOD FIT = " << SecondIT_goodfit << std::endl << std::endl;
786 Rep <<
"- NR.OF FIRST IT BAD FIT = " << FirstIT_badfit << std::endl << std::endl;
787 Rep <<
"- NR.OF SECOND IT BAD FIT = " << SecondIT_badfit << std::endl << std::endl << std::endl;
789 Rep <<
"--------------- Mean MuH values per Layer -------------------" << std::endl << std::endl << std::endl;
790 Rep <<
"TIB1 = " <<
mean_TIB1 <<
" +- " << err_mean_TIB1 <<
" RMS = " << rms_TIB1 << std::endl;
791 Rep <<
"TIB2 = " <<
mean_TIB2 <<
" +- " << err_mean_TIB2 <<
" RMS = " << rms_TIB2 << std::endl;
792 Rep <<
"TIB3 = " <<
mean_TIB3 <<
" +- " << err_mean_TIB3 <<
" RMS = " << rms_TIB3 << std::endl;
793 Rep <<
"TIB4 = " <<
mean_TIB4 <<
" +- " << err_mean_TIB4 <<
" RMS = " << rms_TIB4 << std::endl;
794 Rep <<
"TOB1 = " <<
mean_TOB1 <<
" +- " << err_mean_TOB1 <<
" RMS = " << rms_TOB1 << std::endl;
795 Rep <<
"TOB2 = " <<
mean_TOB2 <<
" +- " << err_mean_TOB2 <<
" RMS = " << rms_TOB2 << std::endl;
796 Rep <<
"TOB3 = " <<
mean_TOB3 <<
" +- " << err_mean_TOB3 <<
" RMS = " << rms_TOB3 << std::endl;
797 Rep <<
"TOB4 = " <<
mean_TOB4 <<
" +- " << err_mean_TOB4 <<
" RMS = " << rms_TOB4 << std::endl;
798 Rep <<
"TOB5 = " <<
mean_TOB5 <<
" +- " << err_mean_TOB5 <<
" RMS = " << rms_TOB5 << std::endl;
799 Rep <<
"TOB6 = " <<
mean_TOB6 <<
" +- " << err_mean_TOB6 <<
" RMS = " << rms_TOB6 << std::endl << std::endl;
821 auto LorentzAngle = std::make_unique<SiStripLorentzAngle>();
824 for (std::map<uint32_t, float>::iterator it =
detid_la.begin(); it !=
detid_la.end(); it++) {
825 float langle = it->second;
828 <<
"[SiStripCalibLorentzAngle::analyze] detid already exists" << std::endl;
834 TrackerGeometry::DetIdContainer::const_iterator Iditer;
836 for (Iditer = Id.begin(); Iditer != Id.end(); Iditer++) {
856 edm::LogError(
"SiStripLorentzAngleGenerator") <<
" detid already exists" << std::endl;
880 edm::LogError(
"SiStripLorentzAngleGenerator") <<
" detid already exists" << std::endl;
886 edm::LogError(
"SiStripLorentzAngleGenerator") <<
" detid already exists" << std::endl;
896 edm::LogError(
"SiStripLorentzAngleGenerator") <<
" detid already exists" << std::endl;