Go to the documentation of this file. 1 #ifndef L1Trigger_TrackFindingTracklet_interface_TrackletCalculatorDisplaced_h
2 #define L1Trigger_TrackFindingTracklet_interface_TrackletCalculatorDisplaced_h
41 const Stub* middleFPGAStub,
43 const Stub* outerFPGAStub,
47 const Stub* middleFPGAStub,
49 const Stub* outerFPGAStub,
53 const Stub* middleFPGAStub,
55 const Stub* outerFPGAStub,
100 double phiprojdisk[
N_DISK],
104 double phiderdisk[
N_DISK],
153 double phiprojdisk[5],
155 double phiderdisk[5],
std::vector< double > toZ_
std::vector< AllStubsMemory * > outerallstubs_
static const std::string input
void addProjection(int layer, int iphi, TrackletProjectionsMemory *trackletprojs, Tracklet *tracklet)
std::vector< AllStubsMemory * > innerallstubs_
std::vector< StubTripletsMemory * > stubtriplets_
bool addLayerProj(Tracklet *tracklet, int layer)
std::vector< AllStubsMemory * > middleallstubs_
void approxprojdisk(double halfRinv, double phi0, double d0, double t, double z0, double halfRinv_0, double d0_0, double zmean, double &phiproj, double &phiprojder, double &rproj, double &rprojder)
void execute(unsigned int iSector, double phimin, double phimax)
std::vector< std::vector< TrackletProjectionsMemory * > > trackletprojlayers_
double rzmeanInv_[N_DISK - 2]
void exacttracklet(double r1, double z1, double phi1, double r2, double z2, double phi2, double r3, double z3, double phi3, int take3, double &rinv, double &phi0, double &d0, double &t, double &z0, double phiproj[N_LAYER - 2], double zproj[N_LAYER - 2], double phiprojdisk[N_DISK], double rprojdisk[N_DISK], double phider[N_LAYER - 2], double zder[N_LAYER - 2], double phiderdisk[N_DISK], double rderdisk[N_DISK])
constexpr std::array< uint8_t, layerIndexSize > layer
void exactprojdisk(double zproj, double rinv, double, double, double t, double z0, double x0, double y0, double &phiproj, double &rproj, double &phider, double &rder)
bool LLDSeeding(const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *middleFPGAStub, const L1TStub *middleStub, const Stub *outerFPGAStub, const L1TStub *outerStub)
void addDiskProj(Tracklet *tracklet, int disk)
double rinv(double phi1, double phi2, double r1, double r2)
bool LLLSeeding(const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *middleFPGAStub, const L1TStub *middleStub, const Stub *outerFPGAStub, const L1TStub *outerStub)
double zproj_[N_DISK - 2]
double rproj_[N_LAYER - 2]
std::vector< std::vector< TrackletProjectionsMemory * > > trackletprojdisks_
~TrackletCalculatorDisplaced() override=default
void approxtracklet(double r1, double z1, double phi1, double r2, double z2, double phi2, double r3, double z3, double phi3, bool take3, unsigned ndisks, double &rinv, double &phi0, double &d0, double &t, double &z0, double phiproj[4], double zproj[4], double phider[4], double zder[4], double phiprojdisk[5], double rprojdisk[5], double phiderdisk[5], double rderdisk[5])
void approxproj(double halfRinv, double phi0, double d0, double t, double z0, double halfRinv_0, double d0_0, double rmean, double &phiproj, double &phiprojder, double &zproj, double &zprojder)
std::vector< double > toR_
void exactproj(double rproj, double rinv, double phi0, double d0, double t, double z0, double r0, double &phiproj, double &zproj, double &phider, double &zder)
bool DDLSeeding(const Stub *innerFPGAStub, const L1TStub *innerStub, const Stub *middleFPGAStub, const L1TStub *middleStub, const Stub *outerFPGAStub, const L1TStub *outerStub)
void addOutput(MemoryBase *memory, std::string output) override
TrackletParametersMemory * trackletpars_
void addInput(MemoryBase *memory, std::string input) override
TrackletCalculatorDisplaced(std::string name, Settings const &settings, Globals *global)
static constexpr float d0
void addOutputProjection(TrackletProjectionsMemory *&outputProj, MemoryBase *memory)
void addProjectionDisk(int disk, int iphi, TrackletProjectionsMemory *trackletprojs, Tracklet *tracklet)