#include <TrackletCalculator.h>
Public Member Functions | |
void | addInput (MemoryBase *memory, std::string input) override |
void | addOutput (MemoryBase *memory, std::string output) override |
void | addOutputProjection (TrackletProjectionsMemory *&outputProj, MemoryBase *memory) |
void | execute (unsigned int iSector, double phimin, double phimax) |
TrackletCalculator (std::string name, Settings const &settings, Globals *globals) | |
~TrackletCalculator () override=default | |
Public Member Functions inherited from trklet::TrackletCalculatorBase | |
void | addDiskProj (Tracklet *tracklet, int disk) |
bool | addLayerProj (Tracklet *tracklet, int layer) |
void | addProjection (int layer, int iphi, TrackletProjectionsMemory *trackletprojs, Tracklet *tracklet) |
void | addProjectionDisk (int disk, int iphi, TrackletProjectionsMemory *trackletprojs, Tracklet *tracklet) |
bool | barrelSeeding (const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *outerFPGAStub, const L1TStub *outerStub) |
bool | diskSeeding (const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *outerFPGAStub, const L1TStub *outerStub) |
void | exactproj (double rproj, double rinv, double phi0, double t, double z0, double &phiproj, double &zproj, double &phider, double &zder) |
void | exactprojdisk (double zproj, double rinv, double phi0, double t, double z0, double &phiproj, double &rproj, double &phider, double &rder) |
void | exacttracklet (double r1, double z1, double phi1, double r2, double z2, double phi2, double, double &rinv, double &phi0, double &t, double &z0, double phiproj[N_LAYER - 2], double zproj[N_LAYER - 2], double phider[N_LAYER - 2], double zder[N_LAYER - 2], double phiprojdisk[N_DISK], double rprojdisk[N_DISK], double phiderdisk[N_DISK], double rderdisk[N_DISK]) |
void | exacttrackletdisk (double r1, double z1, double phi1, double r2, double z2, double phi2, double, double &rinv, double &phi0, double &t, double &z0, double phiprojLayer[N_PSLAYER], double zprojLayer[N_PSLAYER], double phiderLayer[N_PSLAYER], double zderLayer[N_PSLAYER], double phiproj[N_DISK - 2], double rproj[N_DISK - 2], double phider[N_DISK - 2], double rder[N_DISK - 2]) |
void | exacttrackletOverlap (double r1, double z1, double phi1, double r2, double z2, double phi2, double, double &rinv, double &phi0, double &t, double &z0, double phiprojLayer[N_PSLAYER], double zprojLayer[N_PSLAYER], double phiderLayer[N_PSLAYER], double zderLayer[N_PSLAYER], double phiproj[N_DISK - 2], double rproj[N_DISK - 2], double phider[N_DISK - 2], double rder[N_DISK - 2]) |
bool | goodTrackPars (bool goodrinv, bool goodz0) |
bool | inSector (int iphi0, int irinv, double phi0approx, double rinvapprox) |
bool | overlapSeeding (const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *outerFPGAStub, const L1TStub *outerStub) |
TrackletCalculatorBase (std::string name, Settings const &settings, Globals *global) | |
~TrackletCalculatorBase () override=default | |
Public Member Functions inherited from trklet::ProcessBase | |
unsigned int | getISeed (const std::string &name) |
std::string const & | getName () const |
void | initLayerDisk (unsigned int pos, int &layer, int &disk) |
void | initLayerDisk (unsigned int pos, int &layer, int &disk, int &layerdisk) |
unsigned int | initLayerDisk (unsigned int pos) |
void | initLayerDisksandISeed (unsigned int &layerdisk1, unsigned int &layerdisk2, unsigned int &iSeed) |
unsigned int | nbits (unsigned int power) |
ProcessBase (std::string name, Settings const &settings, Globals *global) | |
virtual | ~ProcessBase ()=default |
Private Member Functions | |
void | writeFirmwareDesign (void(*writeDesign)(const std::vector< VarBase *> &, const std::string &)) |
void | writeInvTable (void(*writeLUT)(const VarInv &, const std::string &)) |
Private Attributes | |
std::vector< AllStubsMemory * > | innerallstubs_ |
int | iTC_ |
std::vector< AllStubsMemory * > | outerallstubs_ |
std::vector< StubPairsMemory * > | stubpairs_ |
Additional Inherited Members | |
Protected Attributes inherited from trklet::TrackletCalculatorBase | |
unsigned int | iSector_ |
unsigned int | iSeed_ |
unsigned int | layerdisk1_ |
unsigned int | layerdisk2_ |
double | phimax_ |
double | phimin_ |
int | TCIndex_ |
TrackletParametersMemory * | trackletpars_ |
std::vector< std::vector< TrackletProjectionsMemory * > > | trackletprojdisks_ |
std::vector< std::vector< TrackletProjectionsMemory * > > | trackletprojlayers_ |
Protected Attributes inherited from trklet::ProcessBase | |
Globals * | globals_ |
std::string | name_ |
Settings const & | settings_ |
Definition at line 20 of file TrackletCalculator.h.
TrackletCalculator::TrackletCalculator | ( | std::string | name, |
Settings const & | settings, | ||
Globals * | globals | ||
) |
Definition at line 17 of file TrackletCalculator.cc.
References funct::abs(), cms::cuda::assert(), compareTotals::fs, trklet::ProcessBase::globals_, trklet::VarBase::hls, trklet::VarBase::hls_print(), trklet::ProcessBase::initLayerDisksandISeed(), trklet::TrackletCalculatorBase::iSeed_, iTC_, trklet::Globals::ITC_L1L2(), trklet::VarBase::K(), trklet::TrackletCalculatorBase::layerdisk1_, trklet::TrackletCalculatorBase::layerdisk2_, trklet::N_DISK, trklet::N_LAYER, trklet::Settings::nallstubs(), trklet::ProcessBase::name_, trklet::Settings::ntrackletmax(), trklet::IMATH_TrackletCalculator::phi0_final, trklet::Settings::rcrit(), trklet::Settings::reduced(), trklet::IMATH_TrackletCalculator::rinv_final, trklet::ProcessBase::settings_, trklet::TrackletCalculatorBase::TCIndex_, createJobs::tmp, trklet::TrackletCalculatorBase::trackletprojdisks_, trklet::TrackletCalculatorBase::trackletprojlayers_, trklet::Settings::usephicritapprox(), findQualityFiles::v, trklet::VarBase::verilog, trklet::VarBase::verilog_print(), funct::void, writeFirmwareDesign(), trklet::Settings::writeHLS(), trklet::Settings::writeHLSInvTable(), writeInvTable(), trklet::Settings::writeInvTable(), trklet::Settings::writeTable(), trklet::Settings::writeVerilog(), and x.
|
overridedefault |
|
overridevirtual |
Implements trklet::ProcessBase.
Definition at line 131 of file TrackletCalculator.cc.
References cms::cuda::assert(), Exception, innerallstubs_, input, mps_setup::memory, trklet::ProcessBase::name_, outerallstubs_, trklet::ProcessBase::settings_, stubpairs_, createJobs::tmp, and trklet::Settings::writetrace().
|
overridevirtual |
Implements trklet::ProcessBase.
Definition at line 89 of file TrackletCalculator.cc.
References cms::cuda::assert(), Exception, mps_setup::memory, trklet::N_DISK, trklet::N_LAYER, trklet::ProcessBase::name_, convertSQLitetoXML_cfg::output, trklet::ProcessBase::settings_, findQualityFiles::size, createJobs::tmp, trklet::TrackletCalculatorBase::trackletpars_, trklet::TrackletCalculatorBase::trackletprojdisks_, trklet::TrackletCalculatorBase::trackletprojlayers_, and trklet::Settings::writetrace().
void TrackletCalculator::addOutputProjection | ( | TrackletProjectionsMemory *& | outputProj, |
MemoryBase * | memory | ||
) |
Definition at line 84 of file TrackletCalculator.cc.
References cms::cuda::assert(), and mps_setup::memory.
void TrackletCalculator::execute | ( | unsigned int | iSector, |
double | phimin, | ||
double | phimax | ||
) |
Definition at line 157 of file TrackletCalculator.cc.
References accept(), trklet::TrackletCalculatorBase::barrelSeeding(), trklet::Settings::debugTracklet(), trklet::TrackletCalculatorBase::diskSeeding(), Exception, trklet::ProcessBase::getName(), trklet::ProcessBase::globals_, mps_fire::i, trklet::TrackletCalculatorBase::iSector_, trklet::Stub::l1tstub(), trklet::Stub::layerdisk(), trklet::Settings::maxStep(), trklet::N_LAYER, trklet::Settings::ntrackletmax(), trklet::TrackletParametersMemory::nTracklets(), trklet::Globals::ofstream(), trklet::TrackletCalculatorBase::overlapSeeding(), phimax, trklet::TrackletCalculatorBase::phimax_, phimin, trklet::TrackletCalculatorBase::phimin_, trklet::ProcessBase::settings_, stubpairs_, trklet::TrackletCalculatorBase::trackletpars_, and trklet::Settings::writeMonitorData().
|
private |
Definition at line 285 of file TrackletCalculator.cc.
References trklet::IMATH_TrackletCalculatorDisk::der_phiD_final, trklet::IMATH_TrackletCalculatorOverlap::der_phiD_final, trklet::IMATH_TrackletCalculator::der_phiD_final, trklet::IMATH_TrackletCalculatorDisk::der_phiL_final, trklet::IMATH_TrackletCalculatorOverlap::der_phiL_final, trklet::IMATH_TrackletCalculator::der_phiL_final, trklet::IMATH_TrackletCalculatorDisk::der_rD_final, trklet::IMATH_TrackletCalculatorOverlap::der_rD_final, trklet::IMATH_TrackletCalculator::der_rD_final, trklet::IMATH_TrackletCalculatorDisk::der_zL_final, trklet::IMATH_TrackletCalculatorOverlap::der_zL_final, trklet::IMATH_TrackletCalculator::der_zL_final, trklet::ProcessBase::globals_, trklet::TrackletCalculatorBase::iSeed_, trklet::Globals::ITC_B1B2(), trklet::Globals::ITC_B3B4(), trklet::Globals::ITC_F1F2(), trklet::Globals::ITC_F3F4(), trklet::Globals::ITC_L1B1(), trklet::Globals::ITC_L1F1(), trklet::Globals::ITC_L1L2(), trklet::Globals::ITC_L2B1(), trklet::Globals::ITC_L2F1(), trklet::Globals::ITC_L2L3(), trklet::Globals::ITC_L3L4(), trklet::Globals::ITC_L5L6(), trklet::IMATH_TrackletCalculatorDisk::phi0_final, trklet::IMATH_TrackletCalculatorOverlap::phi0_final, trklet::IMATH_TrackletCalculator::phi0_final, trklet::IMATH_TrackletCalculatorDisk::phiD_0_final, trklet::IMATH_TrackletCalculatorOverlap::phiD_0_final, trklet::IMATH_TrackletCalculator::phiD_0_final, trklet::IMATH_TrackletCalculatorDisk::phiD_1_final, trklet::IMATH_TrackletCalculatorOverlap::phiD_1_final, trklet::IMATH_TrackletCalculator::phiD_1_final, trklet::IMATH_TrackletCalculatorDisk::phiD_2_final, trklet::IMATH_TrackletCalculatorOverlap::phiD_2_final, trklet::IMATH_TrackletCalculator::phiD_2_final, trklet::IMATH_TrackletCalculatorOverlap::phiD_3_final, trklet::IMATH_TrackletCalculator::phiD_3_final, trklet::IMATH_TrackletCalculator::phiD_4_final, trklet::IMATH_TrackletCalculatorDisk::phiL_0_final, trklet::IMATH_TrackletCalculatorOverlap::phiL_0_final, trklet::IMATH_TrackletCalculator::phiL_0_final, trklet::IMATH_TrackletCalculatorDisk::phiL_1_final, trklet::IMATH_TrackletCalculatorOverlap::phiL_1_final, trklet::IMATH_TrackletCalculator::phiL_1_final, trklet::IMATH_TrackletCalculatorDisk::phiL_2_final, trklet::IMATH_TrackletCalculatorOverlap::phiL_2_final, trklet::IMATH_TrackletCalculator::phiL_2_final, trklet::IMATH_TrackletCalculator::phiL_3_final, trklet::IMATH_TrackletCalculatorDisk::rD_0_final, trklet::IMATH_TrackletCalculatorOverlap::rD_0_final, trklet::IMATH_TrackletCalculator::rD_0_final, trklet::IMATH_TrackletCalculatorDisk::rD_1_final, trklet::IMATH_TrackletCalculatorOverlap::rD_1_final, trklet::IMATH_TrackletCalculator::rD_1_final, trklet::IMATH_TrackletCalculatorDisk::rD_2_final, trklet::IMATH_TrackletCalculatorOverlap::rD_2_final, trklet::IMATH_TrackletCalculator::rD_2_final, trklet::IMATH_TrackletCalculatorOverlap::rD_3_final, trklet::IMATH_TrackletCalculator::rD_3_final, trklet::IMATH_TrackletCalculator::rD_4_final, trklet::IMATH_TrackletCalculatorDisk::rinv_final, trklet::IMATH_TrackletCalculatorOverlap::rinv_final, trklet::IMATH_TrackletCalculator::rinv_final, trklet::IMATH_TrackletCalculatorDisk::t_final, trklet::IMATH_TrackletCalculatorOverlap::t_final, trklet::IMATH_TrackletCalculator::t_final, findQualityFiles::v, trklet::IMATH_TrackletCalculatorDisk::z0_final, trklet::IMATH_TrackletCalculatorOverlap::z0_final, trklet::IMATH_TrackletCalculator::z0_final, trklet::IMATH_TrackletCalculatorDisk::zL_0_final, trklet::IMATH_TrackletCalculatorOverlap::zL_0_final, trklet::IMATH_TrackletCalculator::zL_0_final, trklet::IMATH_TrackletCalculatorDisk::zL_1_final, trklet::IMATH_TrackletCalculatorOverlap::zL_1_final, trklet::IMATH_TrackletCalculator::zL_1_final, trklet::IMATH_TrackletCalculatorDisk::zL_2_final, trklet::IMATH_TrackletCalculatorOverlap::zL_2_final, trklet::IMATH_TrackletCalculator::zL_2_final, and trklet::IMATH_TrackletCalculator::zL_3_final.
Referenced by TrackletCalculator().
|
private |
Definition at line 240 of file TrackletCalculator.cc.
References trklet::IMATH_TrackletCalculatorDisk::drinv, trklet::IMATH_TrackletCalculatorOverlap::drinv, trklet::IMATH_TrackletCalculator::drinv, trklet::ProcessBase::globals_, trklet::IMATH_TrackletCalculatorDisk::invt, trklet::IMATH_TrackletCalculatorOverlap::invt, trklet::IMATH_TrackletCalculator::invt, trklet::TrackletCalculatorBase::iSeed_, trklet::Globals::ITC_B1B2(), trklet::Globals::ITC_B3B4(), trklet::Globals::ITC_F1F2(), trklet::Globals::ITC_F3F4(), trklet::Globals::ITC_L1B1(), trklet::Globals::ITC_L1F1(), trklet::Globals::ITC_L1L2(), trklet::Globals::ITC_L2B1(), trklet::Globals::ITC_L2F1(), trklet::Globals::ITC_L2L3(), trklet::Globals::ITC_L3L4(), trklet::Globals::ITC_L5L6(), trklet::ProcessBase::settings_, and trklet::Settings::tablePath().
Referenced by TrackletCalculator().
|
private |
Definition at line 35 of file TrackletCalculator.h.
Referenced by addInput().
|
private |
Definition at line 33 of file TrackletCalculator.h.
Referenced by TrackletCalculator().
|
private |
Definition at line 36 of file TrackletCalculator.h.
Referenced by addInput().
|
private |
Definition at line 37 of file TrackletCalculator.h.
Referenced by addInput(), and execute().