#include <TrackletLUT.h>
Public Types | |
enum | MatchType { barrelphi, barrelz, disk2Sphi, disk2Sr, diskPSphi, diskPSr, alphainner, alphaouter, rSSinner, rSSouter } |
enum | VMRTableType { me, disk, inner, inneroverlap, innerthird } |
Public Member Functions | |
void | initBendMatch (unsigned int layerdisk) |
void | initmatchcut (unsigned int layerdisk, MatchType type, unsigned int region) |
void | initPhiCorrTable (unsigned int layerdisk, unsigned int rbits) |
void | initProjectionBend (double k_phider, unsigned int idisk, unsigned int nrbits, unsigned int nphiderbits) |
void | initProjectionDiskRadius (int nrbits) |
void | initteptlut (bool fillInner, bool fillTEMem, unsigned int iSeed, unsigned int layerdisk1, unsigned int layerdisk2, unsigned int innerphibits, unsigned int outerphibits, double innerphimin, double innerphimax, double outerphimin, double outerphimax, const std::string &innermem, const std::string &outermem) |
void | initTPlut (bool fillInner, unsigned int iSeed, unsigned int layerdisk1, unsigned int layerdisk2, unsigned int nbitsfinephidiff, unsigned int iTP) |
void | initTPregionlut (unsigned int iSeed, unsigned int layerdisk1, unsigned int layerdisk2, unsigned int iAllStub, unsigned int nbitsfinephidiff, unsigned int nbitsfinephi, const TrackletLUT &tplutinner, unsigned int iTP) |
void | initVMRTable (unsigned int layerdisk, VMRTableType type, int region=-1, bool combined=true) |
int | lookup (unsigned int index) const |
unsigned int | nbits () const |
TrackletLUT & | operator= (const TrackletLUT &other) |
unsigned int | size () const |
TrackletLUT (const Settings &settings) | |
void | writeTable () const |
~TrackletLUT ()=default | |
Private Member Functions | |
std::vector< std::array< double, 2 > > | getBendCut (unsigned int layerdisk, const std::vector< const tt::SensorModule *> &sensorModules, bool isPS, double FEbendcut=0) |
int | getphiCorrValue (unsigned int layerdisk, double bend, unsigned int irbin, double rmean, double dr, double drmax) const |
std::vector< const tt::SensorModule * > | getSensorModules (unsigned int layerdisk, bool isPS, std::array< double, 2 > tan_range={{-1, -1}}, unsigned int nzbins=1, unsigned int zbin=0) |
std::array< double, 2 > | getTanRange (const std::vector< const tt::SensorModule *> &sensorModules) |
int | getVMRLookup (unsigned int layerdisk, double z, double r, double dz, double dr, int iseed=-1) const |
Private Attributes | |
std::string | name_ |
unsigned int | nbits_ |
bool | positive_ |
const Settings & | settings_ |
const tt::Setup * | setup_ |
std::vector< int > | table_ |
Definition at line 26 of file TrackletLUT.h.
Enumerator | |
---|---|
barrelphi | |
barrelz | |
disk2Sphi | |
disk2Sr | |
diskPSphi | |
diskPSr | |
alphainner | |
alphaouter | |
rSSinner | |
rSSouter |
Definition at line 41 of file TrackletLUT.h.
Enumerator | |
---|---|
me | |
disk | |
inner | |
inneroverlap | |
innerthird |
Definition at line 101 of file TrackletLUT.h.
TrackletLUT::TrackletLUT | ( | const Settings & | settings | ) |
Definition at line 12 of file TrackletLUT.cc.
|
default |
|
private |
Definition at line 116 of file TrackletLUT.cc.
References funct::abs(), trklet::convertFEBend(), DMR_cfg::cut, TTStubAlgorithm_official< T >::degradeBend(), HLT_2024v14_cff::distance, tt::Setup::encodingBend(), spr::find(), mps_fire::i, trklet::N_LAYER, trklet::Settings::sensorSpacing2S(), settings_, setup_, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::sm(), tt::Setup::stubAlgorithm(), and svgfig::window().
Referenced by initBendMatch(), initPhiCorrTable(), initteptlut(), and initTPlut().
|
private |
Definition at line 1390 of file TrackletLUT.cc.
References trklet::Settings::kphi(), trklet::Settings::kphi1(), trklet::N_PSLAYER, settings_, and trklet::Settings::stripPitch().
Referenced by initPhiCorrTable().
|
private |
Definition at line 15 of file TrackletLUT.cc.
References funct::abs(), cms::cuda::assert(), Reference_intrackfit_cff::barrel, ALPAKA_ACCELERATOR_NAMESPACE::brokenline::constexpr(), dumpMFGeometry_cfg::delta, Exception, trklet::N_LAYER, tt::SensorModule::r(), tt::Setup::sensorModules(), settings_, setup_, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::sm(), trklet::tan_theta(), tier0::unique(), tt::SensorModule::z(), trklet::Settings::z0cut(), SiStripMonitorCluster_cfi::zmax, and SiStripMonitorCluster_cfi::zmin.
Referenced by initBendMatch(), initPhiCorrTable(), initteptlut(), and initTPlut().
|
private |
Definition at line 90 of file TrackletLUT.cc.
References funct::abs(), settings_, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::sm(), trklet::tan_theta(), trklet::Settings::z0cut(), SiStripMonitorCluster_cfi::zmax, and SiStripMonitorCluster_cfi::zmin.
Referenced by initteptlut(), and initTPlut().
|
private |
Definition at line 1193 of file TrackletLUT.cc.
References funct::abs(), cms::cuda::assert(), ALPAKA_ACCELERATOR_NAMESPACE::brokenline::constexpr(), PVValHelper::dz, iseed, trklet::L1D1, trklet::L2D1, trklet::L2L3, trklet::L2L3D1, WZElectronSkims53X_cff::max, SiStripPI::min, trklet::N_LAYER, NBINS, trklet::Settings::NLONGVMBINS(), hltL1SingleMuFiltered5_cfi::overlap, diffTwoXMLs::r2, trklet::Settings::rmaxdisk(), trklet::Settings::rmaxdiskl1overlapvm(), trklet::Settings::rmaxdiskvm(), trklet::Settings::rmean(), trklet::Settings::rmindiskl2overlapvm(), trklet::Settings::rmindiskvm(), settings_, relativeConstraints::value, ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::z0cut, trklet::Settings::z0cut(), ppsModifySingularModes_cfi::z1, ppsModifySingularModes_cfi::z2, trklet::Settings::zlength(), SiStripMonitorCluster_cfi::zmax, trklet::Settings::zmean(), and SiStripMonitorCluster_cfi::zmin.
Referenced by initVMRTable().
void TrackletLUT::initBendMatch | ( | unsigned int | layerdisk | ) |
Definition at line 901 of file TrackletLUT.cc.
References Reference_intrackfit_cff::barrel, trklet::Settings::bendcutme(), trklet::Settings::bendcutME(), trklet::Settings::bendcutte(), trklet::Settings::benddecode(), trklet::bendstrip(), DMR_cfg::cut, getBendCut(), getSensorModules(), trklet::Settings::krinvpars(), trklet::TrackletConfigBuilder::LayerName(), trklet::N_BENDBITS_2S, trklet::N_BENDBITS_PS, trklet::N_LAYER, trklet::N_PSLAYER, name_, nbits(), nbits_, trklet::Settings::nbitsrinv(), trklet::NRINVBITS, positive_, trklet::rinv(), trklet::Settings::rmean(), trklet::Settings::sensorSpacing2S(), settings_, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::sm(), trklet::Settings::stripPitch(), table_, trklet::Settings::useCalcBendCuts, and writeTable().
Referenced by trklet::MatchEngine::MatchEngine(), and trklet::MatchProcessor::MatchProcessor().
void TrackletLUT::initmatchcut | ( | unsigned int | layerdisk, |
MatchType | type, | ||
unsigned int | region | ||
) |
Definition at line 190 of file TrackletLUT.cc.
References alphainner, alphaouter, trklet::Settings::alphashift(), barrelphi, barrelz, trklet::Settings::combined(), disk2Sphi, disk2Sr, diskPSphi, diskPSr, trklet::Settings::half2SmoduleWidth(), mps_fire::i, trklet::Settings::kphi(), trklet::Settings::kphi1(), trklet::Settings::kr(), trklet::Settings::krprojshiftdisk(), trklet::Settings::kz(), trklet::TrackletConfigBuilder::LayerName(), trklet::N_DSS_MOD, trklet::N_LAYER, trklet::N_SEED, name_, nbits_, trklet::Settings::nbitsalpha(), positive_, trklet::Settings::rcut2S(), trklet::Settings::rcutPS(), trklet::Settings::rDSSinner(), trklet::Settings::rDSSouter(), nano_mu_digi_cff::region, trklet::Settings::rmean(), trklet::Settings::rphicut2S(), trklet::Settings::rphicutPS(), trklet::Settings::rphimatchcut(), rSSinner, rSSouter, settings_, table_, writeTable(), and trklet::Settings::zmatchcut().
Referenced by trklet::MatchCalculator::MatchCalculator(), and trklet::MatchProcessor::MatchProcessor().
void TrackletLUT::initPhiCorrTable | ( | unsigned int | layerdisk, |
unsigned int | rbits | ||
) |
Definition at line 1351 of file TrackletLUT.cc.
References trklet::Settings::benddecode(), trklet::Settings::drmax(), getBendCut(), getphiCorrValue(), getSensorModules(), trklet::N_BENDBITS_2S, trklet::N_BENDBITS_PS, trklet::N_PSLAYER, name_, nbits_, positive_, trklet::Settings::rmean(), settings_, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::sm(), table_, to_string(), trklet::Settings::useCalcBendCuts, and writeTable().
Referenced by trklet::Sector::addStub().
void TrackletLUT::initProjectionBend | ( | double | k_phider, |
unsigned int | idisk, | ||
unsigned int | nrbits, | ||
unsigned int | nphiderbits | ||
) |
Definition at line 801 of file TrackletLUT.cc.
References trklet::bendstrip(), trklet::Settings::combined(), ALPAKA_ACCELERATOR_NAMESPACE::brokenline::constexpr(), trklet::Settings::krprojshiftdisk(), trklet::TrackletConfigBuilder::LayerName(), trklet::N_LAYER, name_, nbits_, trklet::Settings::nbitsphiprojderL123(), trklet::Settings::nrbitsstub(), trklet::NRINVBITS, positive_, trklet::Settings::rcrit(), trklet::rinv(), trklet::Settings::sensorSpacing2S(), settings_, trklet::Settings::stripPitch(), submitPVValidationJobs::t, table_, writeTable(), and trklet::Settings::zmean().
Referenced by trklet::MatchProcessor::MatchProcessor(), and trklet::ProjectionRouter::ProjectionRouter().
void TrackletLUT::initProjectionDiskRadius | ( | int | nrbits | ) |
Definition at line 854 of file TrackletLUT.cc.
References cms::cuda::assert(), ztail::d, trklet::N_RZBITS, name_, nbits_, trklet::NFINERZBITS, positive_, trklet::Settings::rmaxdisk(), trklet::Settings::rmindiskvm(), settings_, table_, and writeTable().
Referenced by trklet::MatchProcessor::MatchProcessor().
void TrackletLUT::initteptlut | ( | bool | fillInner, |
bool | fillTEMem, | ||
unsigned int | iSeed, | ||
unsigned int | layerdisk1, | ||
unsigned int | layerdisk2, | ||
unsigned int | innerphibits, | ||
unsigned int | outerphibits, | ||
double | innerphimin, | ||
double | innerphimax, | ||
double | outerphimin, | ||
double | outerphimax, | ||
const std::string & | innermem, | ||
const std::string & | outermem | ||
) |
Definition at line 559 of file TrackletLUT.cc.
References funct::abs(), trklet::Settings::bendcutte(), trklet::Settings::bendcutTE(), trklet::Settings::benddecode(), trklet::bendstrip(), DMR_cfg::cut, trklet::D1D2, trklet::D3D4, getBendCut(), getSensorModules(), getTanRange(), testProducerWithPsetDescEmpty_cfi::i1, testProducerWithPsetDescEmpty_cfi::i2, testProducerWithPsetDescEmpty_cfi::i3, trklet::L1D1, trklet::L1L2, trklet::L2D1, trklet::L2L3, trklet::L3L4, trklet::L5L6, trklet::N_BENDBITS_2S, trklet::N_BENDBITS_PS, trklet::N_LAYER, name_, nbits_, or, positive_, trklet::Settings::rcrit(), trklet::rinv(), trklet::Settings::rinvcutte(), trklet::Settings::rmaxdiskvm(), trklet::Settings::rmean(), trklet::Settings::rmindiskvm(), trklet::Settings::sensorSpacing2S(), settings_, trklet::Settings::stripPitch(), table_, trklet::tan_theta(), trklet::Settings::useCalcBendCuts, writeTable(), trklet::Settings::z0cut(), trklet::Settings::zlength(), trklet::Settings::zmaxdisk(), trklet::Settings::zmean(), and trklet::Settings::zmindisk().
Referenced by trklet::TrackletEngine::setVMPhiBin().
void TrackletLUT::initTPlut | ( | bool | fillInner, |
unsigned int | iSeed, | ||
unsigned int | layerdisk1, | ||
unsigned int | layerdisk2, | ||
unsigned int | nbitsfinephidiff, | ||
unsigned int | iTP | ||
) |
Definition at line 286 of file TrackletLUT.cc.
References funct::abs(), trklet::Settings::bendcutte(), trklet::Settings::bendcutTE(), trklet::Settings::benddecode(), trklet::bendstrip(), DMR_cfg::cut, trklet::D1D2, trklet::D3D4, trklet::Settings::dphisectorHG(), getBendCut(), getSensorModules(), getTanRange(), testProducerWithPsetDescEmpty_cfi::i2, testProducerWithPsetDescEmpty_cfi::i3, trklet::L1D1, trklet::L1L2, trklet::L2D1, trklet::L2L3, trklet::L3L4, trklet::L5L6, trklet::TrackletConfigBuilder::LayerName(), trklet::N_BENDBITS_2S, trklet::N_BENDBITS_PS, trklet::N_LAYER, trklet::Settings::nallstubs(), name_, nbits_, trklet::Settings::nfinephi(), trklet::Settings::nvmte(), or, positive_, trklet::Settings::rcrit(), trklet::rinv(), trklet::Settings::rinvcutte(), trklet::Settings::rmaxdiskvm(), trklet::Settings::rmean(), trklet::Settings::rmindiskvm(), trklet::Settings::sensorSpacing2S(), settings_, trklet::Settings::stripPitch(), table_, trklet::tan_theta(), trklet::Settings::useCalcBendCuts, writeTable(), trklet::Settings::z0cut(), trklet::Settings::zlength(), trklet::Settings::zmaxdisk(), trklet::Settings::zmean(), and trklet::Settings::zmindisk().
Referenced by trklet::TrackletProcessor::addInput().
void TrackletLUT::initTPregionlut | ( | unsigned int | iSeed, |
unsigned int | layerdisk1, | ||
unsigned int | layerdisk2, | ||
unsigned int | iAllStub, | ||
unsigned int | nbitsfinephidiff, | ||
unsigned int | nbitsfinephi, | ||
const TrackletLUT & | tplutinner, | ||
unsigned int | iTP | ||
) |
Definition at line 501 of file TrackletLUT.cc.
References trklet::D1D2, trklet::D3D4, trklet::L1D1, trklet::L2D1, trklet::L5L6, trklet::TrackletConfigBuilder::LayerName(), lookup(), name_, nbits_, trklet::Settings::nbitsallstubs(), trklet::Settings::nfinephi(), trklet::Settings::nvmte(), positive_, settings_, table_, and writeTable().
Referenced by trklet::TrackletProcessor::addInput().
void TrackletLUT::initVMRTable | ( | unsigned int | layerdisk, |
VMRTableType | type, | ||
int | region = -1 , |
||
bool | combined = true |
||
) |
Definition at line 998 of file TrackletLUT.cc.
References cms::cuda::assert(), newFWLiteAna::bin, trklet::Settings::combined(), trklet::D3, trklet::Settings::drmax(), PVValHelper::dz, trklet::Settings::dzmax(), getVMRLookup(), SurfaceOrientation::inner, PixelRegions::L1, PixelRegions::L2, trklet::L2L3, trklet::L2L3D1, PixelRegions::L3, PixelRegions::L4, trklet::L5, trklet::L6, trklet::TrackletConfigBuilder::LayerName(), hlt_dqm_clientPB-live_cfg::me, trklet::N_LAYER, name_, NBINS, nbits_, trklet::Settings::NLONGVMBINS(), trklet::Settings::NLONGVMBITS(), positive_, trklet::Settings::rDSSinner(), trklet::Settings::rDSSouter(), nano_mu_digi_cff::region, trklet::Settings::rmaxdisk(), trklet::Settings::rmaxdiskvm(), trklet::Settings::rmean(), trklet::Settings::rmindiskvm(), settings_, table_, trklet::Settings::vmrlutrbits(), trklet::Settings::vmrlutzbits(), writeTable(), globals_cff::zbins, trklet::Settings::zlength(), SiStripMonitorCluster_cfi::zmax, trklet::Settings::zmean(), and SiStripMonitorCluster_cfi::zmin.
Referenced by trklet::TrackletProcessor::TrackletProcessor(), trklet::TrackletProcessorDisplaced::TrackletProcessorDisplaced(), trklet::VMRouter::VMRouter(), and trklet::VMRouterCM::VMRouterCM().
int TrackletLUT::lookup | ( | unsigned int | index | ) | const |
Definition at line 1466 of file TrackletLUT.cc.
References cms::cuda::assert(), Exception, name_, and table_.
Referenced by trklet::Sector::addStub(), trklet::VMStubsTEMemory::addVMStub(), trklet::ProjectionRouter::execute(), trklet::MatchEngine::execute(), trklet::TrackletEngine::execute(), trklet::MatchCalculator::execute(), trklet::MatchProcessor::execute(), trklet::TrackletProcessor::execute(), trklet::TrackletProcessorDisplaced::execute(), trklet::VMRouter::execute(), trklet::VMRouterCM::execute(), initTPregionlut(), trklet::MatchProcessor::matchCalculator(), trklet::MatchEngineUnit::processPipeline(), and trklet::TrackletEngineUnit::step().
|
inline |
Definition at line 119 of file TrackletLUT.h.
References nbits_.
Referenced by trklet::TrackletProcessorDisplaced::execute(), trklet::VMRouterCM::execute(), and initBendMatch().
|
inline |
Definition at line 30 of file TrackletLUT.h.
References name_, nbits_, trackingPlots::other, positive_, and table_.
|
inline |
Definition at line 117 of file TrackletLUT.h.
References table_.
Referenced by ntupleDataFormat._Collection::__iter__(), ntupleDataFormat._Collection::__len__(), and trklet::VMStubsTEMemory::addVMStub().
void TrackletLUT::writeTable | ( | ) | const |
Definition at line 1409 of file TrackletLUT.cc.
References TauDecayModes::dec, Exception, mps_fire::i, mergeVDriftHistosByStation::name, name_, nbits_, trklet::openfile(), MillePedeFileConverter_cfg::out, positive_, settings_, table_, trklet::Settings::tablePath(), ApeEstimator_cff::width, and trklet::Settings::writeTable().
Referenced by initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), and initVMRTable().
|
private |
Definition at line 144 of file TrackletLUT.h.
Referenced by initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), initVMRTable(), lookup(), operator=(), and writeTable().
|
private |
Definition at line 148 of file TrackletLUT.h.
Referenced by initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), initVMRTable(), nbits(), operator=(), and writeTable().
|
private |
Definition at line 150 of file TrackletLUT.h.
Referenced by initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), initVMRTable(), operator=(), and writeTable().
|
private |
Definition at line 122 of file TrackletLUT.h.
Referenced by getBendCut(), getphiCorrValue(), getSensorModules(), getTanRange(), getVMRLookup(), initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), initVMRTable(), and writeTable().
|
private |
Definition at line 123 of file TrackletLUT.h.
Referenced by getBendCut(), getSensorModules(), and upgradeWorkflowComponents.UpgradeWorkflow::setup().
|
private |
Definition at line 146 of file TrackletLUT.h.
Referenced by initBendMatch(), initmatchcut(), initPhiCorrTable(), initProjectionBend(), initProjectionDiskRadius(), initteptlut(), initTPlut(), initTPregionlut(), initVMRTable(), lookup(), operator=(), size(), and writeTable().