108 h_y = iBooker.
book1DD(
"h_y",
";y", 100, -10., 10.);
109 auto *
tmp =
new TProfile(
"",
";y;x_{F} - y_{N}", 100, -10., 10.);
113 h2_y_diffFN_vs_y = iBooker.
book2DD(
"h2_y_diffFN_vs_y",
";y;x_{F} - y_{N}", 100, -10., 10., 100, -2., 2.);
124 const double bin_size_x =
cfg.binning().bin_size_x_;
125 const unsigned int n_bins_x =
cfg.binning().n_bins_x_;
127 const double pixel_x_offset =
cfg.binning().pixel_x_offset_;
129 const double x_min_pix = pixel_x_offset, x_max_pix = pixel_x_offset + n_bins_x * bin_size_x;
130 const double x_min_str = 0., x_max_str = n_bins_x * bin_size_x;
132 const unsigned int n_bins_y =
cfg.binning().n_bins_y_;
133 const double y_min =
cfg.binning().y_min_, y_max =
cfg.binning().y_max_;
138 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_str, x_max_str, n_bins_y, y_min, y_max);
141 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_pix, x_max_pix, n_bins_y, y_min, y_max);
145 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_str, x_max_str, n_bins_y, y_min, y_max);
148 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_pix, x_max_pix, n_bins_y, y_min, y_max);
152 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_str, x_max_str, n_bins_y, y_min, y_max);
155 iBooker.
book2DD(
"h2_y_vs_x",
";x;y", n_bins_x, x_min_pix, x_max_pix, n_bins_y, y_min, y_max);
162 iBooker.
book2DD(
"h2_cut_h_bef",
";x_up;x_dw", n_bins_x, x_min_str, x_max_str, n_bins_x, x_min_pix, x_max_pix);
164 iBooker.
book2DD(
"h2_cut_h_aft",
";x_up;x_dw", n_bins_x, x_min_str, x_max_str, n_bins_x, x_min_pix, x_max_pix);
169 h2_cut_v_bef = iBooker.
book2DD(
"h2_cut_v_bef",
";y_up;y_dw", n_bins_y, y_min, y_max, n_bins_y, y_min, y_max);
170 h2_cut_v_aft = iBooker.
book2DD(
"h2_cut_v_aft",
";y_up;y_dw", n_bins_y, y_min, y_max, n_bins_y, y_min, y_max);
174 auto *
tmp =
new TProfile(
"",
";x_{N};x_{F} - x_{N}", 100, 0., 20.);
205 for (
const auto &tr :
tracks) {
207 unsigned int rpDecId =
rpId.arm() * 100 +
rpId.station() * 10 +
rpId.rp();
225 tr.chiSquaredOverNDF(),
226 tr.pixelTrackRecoInfo(),
227 tr.numberOfPointsUsedForFit(),
233 tracksUp.push_back(trCorr);
235 tracksDw.push_back(trCorr);
239 for (
const auto &tr : tracksUp)
242 for (
const auto &tr : tracksDw)
246 if (tracksUp.size() >
cfg.maxRPTracksSize())
249 if (tracksDw.size() >
cfg.maxRPTracksSize())
253 for (
const auto &tr : tracksUp)
256 for (
const auto &tr : tracksDw)
260 unsigned int pairsSelected = 0;
262 for (
const auto &trUp : tracksUp) {
263 for (
const auto &trDw : tracksDw) {
275 bool cutsPassed =
true;
314 return pairsSelected;
326 debug_(iConfig.getParameter<
bool>(
"debug")) {}