1 #ifndef L1Trigger_TrackFindingTracklet_interface_Settings_h
2 #define L1Trigger_TrackFindingTracklet_interface_Settings_h
10 #include <unordered_map>
29 constexpr
double sixth = 1.0 / 6.0;
37 #pragma message "USEHYBRID is undefined, so Hybrid L1 tracking disabled."
91 unsigned int nvmme(
unsigned int layerdisk)
const {
return (1 <<
nbitsvmme_[layerdisk]); }
98 throw cms::Exception(
"BadConfig") <<
"Settings::writeMonitorData module = " << module <<
" not known";
106 << __FILE__ <<
" " << __LINE__ <<
" maxStep module = " << module <<
" not known";
139 double rcutPS(
unsigned int iSeed,
unsigned int idisk)
const {
return rcutPS_[idisk][iSeed]; }
141 double rcut2S(
unsigned int iSeed,
unsigned int idisk)
const {
return rcut2S_[idisk][iSeed]; }
189 double c()
const {
return c_; }
205 return "hourglassCombined";
206 return extended_ ?
"hourglassExtended" :
"hourglass";
386 std::array<unsigned int, N_LAYER>
irmean_{{851, 1269, 1784, 2347, 2936, 3697}};
387 std::array<unsigned int, N_DISK>
izmean_{{2239, 2645, 3163, 3782, 4523}};
389 std::array<unsigned int, N_LAYER + N_DISK>
nzbitsstub_{{12, 12, 12, 8, 8, 8, 7, 7, 7, 7, 7}};
390 std::array<unsigned int, N_LAYER + N_DISK>
nphibitsstub_{{14, 14, 14, 17, 17, 17, 14, 14, 14, 14, 14}};
391 std::array<unsigned int, N_LAYER + N_DISK>
nrbitsstub_{{7, 7, 7, 7, 7, 7, 12, 12, 12, 12, 12}};
401 std::set<unsigned int>
useseeding_{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
403 std::array<unsigned int, N_LAYER + N_DISK>
nbitsallstubs_{{3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}};
404 std::array<unsigned int, N_LAYER + N_DISK>
nbitsvmme_{{2, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2}};
406 {{{2, 2, 2, 2, 2, 2, 1, 1, 2, 2, 3, 2}},
407 {{3, 2, 3, 3, 2, 2, 2, 2, 3, 3, 2, 2}},
408 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1}}}};
411 {{{2, 2, 2, 2, 2, 2, 1, 1, 2, 2, 3, 2}},
412 {{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2}},
413 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1}}}};
416 {{{1.25, 1.25, 1.25, 1.25, 1.25, 1.25, 1.25, 1.25}},
417 {{1.25, 1.25, 1.25, 1.25, 1.25, 1.25, 1.25, 1.25}}}};
419 std::array<double, N_LAYER + N_DISK>
bendcutme_{{2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 1.5, 1.5, 1.5, 1.5, 1.5}};
504 {7, 7, 7, 7, 7, 7, 3, 3, 3, 3, 3}};
506 {4, 4, 4, 4, 4, 4, 8, 8, 8, 8, 8}};
508 std::array<std::array<unsigned int, N_SEED>, 3>
nfinephi_{
509 {{{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}},
510 {{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}},
511 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3}}}};
515 std::array<std::array<unsigned int, N_SEED>, 3>
nphireg_{
516 {{{5, 4, 4, 4, 4, 4, 4, 3, 4, 4, 5, 4}},
517 {{5, 4, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4}},
518 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4}}}};
522 {{{5, 4, 4, 4, 4, 4, 4, 3, 4, 4, 5, 4}},
523 {{5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4}},
524 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4}}}};
526 std::array<std::array<unsigned int, N_SEED>, 3>
lutwidthtab_{{{{10, 10, 10, 10, 10, 10, 10, 10, 0, 0, 11, 0}},
527 {{6, 6, 6, 6, 10, 10, 10, 10, 0, 0, 6, 0}},
528 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6}}}};
531 {{{11, 11, 21, 21, 21, 21, 11, 11, 0, 0, 21, 0}},
532 {{6, 6, 6, 6, 10, 10, 10, 10, 0, 0, 6, 0}},
533 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6}}}};
565 {{{0.0, 0.1, 0.07, 0.08, 0.07, 0.05, 0.0, 0.05, 0.08, 0.15, 0.125, 0.15}},
566 {{0.0, 0.0, 0.06, 0.08, 0.05, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.0}},
567 {{0.1, 0.0, 0.0, 0.08, 0.0, 0.0, 0.0, 0.0, 0.0, 0.08, 0.0, 0.0}},
568 {{0.19, 0.19, 0.0, 0.05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
569 {{0.4, 0.4, 0.08, 0.0, 0.0, 0.0, 0.0, 0.0, 0.08, 0.0, 0.0, 0.0}},
570 {{0.5, 0.0, 0.19, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.0, 0.0}}}};
574 {{{0.0, 0.7, 5.5, 15.0, 1.5, 2.0, 0.0, 1.5, 1.0, 8.0, 1.0, 1.5}},
575 {{0.0, 0.0, 3.5, 15.0, 1.25, 0.0, 0.0, 0.0, 0.0, 7.0, 0.0, 0.0}},
576 {{0.7, 0.0, 0.0, 9.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0}},
577 {{3.0, 3.0, 0.0, 7.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
578 {{3.0, 3.0, 8.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.5, 0.0, 0.0, 0.0}},
579 {{4.0, 0.0, 9.5, 0.0, 0.0, 0.0, 0.0, 0.0, 4.5, 0.0, 0.0, 0.0}}}};
583 {{{0.2, 0.2, 0.0, 0.0, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
584 {{0.2, 0.2, 0.0, 0.0, 0.0, 0.1, 0.1, 0.1, 0.0, 0.0, 0.15, 0.0}},
585 {{0.25, 0.2, 0.0, 0.0, 0.15, 0.0, 0.2, 0.15, 0.0, 0.0, 0.0, 0.2}},
586 {{0.5, 0.2, 0.0, 0.0, 0.2, 0.0, 0.3, 0.5, 0.0, 0.0, 0.0, 0.0}},
587 {{0.0, 0.0, 0.0, 0.0, 0.25, 0.1, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0}}}};
591 {{{0.5, 0.5, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}},
592 {{0.5, 0.5, 0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 0.0, 0.0, 0.5, 0.0}},
593 {{0.5, 0.5, 0.0, 0.0, 0.5, 0.0, 0.6, 0.8, 0.0, 0.0, 0.0, 0.4}},
594 {{0.5, 0.5, 0.0, 0.0, 0.8, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0}},
595 {{0.0, 0.0, 0.0, 0.0, 1.0, 0.5, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0}}}};
599 {{{0.5, 0.5, 0.8, 0.0, 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.0, 0.0}},
600 {{0.5, 0.5, 0.8, 0.0, 0.0, 0.0, 0.5, 0.15, 0.3, 0.0, 0.68, 0.0}},
601 {{0.5, 0.5, 0.0, 0.0, 0.15, 0.0, 0.2, 0.25, 0.0, 0.0, 0.8, 0.1}},
602 {{0.5, 0.5, 0.0, 0.0, 0.2, 0.0, 0.25, 0.5, 0.0, 0.0, 0.6, 0.4}},
603 {{0.0, 0.0, 0.0, 0.0, 0.4, 0.2, 0.4, 0.0, 0.0, 0.0, 0.0, 0.8}}}};
607 {{{3.8, 3.8, 3.8, 0.0, 0.0, 0.0, 0.0, 0.0, 3.0, 0.0, 0.0, 0.0}},
608 {{3.8, 3.8, 3.8, 0.0, 0.0, 0.0, 3.8, 3.4, 3.0, 0.0, 3.0, 0.0}},
609 {{3.6, 3.8, 0.0, 0.0, 3.6, 0.0, 3.6, 3.8, 0.0, 0.0, 3.8, 3.0}},
610 {{3.6, 3.8, 0.0, 0.0, 3.6, 0.0, 3.5, 3.8, 0.0, 0.0, 3.0, 3.0}},
611 {{0.0, 0.0, 0.0, 0.0, 3.6, 3.4, 3.7, 0.0, 0.0, 0.0, 0.0, 3.0}}}};
619 std::unordered_map<std::string, unsigned int>
maxstep_{{
"Link", 108},
634 {
"HitPattern",
false},
638 {
"Residuals",
false},
645 {
"TrackProjOcc",
false},
650 {
"TrackletPars",
false},
655 {
"StubsLayer",
false},
656 {
"StubsLayerSector",
false},
663 std::array<double, N_DSS_MOD>
rDSSinner_mod_{{68.9391, 78.7750, 85.4550, 96.3150, 102.3160}};
664 std::array<double, N_DSS_MOD>
rDSSouter_mod_{{66.4903, 76.7750, 84.4562, 94.9920, 102.3160}};
760 double c_{0.299792458};
773 constexpr std::array<unsigned int, N_PSLAYER>
N_MOD_PLANK = {{7, 11, 15}};