CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
trklet::Tracklet Class Reference

#include <Tracklet.h>

Public Member Functions

void addMatch (int layer, int ideltaphi, int ideltaz, double dphi, double dz, double dphiapprox, double dzapprox, int stubid, double rstub, const trklet::Stub *stubptr)
 
void addMatchDisk (int disk, int ideltaphi, int ideltar, double dphi, double dr, double dphiapprox, double drapprox, double alpha, int stubid, double zstub, const trklet::Stub *stubptr)
 
std::string addressstr ()
 
double alphadisk (int disk) const
 
unsigned int calcSeedIndex () const
 
double chiSqfit () const
 
double d0 () const
 
double d0approx () const
 
double d0fit () const
 
double d0fitexact () const
 
int disk () const
 
int disk2 () const
 
int finervm (int disk) const
 
int finezvm (int layer) const
 
bool fit () const
 
const FPGAWordfpgad0 () const
 
const FPGAWordfpgaphi0 () const
 
const FPGAWordfpgaphiproj (int layer) const
 
const FPGAWordfpgaphiprojder (int layer) const
 
const FPGAWordfpgaphiprojderdisk (int disk) const
 
const FPGAWordfpgaphiprojdisk (int disk) const
 
const FPGAWordfpgaphiresid (int layer) const
 
const FPGAWordfpgaphiresiddisk (int disk)
 
const FPGAWordfpgarinv () const
 
const FPGAWordfpgarprojderdisk (int disk) const
 
const FPGAWordfpgarprojdisk (int disk) const
 
const FPGAWordfpgarresiddisk (int disk)
 
const FPGAWordfpgat () const
 
const FPGAWordfpgaz0 () const
 
const FPGAWordfpgazproj (int layer) const
 
const FPGAWordfpgazprojder (int layer) const
 
const FPGAWordfpgazresid (int layer) const
 
std::string fullmatchdiskstr (int disk)
 
std::string fullmatchstr (int layer)
 
const FPGAWordgetBendIndex (int disk) const
 
int getISeed () const
 
int getITC () const
 
std::vector< const L1TStub * > getL1Stubs ()
 
std::map< int, int > getStubIDs ()
 
TrackgetTrack ()
 
const FPGAWordialphadisk (int disk) const
 
FPGAWord ichiSqfit () const
 
const FPGAWordid0fit () const
 
const StubinnerFPGAStub ()
 
const L1TStubinnerStub ()
 
const FPGAWordiphi0fit () const
 
const FPGAWordirinvfit () const
 
bool isBarrel () const
 
int isDisk () const
 
bool isOverlap () const
 
const FPGAWorditfit () const
 
const FPGAWordiz0fit () const
 
int layer () const
 
Track makeTrack (const std::vector< const L1TStub * > &l1stubs)
 
bool match (int layer)
 
bool matchdisk (int disk)
 
const StubmiddleFPGAStub ()
 
const L1TStubmiddleStub ()
 
int nMatches ()
 
int nMatchesDisk ()
 
const StubouterFPGAStub ()
 
const L1TStubouterStub ()
 
double phi0 () const
 
double phi0approx () const
 
double phi0fit () const
 
double phi0fitexact () const
 
double phiproj (int layer) const
 
double phiprojapprox (int layer) const
 
double phiprojapproxdisk (int disk) const
 
double phiprojder (int layer) const
 
double phiprojderapprox (int layer) const
 
double phiprojderapproxdisk (int disk) const
 
double phiprojderdisk (int disk) const
 
double phiprojdisk (int disk) const
 
int phiprojvm (int layer) const
 
double phiresid (int layer) const
 
double phiresidapprox (int layer) const
 
double phiresidapproxdisk (int disk)
 
double phiresiddisk (int disk)
 
unsigned int PSseed () const
 
int rbin1projvm (int disk) const
 
int rbin2projvm (int disk) const
 
double rinv () const
 
double rinvapprox () const
 
double rinvfit () const
 
double rinvfitexact () const
 
double rproj (int layer) const
 
double rprojapproxdisk (int disk) const
 
double rprojderapproxdisk (int disk) const
 
double rprojderdisk (int disk) const
 
double rprojdisk (int disk) const
 
double rresidapproxdisk (int disk)
 
double rresiddisk (int disk)
 
double rstub (int layer)
 
unsigned int seedIndex () const
 
void setBendIndex (int bendIndex, int disk)
 
void setFitPars (double rinvfit, double phi0fit, double d0fit, double tfit, double z0fit, double chisqrphifit, double chisqrzfit, double rinvfitexact, double phi0fitexact, double d0fitexact, double tfitexact, double z0fitexact, double chisqrphifitexact, double chisqrzfitexact, int irinvfit, int iphi0fit, int id0fit, int itfit, int iz0fit, int ichisqrphifit, int ichisqrzfit, int hitpattern, const std::vector< const L1TStub * > &l1stubs=std::vector< const L1TStub * >())
 
void setTCIndex (int index)
 
void setTrackletIndex (int index)
 
const trklet::Stubstubptr (int layer) const
 
bool stubtruthmatch (const L1TStub *stub)
 
double t () const
 
double tapprox () const
 
int TCID () const
 
int TCIndex () const
 
double tfit () const
 
double tfitexact () const
 
int tpseed ()
 
std::string trackfitstr ()
 
 Tracklet (Settings const &settings, const L1TStub *innerStub, const L1TStub *middleStub, const L1TStub *outerStub, const Stub *innerFPGAStub, const Stub *middleFPGAStub, const Stub *outerFPGAStub, double rinv, double phi0, double d0, double z0, double t, double rinvapprox, double phi0approx, double d0approx, double z0approx, double tapprox, int irinv, int iphi0, int id0, int iz0, int it, LayerProjection layerprojs[N_PROJ], DiskProjection diskprojs[N_PROJ], bool disk, bool overlap=false)
 
int trackletIndex () const
 
std::string trackletparstr ()
 
std::string trackletprojstr (int layer) const
 
std::string trackletprojstrD (int disk) const
 
std::string trackletprojstrdisk (int disk) const
 
std::string trackletprojstrlayer (int layer) const
 
bool validProj (int layer) const
 
bool validProjDisk (int disk) const
 
bool validResid (int layer) const
 
std::string vmstrdisk (int disk, unsigned int allstubindex)
 
std::string vmstrlayer (int layer, unsigned int allstubindex)
 
double z0 () const
 
double z0approx () const
 
double z0fit () const
 
double z0fitexact () const
 
int zbin1projvm (int layer) const
 
int zbin2projvm (int layer) const
 
double zproj (int layer) const
 
double zprojapprox (int layer) const
 
double zprojder (int layer) const
 
double zprojderapprox (int layer) const
 
int zprojvm (int layer) const
 
double zresid (int layer) const
 
double zresidapprox (int layer) const
 
double zstubdisk (int disk)
 
 ~Tracklet ()=default
 

Private Attributes

bool barrel_
 
double chisqrphifit_
 
double chisqrphifitexact_
 
double chisqrzfit_
 
double chisqrzfitexact_
 
bool disk_
 
DiskProjection diskproj_ [N_DISK]
 
DiskResidual diskresid_ [N_DISK]
 
TrackPars< double > fitpars_
 
TrackPars< double > fitparsexact_
 
TrackPars< FPGAWordfpgafitpars_
 
TrackPars< FPGAWordfpgapars_
 
std::unique_ptr< Trackfpgatrack_
 
int hitpattern_
 
FPGAWord ichisqrphifit_
 
FPGAWord ichisqrzfit_
 
const StubinnerFPGAStub_
 
const L1TStubinnerStub_
 
LayerProjection layerproj_ [N_LAYER]
 
LayerResidual layerresid_ [N_LAYER]
 
const StubmiddleFPGAStub_
 
const L1TStubmiddleStub_
 
const StubouterFPGAStub_
 
const L1TStubouterStub_
 
bool overlap_
 
int projdisk_ [N_DISK]
 
int projlayer_ [N_LAYER - 2]
 
unsigned int seedIndex_
 
Settings const & settings_
 
int TCIndex_
 
int trackletIndex_
 
TrackPars< double > trackpars_
 
TrackPars< double > trackparsapprox_
 
bool triplet_
 

Detailed Description

Definition at line 28 of file Tracklet.h.

Constructor & Destructor Documentation

◆ Tracklet()

Tracklet::Tracklet ( Settings const &  settings,
const L1TStub innerStub,
const L1TStub middleStub,
const L1TStub outerStub,
const Stub innerFPGAStub,
const Stub middleFPGAStub,
const Stub outerFPGAStub,
double  rinv,
double  phi0,
double  d0,
double  z0,
double  t,
double  rinvapprox,
double  phi0approx,
double  d0approx,
double  z0approx,
double  tapprox,
int  irinv,
int  iphi0,
int  id0,
int  iz0,
int  it,
LayerProjection  layerprojs[N_PROJ],
DiskProjection  diskprojs[N_PROJ],
bool  disk,
bool  overlap = false 
)

Definition at line 16 of file Tracklet.cc.

42  : settings_(settings) {
43  overlap_ = overlap;
44  disk_ = disk;
45  assert(!(disk && overlap));
46  barrel_ = (!disk) && (!overlap);
47  triplet_ = false;
48 
49  trackletIndex_ = -1;
50  TCIndex_ = -1;
51 
53 
54  if (barrel_ && middleStub == nullptr)
56 
63 
64  trackpars_.init(rinv, phi0, d0, t, z0);
65 
67 
68  fpgapars_.rinv().set(irinv, settings_.nbitsrinv(), false, __LINE__, __FILE__);
69  fpgapars_.phi0().set(iphi0, settings_.nbitsphi0(), false, __LINE__, __FILE__);
70  fpgapars_.d0().set(id0, settings_.nbitsd0(), false, __LINE__, __FILE__);
71  fpgapars_.z0().set(iz0, settings_.nbitsz0(), false, __LINE__, __FILE__);
72  fpgapars_.t().set(it, settings_.nbitst(), false, __LINE__, __FILE__);
73 
74  fpgatrack_ = nullptr;
75 
76  if (innerStub_)
78  if (middleStub_)
80  if (outerStub_)
82 
84 
85  triplet_ = (seedIndex_ >= 8);
86 
87  //fill projection layers
88  for (unsigned int i = 0; i < N_LAYER - 2; i++) {
89  projlayer_[i] = settings.projlayers(seedIndex_, i);
90  }
91 
92  //fill projection disks
93  for (unsigned int i = 0; i < N_DISK; i++) {
94  projdisk_[i] = settings.projdisks(seedIndex_, i);
95  }
96 
97  //Handle projections to the layers
98  for (unsigned int i = 0; i < N_LAYER - 2; i++) {
99  if (projlayer_[i] == 0)
100  continue;
101  if (!layerprojs[i].valid())
102  continue;
103 
104  layerproj_[projlayer_[i] - 1] = layerprojs[i];
105  }
106  //Now handle projections to the disks
107  for (unsigned int i = 0; i < N_DISK; i++) {
108  if (projdisk_[i] == 0)
109  continue;
110  if (!diskprojs[i].valid())
111  continue;
112 
113  diskproj_[projdisk_[i] - 1] = diskprojs[i];
114  }
115 
116  ichisqrphifit_.set(-1, 8, false);
117  ichisqrzfit_.set(-1, 8, false);
118 }

References cms::cuda::assert(), barrel_, calcSeedIndex(), d0(), d0approx(), trklet::L1TStub::disk(), disk(), disk_, diskproj_, fpgapars_, fpgatrack_, mps_fire::i, ichisqrphifit_, ichisqrzfit_, trklet::TrackPars< T >::init(), innerFPGAStub(), innerFPGAStub_, innerStub(), innerStub_, trklet::L1TStub::layer(), layerproj_, middleFPGAStub(), middleFPGAStub_, middleStub(), middleStub_, trklet::N_DISK, trklet::N_LAYER, trklet::Settings::nbitsd0(), trklet::Settings::nbitsphi0(), trklet::Settings::nbitsrinv(), trklet::Settings::nbitst(), trklet::Settings::nbitsz0(), outerFPGAStub(), outerFPGAStub_, outerStub(), outerStub_, goodZToMuMu_cfi::overlap, overlap_, phi0(), phi0approx(), projdisk_, trklet::Settings::projdisks(), projlayer_, trklet::Settings::projlayers(), rinv(), rinvapprox(), seedIndex_, trklet::FPGAWord::set(), settings_, t(), tapprox(), TCIndex_, trackletIndex_, trackpars_, trackparsapprox_, triplet_, RunInfoPI::valid, z0(), and z0approx().

◆ ~Tracklet()

trklet::Tracklet::~Tracklet ( )
default

Member Function Documentation

◆ addMatch()

void Tracklet::addMatch ( int  layer,
int  ideltaphi,
int  ideltaz,
double  dphi,
double  dz,
double  dphiapprox,
double  dzapprox,
int  stubid,
double  rstub,
const trklet::Stub stubptr 
)

Definition at line 310 of file Tracklet.cc.

319  {
320  assert(layer > 0 && layer <= N_LAYER);
321  layerresid_[layer - 1].init(
322  settings_, layer, ideltaphi, ideltaz, stubid, dphi, dz, dphiapprox, dzapprox, rstub, stubptr);
323 }

References cms::cuda::assert(), PVValHelper::dz, trklet::LayerResidual::init(), layer(), layerresid_, trklet::N_LAYER, rstub(), settings_, and stubptr().

Referenced by trklet::MatchCalculator::execute(), and trklet::MatchProcessor::matchCalculator().

◆ addMatchDisk()

void Tracklet::addMatchDisk ( int  disk,
int  ideltaphi,
int  ideltar,
double  dphi,
double  dr,
double  dphiapprox,
double  drapprox,
double  alpha,
int  stubid,
double  zstub,
const trklet::Stub stubptr 
)

Definition at line 325 of file Tracklet.cc.

335  {
336  assert(abs(disk) <= N_DISK);
338  disk,
339  ideltaphi,
340  ideltar,
341  stubid,
342  dphi,
343  dr,
344  dphiapprox,
345  drapprox,
346  zstub,
347  alpha,
348  stubptr->alphanew(),
349  stubptr);
350 }

References funct::abs(), zMuMuMuonUserData::alpha, trklet::Stub::alphanew(), cms::cuda::assert(), disk(), diskresid_, flavorHistoryFilter_cfi::dr, trklet::DiskResidual::init(), trklet::N_DISK, settings_, and stubptr().

Referenced by trklet::MatchCalculator::execute(), and trklet::MatchProcessor::matchCalculator().

◆ addressstr()

std::string Tracklet::addressstr ( )

Definition at line 190 of file Tracklet.cc.

190  {
193  if (middleFPGAStub_) {
195  }
197 
198  return str;
199 }

References innerFPGAStub_, middleFPGAStub_, outerFPGAStub_, trklet::Stub::phiregionaddressstr(), str, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ alphadisk()

double trklet::Tracklet::alphadisk ( int  disk) const
inline

Definition at line 256 of file Tracklet.h.

256  {
257  assert(abs(disk) <= N_DISK);
258  return diskresid_[abs(disk) - 1].alpha();
259  }

References funct::abs(), trklet::DiskResidual::alpha(), cms::cuda::assert(), disk(), diskresid_, and trklet::N_DISK.

Referenced by trklet::FitTrack::trackFitChisq().

◆ calcSeedIndex()

unsigned int Tracklet::calcSeedIndex ( ) const

Definition at line 861 of file Tracklet.cc.

861  {
862  int seedindex = -1;
863  int seedlayer = layer();
864  int seeddisk = disk();
865 
866  if (seedlayer == 1 && seeddisk == 0)
867  seedindex = 0; //L1L2
868  if (seedlayer == 3 && seeddisk == 0)
869  seedindex = 2; //L3L4
870  if (seedlayer == 5 && seeddisk == 0)
871  seedindex = 3; //L5L6
872  if (seedlayer == 0 && abs(seeddisk) == 1)
873  seedindex = 4; //D1D2
874  if (seedlayer == 0 && abs(seeddisk) == 3)
875  seedindex = 5; //D3D4
876  if (seedlayer == 1 && abs(seeddisk) == 1)
877  seedindex = 6; //L1D1
878  if (seedlayer == 2 && abs(seeddisk) == 1)
879  seedindex = 7; //L2D1
880  if (seedlayer == 2 && abs(seeddisk) == 0)
881  seedindex = 1; //L2L3
882  if (middleFPGAStub_ && seedlayer == 2 && seeddisk == 0)
883  seedindex = 8; // L3L4L2
884  if (middleFPGAStub_ && seedlayer == 4 && seeddisk == 0)
885  seedindex = 9; // L5L6L4
886  assert(innerFPGAStub_ != nullptr);
887  assert(outerFPGAStub_ != nullptr);
888  if (middleFPGAStub_ && seedlayer == 2 && abs(seeddisk) == 1) {
889  int l1 = (innerFPGAStub_ && innerFPGAStub_->isBarrel()) ? innerStub_->layer() + 1 : 999,
890  l2 = (middleFPGAStub_ && middleFPGAStub_->isBarrel()) ? middleStub_->layer() + 1 : 999,
891  l3 = (outerFPGAStub_ && outerFPGAStub_->isBarrel()) ? outerStub_->layer() + 1 : 999;
892  if (l1 + l2 + l3 < 1998) { // If two stubs are layer stubs
893  seedindex = 10; // L2L3D1
894  } else {
895  seedindex = 11; // D1D2L2
896  }
897  }
898 
899  if (seedindex < 0) {
900  throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " seedlayer abs(seeddisk) : " << seedlayer
901  << " " << abs(seeddisk);
902  }
903 
904  return seedindex;
905 }

References funct::abs(), cms::cuda::assert(), disk(), Exception, innerFPGAStub_, innerStub_, trklet::Stub::isBarrel(), trklet::L1TStub::layer(), layer(), middleFPGAStub_, middleStub_, outerFPGAStub_, and outerStub_.

Referenced by Tracklet().

◆ chiSqfit()

double trklet::Tracklet::chiSqfit ( ) const
inline

Definition at line 432 of file Tracklet.h.

432 { return chisqrphifit_ + chisqrzfit_; }

References chisqrphifit_, and chisqrzfit_.

◆ d0()

double trklet::Tracklet::d0 ( ) const
inline

Definition at line 411 of file Tracklet.h.

411 { return trackpars_.d0(); }

References trklet::TrackPars< T >::d0(), and trackpars_.

Referenced by trklet::FitTrack::trackFitFake(), and Tracklet().

◆ d0approx()

double trklet::Tracklet::d0approx ( ) const
inline

Definition at line 417 of file Tracklet.h.

417 { return trackparsapprox_.d0(); }

References trklet::TrackPars< T >::d0(), and trackparsapprox_.

Referenced by trklet::FitTrack::trackFitFake(), and Tracklet().

◆ d0fit()

double trklet::Tracklet::d0fit ( ) const
inline

Definition at line 429 of file Tracklet.h.

429 { return fitpars_.d0(); }

References trklet::TrackPars< T >::d0(), and fitpars_.

Referenced by setFitPars().

◆ d0fitexact()

double trklet::Tracklet::d0fitexact ( ) const
inline

Definition at line 436 of file Tracklet.h.

436 { return fitparsexact_.d0(); }

References trklet::TrackPars< T >::d0(), and fitparsexact_.

Referenced by setFitPars().

◆ disk()

int Tracklet::disk ( ) const

◆ disk2()

int Tracklet::disk2 ( ) const

Definition at line 837 of file Tracklet.cc.

837  {
838  if (innerStub_->disk() > 0) {
839  return innerStub_->disk() + 1;
840  }
841  return innerStub_->disk() - 1;
842 }

References trklet::L1TStub::disk(), and innerStub_.

◆ finervm()

int trklet::Tracklet::finervm ( int  disk) const
inline

Definition at line 139 of file Tracklet.h.

139  {
140  assert(disk > 0 && disk <= N_DISK);
141  return diskproj_[disk - 1].fpgafinervm().value();
142  }

References cms::cuda::assert(), disk(), diskproj_, trklet::DiskProjection::fpgafinervm(), trklet::N_DISK, and trklet::FPGAWord::value().

◆ finezvm()

int trklet::Tracklet::finezvm ( int  layer) const
inline

Definition at line 124 of file Tracklet.h.

124  {
125  assert(layer > 0 && layer <= N_LAYER);
126  return layerproj_[layer - 1].fpgafinezvm().value();
127  }

References cms::cuda::assert(), trklet::LayerProjection::fpgafinezvm(), layer(), layerproj_, trklet::N_LAYER, and trklet::FPGAWord::value().

◆ fit()

bool trklet::Tracklet::fit ( ) const
inline

◆ fpgad0()

const FPGAWord& trklet::Tracklet::fpgad0 ( ) const
inline

Definition at line 423 of file Tracklet.h.

423 { return fpgapars_.d0(); }

References fpgapars_.

Referenced by trklet::FitTrack::trackFitFake().

◆ fpgaphi0()

const FPGAWord& trklet::Tracklet::fpgaphi0 ( ) const
inline

Definition at line 422 of file Tracklet.h.

422 { return fpgapars_.phi0(); }

References fpgapars_.

Referenced by trklet::FitTrack::trackFitChisq(), and trklet::FitTrack::trackFitFake().

◆ fpgaphiproj()

const FPGAWord& trklet::Tracklet::fpgaphiproj ( int  layer) const
inline

◆ fpgaphiprojder()

const FPGAWord& trklet::Tracklet::fpgaphiprojder ( int  layer) const
inline

◆ fpgaphiprojderdisk()

const FPGAWord& trklet::Tracklet::fpgaphiprojderdisk ( int  disk) const
inline

◆ fpgaphiprojdisk()

const FPGAWord& trklet::Tracklet::fpgaphiprojdisk ( int  disk) const
inline

◆ fpgaphiresid()

const FPGAWord& trklet::Tracklet::fpgaphiresid ( int  layer) const
inline

Definition at line 395 of file Tracklet.h.

395  {
396  assert(layer > 0 && layer <= N_LAYER);
397  return layerresid_[layer - 1].fpgaphiresid();
398  }

References cms::cuda::assert(), trklet::LayerResidual::fpgaphiresid(), layer(), layerresid_, and trklet::N_LAYER.

Referenced by trklet::FitTrack::trackFitChisq().

◆ fpgaphiresiddisk()

const FPGAWord& trklet::Tracklet::fpgaphiresiddisk ( int  disk)
inline

Definition at line 211 of file Tracklet.h.

211  {
212  assert(abs(disk) <= N_DISK);
213  return diskresid_[abs(disk) - 1].fpgaphiresid();
214  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::DiskResidual::fpgaphiresid(), and trklet::N_DISK.

Referenced by trklet::FitTrack::trackFitChisq().

◆ fpgarinv()

const FPGAWord& trklet::Tracklet::fpgarinv ( ) const
inline

Definition at line 421 of file Tracklet.h.

421 { return fpgapars_.rinv(); }

References fpgapars_.

Referenced by trklet::FitTrack::trackFitChisq(), and trklet::FitTrack::trackFitFake().

◆ fpgarprojderdisk()

const FPGAWord& trklet::Tracklet::fpgarprojderdisk ( int  disk) const
inline

◆ fpgarprojdisk()

const FPGAWord& trklet::Tracklet::fpgarprojdisk ( int  disk) const
inline

◆ fpgarresiddisk()

const FPGAWord& trklet::Tracklet::fpgarresiddisk ( int  disk)
inline

Definition at line 216 of file Tracklet.h.

216  {
217  assert(abs(disk) <= N_DISK);
218  return diskresid_[abs(disk) - 1].fpgarresid();
219  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::DiskResidual::fpgarresid(), and trklet::N_DISK.

Referenced by trklet::FitTrack::trackFitChisq().

◆ fpgat()

const FPGAWord& trklet::Tracklet::fpgat ( ) const
inline

Definition at line 424 of file Tracklet.h.

424 { return fpgapars_.t(); }

References fpgapars_.

Referenced by trklet::FitTrack::trackFitChisq(), and trklet::FitTrack::trackFitFake().

◆ fpgaz0()

const FPGAWord& trklet::Tracklet::fpgaz0 ( ) const
inline

Definition at line 425 of file Tracklet.h.

425 { return fpgapars_.z0(); }

References fpgapars_.

Referenced by trklet::FitTrack::trackFitChisq(), and trklet::FitTrack::trackFitFake().

◆ fpgazproj()

const FPGAWord& trklet::Tracklet::fpgazproj ( int  layer) const
inline

◆ fpgazprojder()

const FPGAWord& trklet::Tracklet::fpgazprojder ( int  layer) const
inline

◆ fpgazresid()

const FPGAWord& trklet::Tracklet::fpgazresid ( int  layer) const
inline

Definition at line 400 of file Tracklet.h.

400  {
401  assert(layer > 0 && layer <= N_LAYER);
402  return layerresid_[layer - 1].fpgazresid();
403  }

References cms::cuda::assert(), trklet::LayerResidual::fpgazresid(), layer(), layerresid_, and trklet::N_LAYER.

Referenced by trklet::FitTrack::trackFitChisq().

◆ fullmatchdiskstr()

std::string Tracklet::fullmatchdiskstr ( int  disk)

Definition at line 394 of file Tracklet.cc.

394  {
395  assert(disk > 0 && disk <= N_DISK);
396 
397  FPGAWord tmp;
398  if (trackletIndex_ < 0 || trackletIndex_ > (int)settings_.ntrackletmax()) {
399  throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " trackletIndex_ = " << trackletIndex_;
400  }
401  tmp.set(trackletIndex_, 7, true, __LINE__, __FILE__);
402  FPGAWord tcid;
403  if (settings_.extended()) {
404  tcid.set(TCIndex_, 8, true, __LINE__, __FILE__);
405  } else {
406  tcid.set(TCIndex_, 7, true, __LINE__, __FILE__);
407  }
408  std::string oss = tcid.str() + "|" + tmp.str() + "|" + diskresid_[disk - 1].fpgastubid().str() + "|" +
409  diskresid_[disk - 1].fpgaphiresid().str() + "|" + diskresid_[disk - 1].fpgarresid().str();
410  return oss;
411 }

References cms::cuda::assert(), disk(), diskresid_, Exception, trklet::Settings::extended(), trklet::DiskResidual::fpgaphiresid(), trklet::DiskResidual::fpgarresid(), trklet::DiskResidual::fpgastubid(), trklet::N_DISK, trklet::Settings::ntrackletmax(), trklet::FPGAWord::set(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, TCIndex_, createJobs::tmp, and trackletIndex_.

◆ fullmatchstr()

std::string Tracklet::fullmatchstr ( int  layer)

Definition at line 375 of file Tracklet.cc.

375  {
376  assert(layer > 0 && layer <= N_LAYER);
377 
378  FPGAWord tmp;
379  if (trackletIndex_ < 0 || trackletIndex_ > (int)settings_.ntrackletmax()) {
380  throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " trackletIndex_ = " << trackletIndex_;
381  }
382  tmp.set(trackletIndex_, 7, true, __LINE__, __FILE__);
383  FPGAWord tcid;
384  if (settings_.extended()) {
385  tcid.set(TCIndex_, 8, true, __LINE__, __FILE__);
386  } else {
387  tcid.set(TCIndex_, 7, true, __LINE__, __FILE__);
388  }
389  std::string oss = tcid.str() + "|" + tmp.str() + "|" + layerresid_[layer - 1].fpgastubid().str() + "|" +
390  layerresid_[layer - 1].fpgaphiresid().str() + "|" + layerresid_[layer - 1].fpgazresid().str();
391  return oss;
392 }

References cms::cuda::assert(), Exception, trklet::Settings::extended(), trklet::LayerResidual::fpgaphiresid(), trklet::LayerResidual::fpgastubid(), trklet::LayerResidual::fpgazresid(), layer(), layerresid_, trklet::N_LAYER, trklet::Settings::ntrackletmax(), trklet::FPGAWord::set(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, TCIndex_, createJobs::tmp, and trackletIndex_.

◆ getBendIndex()

const FPGAWord& trklet::Tracklet::getBendIndex ( int  disk) const
inline

Definition at line 251 of file Tracklet.h.

251  {
252  assert(abs(disk) <= N_DISK);
253  return diskproj_[abs(disk) - 1].getBendIndex();
254  }

References funct::abs(), cms::cuda::assert(), disk(), diskproj_, trklet::DiskProjection::getBendIndex(), and trklet::N_DISK.

◆ getISeed()

int Tracklet::getISeed ( ) const

◆ getITC()

int Tracklet::getITC ( ) const

Definition at line 855 of file Tracklet.cc.

855  {
856  int iSeed = getISeed(), iTC = TCIndex_ - (iSeed << 4);
857  assert(iTC >= 0 && iTC <= 14);
858  return iTC;
859 }

References cms::cuda::assert(), getISeed(), and TCIndex_.

◆ getL1Stubs()

std::vector< const L1TStub * > Tracklet::getL1Stubs ( )

Definition at line 413 of file Tracklet.cc.

413  {
414  std::vector<const L1TStub*> tmp;
415 
416  if (innerStub_)
417  tmp.push_back(innerStub_);
418  if (middleStub_)
419  tmp.push_back(middleStub_);
420  if (outerStub_)
421  tmp.push_back(outerStub_);
422 
423  for (const auto& ilayerresid : layerresid_) {
424  if (ilayerresid.valid())
425  tmp.push_back(ilayerresid.stubptr()->l1tstub());
426  }
427 
428  for (const auto& idiskresid : diskresid_) {
429  if (idiskresid.valid())
430  tmp.push_back(idiskresid.stubptr()->l1tstub());
431  }
432 
433  return tmp;
434 }

References diskresid_, innerStub_, layerresid_, middleStub_, outerStub_, and createJobs::tmp.

Referenced by makeTrack().

◆ getStubIDs()

std::map< int, int > Tracklet::getStubIDs ( )

Definition at line 436 of file Tracklet.cc.

436  {
437  std::map<int, int> stubIDs;
438 
439  // For future reference, *resid_[i] uses i as the absolute stub index. (0-5 for barrel, 0-4 for disk)
440  // On the other hand, proj*_[i] uses i almost like *resid_[i], except the *seeding* layer indices are removed entirely.
441  // E.g. An L3L4 track has 0=L1, 1=L2, 2=L4, 3=L5 for the barrels (for proj*_[i])
442 
443  if (innerFPGAStub_)
445  if (middleFPGAStub_)
447  if (outerFPGAStub_)
449 
450  if (barrel_) {
451  for (int i = 0; i < N_LAYER; i++) {
452  //check barrel
453  if (layerresid_[i].valid()) {
454  // two extra bits to indicate if the matched stub is local or from neighbor
455  int location = 1; // local
457 
458  stubIDs[1 + i] = layerresid_[i].fpgastubid().value() + location;
459  }
460 
461  //check disk
462  if (i >= N_DISK)
463  continue; //i=[0..4] for disks
464  if (diskresid_[i].valid()) {
465  if (i == 3 && layerresid_[0].valid() && innerFPGAStub_->layer().value() == 1)
466  continue; // Don't add D4 if track has L1 stub
467  // two extra bits to indicate if the matched stub is local or from neighbor
468  int location = 1; // local
470 
471  if (itfit().value() < 0) {
472  stubIDs[-11 - i] = diskresid_[i].fpgastubid().value() + location;
473  } else {
474  stubIDs[11 + i] = diskresid_[i].fpgastubid().value() + location;
475  }
476  }
477  }
478 
479  //get stubs making up tracklet
480  if (innerFPGAStub_)
481  stubIDs[innerFPGAStub_->layer().value() + 1] = innerFPGAStub_->phiregionaddress() + (1 << 10);
482  if (middleFPGAStub_)
483  stubIDs[middleFPGAStub_->layer().value() + 1] = middleFPGAStub_->phiregionaddress() + (1 << 10);
484  if (outerFPGAStub_)
485  stubIDs[outerFPGAStub_->layer().value() + 1] = outerFPGAStub_->phiregionaddress() + (1 << 10);
486 
487  } else if (disk_) {
488  for (int i = 0; i < N_DISK; i++) {
489  //check barrel
490  if (layerresid_[i].valid()) {
491  // two extra bits to indicate if the matched stub is local or from neighbor
492  int location = 1; // local
494 
495  stubIDs[1 + i] = layerresid_[i].fpgastubid().value() + location;
496  }
497 
498  //check disks
499  if (i == 4 && layerresid_[1].valid())
500  continue; // Don't add D5 if track has L2 stub
501  if (diskresid_[i].valid()) {
502  // two extra bits to indicate if the matched stub is local or from neighbor
503  int location = 1; // local
505 
506  if (innerStub_->disk() < 0) {
507  stubIDs[-11 - i] = diskresid_[i].fpgastubid().value() + location;
508  } else {
509  stubIDs[11 + i] = diskresid_[i].fpgastubid().value() + location;
510  }
511  }
512  }
513 
514  //get stubs making up tracklet
515  if (innerFPGAStub_->disk().value() < 0) { //negative side runs 6-10
516  if (innerFPGAStub_)
517  stubIDs[innerFPGAStub_->disk().value() - 10] = innerFPGAStub_->phiregionaddress() + (1 << 10);
518  if (middleFPGAStub_)
519  stubIDs[middleFPGAStub_->disk().value() - 10] = middleFPGAStub_->phiregionaddress() + (1 << 10);
520  if (outerFPGAStub_)
521  stubIDs[outerFPGAStub_->disk().value() - 10] = outerFPGAStub_->phiregionaddress() + (1 << 10);
522  } else { // positive side runs 11-15]
523  if (innerFPGAStub_)
524  stubIDs[innerFPGAStub_->disk().value() + 10] = innerFPGAStub_->phiregionaddress() + (1 << 10);
525  if (middleFPGAStub_)
526  stubIDs[middleFPGAStub_->disk().value() + 10] = middleFPGAStub_->phiregionaddress() + (1 << 10);
527  if (outerFPGAStub_)
528  stubIDs[outerFPGAStub_->disk().value() + 10] = outerFPGAStub_->phiregionaddress() + (1 << 10);
529  }
530 
531  } else if (overlap_) {
532  for (int i = 0; i < N_DISK; i++) {
533  //check barrel
534  if (layerresid_[i].valid()) {
535  // two extra bits to indicate if the matched stub is local or from neighbor
536  int location = 1; // local
538 
539  stubIDs[1 + i] = layerresid_[i].fpgastubid().value() + location;
540  }
541 
542  //check disks
543  if (diskresid_[i].valid()) {
544  // two extra bits to indicate if the matched stub is local or from neighbor
545  int location = 1; // local
547 
548  if (innerStub_->disk() < 0) { // if negative overlap
549  if (innerFPGAStub_->layer().value() != 2 || !layerresid_[0].valid() ||
550  i != 3) { // Don't add D4 if this is an L3L2 track with an L1 stub
551  stubIDs[-11 - i] = diskresid_[i].fpgastubid().value() + location;
552  }
553  } else {
554  if (innerFPGAStub_->layer().value() != 2 || !layerresid_[0].valid() || i != 3) {
555  stubIDs[11 + i] = diskresid_[i].fpgastubid().value() + location;
556  }
557  }
558  }
559  }
560 
561  //get stubs making up tracklet
562 
563  if (innerFPGAStub_->layer().value() == 2) { // L3L2 track
564  if (innerFPGAStub_)
565  stubIDs[innerFPGAStub_->layer().value() + 1] = innerFPGAStub_->phiregionaddress() + (1 << 10);
566  if (middleFPGAStub_)
567  stubIDs[middleFPGAStub_->layer().value() + 1] = middleFPGAStub_->phiregionaddress() + (1 << 10);
568  if (outerFPGAStub_)
569  stubIDs[outerFPGAStub_->layer().value() + 1] = outerFPGAStub_->phiregionaddress() + (1 << 10);
570  } else if (innerFPGAStub_->disk().value() < 0) { //negative side runs -11 - -15
571  if (innerFPGAStub_)
572  stubIDs[innerFPGAStub_->disk().value() - 10] = innerFPGAStub_->phiregionaddress() + (1 << 10);
573  if (middleFPGAStub_)
574  stubIDs[middleFPGAStub_->layer().value() + 1] = middleFPGAStub_->phiregionaddress() + (1 << 10);
575  if (outerFPGAStub_)
576  stubIDs[outerFPGAStub_->layer().value() + 1] = outerFPGAStub_->phiregionaddress() + (1 << 10);
577  } else { // positive side runs 11-15]
578  if (innerFPGAStub_)
579  stubIDs[innerFPGAStub_->disk().value() + 10] = innerFPGAStub_->phiregionaddress() + (1 << 10);
580  if (middleFPGAStub_)
581  stubIDs[middleFPGAStub_->layer().value() + 1] = middleFPGAStub_->phiregionaddress() + (1 << 10);
582  if (outerFPGAStub_)
583  stubIDs[outerFPGAStub_->layer().value() + 1] = outerFPGAStub_->phiregionaddress() + (1 << 10);
584  }
585  }
586 
587  return stubIDs;
588 }

References cms::cuda::assert(), barrel_, trklet::L1TStub::disk(), trklet::Stub::disk(), disk_, diskresid_, trklet::LayerResidual::fpgastubid(), trklet::DiskResidual::fpgastubid(), mps_fire::i, innerFPGAStub_, innerStub_, itfit(), trklet::Stub::layer(), layerresid_, EcalCondDBWriter_cfi::location, middleFPGAStub_, trklet::N_DISK, trklet::N_LAYER, trklet::FPGAWord::nbits(), outerFPGAStub_, overlap_, trklet::Stub::phiregionaddress(), trklet::Stub::stubindex(), RunInfoPI::valid, trklet::LayerResidual::valid(), trklet::FPGAWord::value(), and relativeConstraints::value.

Referenced by makeTrack().

◆ getTrack()

Track* trklet::Tracklet::getTrack ( )
inline

Definition at line 477 of file Tracklet.h.

477  {
478  assert(fpgatrack_ != nullptr);
479  return fpgatrack_.get();
480  }

References cms::cuda::assert(), and fpgatrack_.

Referenced by trklet::PurgeDuplicate::execute().

◆ ialphadisk()

const FPGAWord& trklet::Tracklet::ialphadisk ( int  disk) const
inline

Definition at line 261 of file Tracklet.h.

261  {
262  assert(abs(disk) <= N_DISK);
263  return diskresid_[abs(disk) - 1].ialpha();
264  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::DiskResidual::ialpha(), and trklet::N_DISK.

Referenced by trklet::FitTrack::trackFitChisq().

◆ ichiSqfit()

FPGAWord trklet::Tracklet::ichiSqfit ( ) const
inline

Definition at line 445 of file Tracklet.h.

445  {
446  return FPGAWord(ichisqrphifit_.value() + ichisqrzfit_.value(), ichisqrphifit_.nbits());
447  }

References ichisqrphifit_, ichisqrzfit_, trklet::FPGAWord::nbits(), and trklet::FPGAWord::value().

◆ id0fit()

const FPGAWord& trklet::Tracklet::id0fit ( ) const
inline

Definition at line 442 of file Tracklet.h.

442 { return fpgafitpars_.d0(); }

References fpgafitpars_.

Referenced by setFitPars().

◆ innerFPGAStub()

const Stub* trklet::Tracklet::innerFPGAStub ( )
inline

Definition at line 66 of file Tracklet.h.

66 { return innerFPGAStub_; }

References innerFPGAStub_.

Referenced by Tracklet().

◆ innerStub()

const L1TStub* trklet::Tracklet::innerStub ( )
inline

Definition at line 65 of file Tracklet.h.

65 { return innerStub_; }

References innerStub_.

Referenced by trklet::FitTrack::trackFitChisq(), and Tracklet().

◆ iphi0fit()

const FPGAWord& trklet::Tracklet::iphi0fit ( ) const
inline

Definition at line 441 of file Tracklet.h.

441 { return fpgafitpars_.phi0(); }

References fpgafitpars_.

Referenced by setFitPars().

◆ irinvfit()

const FPGAWord& trklet::Tracklet::irinvfit ( ) const
inline

Definition at line 440 of file Tracklet.h.

440 { return fpgafitpars_.rinv(); }

References fpgafitpars_.

Referenced by setFitPars().

◆ isBarrel()

bool trklet::Tracklet::isBarrel ( ) const
inline

Definition at line 488 of file Tracklet.h.

488 { return barrel_; }

References barrel_.

Referenced by trklet::FitTrack::trackFitChisq(), and trackfitstr().

◆ isDisk()

int trklet::Tracklet::isDisk ( ) const
inline

Definition at line 490 of file Tracklet.h.

490 { return disk_; }

References disk_.

Referenced by trklet::FitTrack::trackFitChisq(), and trackfitstr().

◆ isOverlap()

bool trklet::Tracklet::isOverlap ( ) const
inline

Definition at line 489 of file Tracklet.h.

489 { return overlap_; }

References overlap_.

Referenced by trklet::FitTrack::trackFitChisq(), and trackfitstr().

◆ itfit()

const FPGAWord& trklet::Tracklet::itfit ( ) const
inline

Definition at line 443 of file Tracklet.h.

443 { return fpgafitpars_.t(); }

References fpgafitpars_.

Referenced by getStubIDs(), and setFitPars().

◆ iz0fit()

const FPGAWord& trklet::Tracklet::iz0fit ( ) const
inline

Definition at line 444 of file Tracklet.h.

444 { return fpgafitpars_.z0(); }

References fpgafitpars_.

Referenced by setFitPars().

◆ layer()

int Tracklet::layer ( ) const

◆ makeTrack()

Track Tracklet::makeTrack ( const std::vector< const L1TStub * > &  l1stubs)

Definition at line 794 of file Tracklet.cc.

794  {
795  assert(fit());
796 
797  TrackPars<int> ipars(fpgafitpars_.rinv().value(),
798  fpgafitpars_.phi0().value(),
799  fpgafitpars_.d0().value(),
800  fpgafitpars_.t().value(),
801  fpgafitpars_.z0().value());
802 
803  Track tmpTrack(
804  ipars,
808  chisqrzfit_,
809  hitpattern_,
810  getStubIDs(),
811  (l1stubs.empty()) ? getL1Stubs() : l1stubs, // If fitter produced no stub list, take it from original tracklet.
812  getISeed());
813 
814  return tmpTrack;
815 }

References cms::cuda::assert(), chisqrphifit_, chisqrzfit_, fit(), fpgafitpars_, getISeed(), getL1Stubs(), getStubIDs(), hitpattern_, ichisqrphifit_, ichisqrzfit_, and trklet::FPGAWord::value().

Referenced by setFitPars().

◆ match()

bool trklet::Tracklet::match ( int  layer)
inline

Definition at line 357 of file Tracklet.h.

357  {
358  assert(layer > 0 && layer <= N_LAYER);
359  return layerresid_[layer - 1].valid();
360  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::valid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ matchdisk()

bool trklet::Tracklet::matchdisk ( int  disk)
inline

Definition at line 326 of file Tracklet.h.

326  {
327  assert(abs(disk) <= N_DISK);
328  return diskresid_[abs(disk) - 1].valid();
329  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::valid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ middleFPGAStub()

const Stub* trklet::Tracklet::middleFPGAStub ( )
inline

Definition at line 69 of file Tracklet.h.

69 { return middleFPGAStub_; }

References middleFPGAStub_.

Referenced by Tracklet().

◆ middleStub()

const L1TStub* trklet::Tracklet::middleStub ( )
inline

Definition at line 68 of file Tracklet.h.

68 { return middleStub_; }

References middleStub_.

Referenced by Tracklet().

◆ nMatches()

int Tracklet::nMatches ( )

Definition at line 352 of file Tracklet.cc.

352  {
353  int nmatches = 0;
354 
355  for (const auto& ilayerresid : layerresid_) {
356  if (ilayerresid.valid()) {
357  nmatches++;
358  }
359  }
360 
361  return nmatches;
362 }

References layerresid_.

◆ nMatchesDisk()

int Tracklet::nMatchesDisk ( )

Definition at line 364 of file Tracklet.cc.

364  {
365  int nmatches = 0;
366 
367  for (const auto& idiskresid : diskresid_) {
368  if (idiskresid.valid()) {
369  nmatches++;
370  }
371  }
372  return nmatches;
373 }

References diskresid_.

◆ outerFPGAStub()

const Stub* trklet::Tracklet::outerFPGAStub ( )
inline

Definition at line 72 of file Tracklet.h.

72 { return outerFPGAStub_; }

References outerFPGAStub_.

Referenced by Tracklet().

◆ outerStub()

const L1TStub* trklet::Tracklet::outerStub ( )
inline

Definition at line 71 of file Tracklet.h.

71 { return outerStub_; }

References outerStub_.

Referenced by trklet::FitTrack::trackFitChisq(), and Tracklet().

◆ phi0()

double trklet::Tracklet::phi0 ( ) const
inline

Definition at line 410 of file Tracklet.h.

410 { return trackpars_.phi0(); }

References trklet::TrackPars< T >::phi0(), and trackpars_.

Referenced by trklet::FitTrack::trackFitChisq(), trklet::FitTrack::trackFitFake(), and Tracklet().

◆ phi0approx()

double trklet::Tracklet::phi0approx ( ) const
inline

◆ phi0fit()

double trklet::Tracklet::phi0fit ( ) const
inline

Definition at line 428 of file Tracklet.h.

428 { return fitpars_.phi0(); }

References fitpars_, and trklet::TrackPars< T >::phi0().

Referenced by setFitPars().

◆ phi0fitexact()

double trklet::Tracklet::phi0fitexact ( ) const
inline

Definition at line 435 of file Tracklet.h.

435 { return fitparsexact_.phi0(); }

References fitparsexact_, and trklet::TrackPars< T >::phi0().

Referenced by setFitPars().

◆ phiproj()

double trklet::Tracklet::phiproj ( int  layer) const
inline

◆ phiprojapprox()

double trklet::Tracklet::phiprojapprox ( int  layer) const
inline

◆ phiprojapproxdisk()

double trklet::Tracklet::phiprojapproxdisk ( int  disk) const
inline

◆ phiprojder()

double trklet::Tracklet::phiprojder ( int  layer) const
inline

◆ phiprojderapprox()

double trklet::Tracklet::phiprojderapprox ( int  layer) const
inline

◆ phiprojderapproxdisk()

double trklet::Tracklet::phiprojderapproxdisk ( int  disk) const
inline

◆ phiprojderdisk()

double trklet::Tracklet::phiprojderdisk ( int  disk) const
inline

◆ phiprojdisk()

double trklet::Tracklet::phiprojdisk ( int  disk) const
inline

◆ phiprojvm()

int trklet::Tracklet::phiprojvm ( int  layer) const
inline

◆ phiresid()

double trklet::Tracklet::phiresid ( int  layer) const
inline

Definition at line 375 of file Tracklet.h.

375  {
376  assert(layer > 0 && layer <= N_LAYER);
377  return layerresid_[layer - 1].phiresid();
378  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::phiresid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ phiresidapprox()

double trklet::Tracklet::phiresidapprox ( int  layer) const
inline

Definition at line 380 of file Tracklet.h.

380  {
381  assert(layer > 0 && layer <= N_LAYER);
382  return layerresid_[layer - 1].phiresidapprox();
383  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::phiresidapprox().

Referenced by trklet::FitTrack::trackFitChisq().

◆ phiresidapproxdisk()

double trklet::Tracklet::phiresidapproxdisk ( int  disk)
inline

Definition at line 231 of file Tracklet.h.

231  {
232  assert(abs(disk) <= N_DISK);
233  return diskresid_[abs(disk) - 1].phiresidapprox();
234  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::phiresidapprox().

Referenced by trklet::FitTrack::trackFitChisq().

◆ phiresiddisk()

double trklet::Tracklet::phiresiddisk ( int  disk)
inline

Definition at line 221 of file Tracklet.h.

221  {
222  assert(abs(disk) <= N_DISK);
223  return diskresid_[abs(disk) - 1].phiresid();
224  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::phiresid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ PSseed()

unsigned int trklet::Tracklet::PSseed ( ) const
inline

Definition at line 505 of file Tracklet.h.

505 { return ((layer() == 1) || (layer() == 2) || (disk() != 0)) ? 1 : 0; }

References disk(), and layer().

Referenced by vmstrlayer().

◆ rbin1projvm()

int trklet::Tracklet::rbin1projvm ( int  disk) const
inline

Definition at line 129 of file Tracklet.h.

129  {
130  assert(disk > 0 && disk <= N_DISK);
131  return diskproj_[disk - 1].fpgarbin1projvm().value();
132  }

References cms::cuda::assert(), disk(), diskproj_, trklet::DiskProjection::fpgarbin1projvm(), trklet::N_DISK, and trklet::FPGAWord::value().

◆ rbin2projvm()

int trklet::Tracklet::rbin2projvm ( int  disk) const
inline

Definition at line 134 of file Tracklet.h.

134  {
135  assert(disk > 0 && disk <= N_DISK);
136  return diskproj_[disk - 1].fpgarbin2projvm().value();
137  }

References cms::cuda::assert(), disk(), diskproj_, trklet::DiskProjection::fpgarbin2projvm(), trklet::N_DISK, and trklet::FPGAWord::value().

◆ rinv()

double trklet::Tracklet::rinv ( ) const
inline

◆ rinvapprox()

double trklet::Tracklet::rinvapprox ( ) const
inline

◆ rinvfit()

double trklet::Tracklet::rinvfit ( ) const
inline

Definition at line 427 of file Tracklet.h.

427 { return fitpars_.rinv(); }

References fitpars_, and trklet::TrackPars< T >::rinv().

Referenced by setFitPars().

◆ rinvfitexact()

double trklet::Tracklet::rinvfitexact ( ) const
inline

Definition at line 434 of file Tracklet.h.

434 { return fitparsexact_.rinv(); }

References fitparsexact_, and trklet::TrackPars< T >::rinv().

Referenced by setFitPars().

◆ rproj()

double trklet::Tracklet::rproj ( int  layer) const
inline

◆ rprojapproxdisk()

double trklet::Tracklet::rprojapproxdisk ( int  disk) const
inline

◆ rprojderapproxdisk()

double trklet::Tracklet::rprojderapproxdisk ( int  disk) const
inline

◆ rprojderdisk()

double trklet::Tracklet::rprojderdisk ( int  disk) const
inline

◆ rprojdisk()

double trklet::Tracklet::rprojdisk ( int  disk) const
inline

◆ rresidapproxdisk()

double trklet::Tracklet::rresidapproxdisk ( int  disk)
inline

Definition at line 236 of file Tracklet.h.

236  {
237  assert(abs(disk) <= N_DISK);
238  return diskresid_[abs(disk) - 1].rresidapprox();
239  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::rresidapprox().

Referenced by trklet::FitTrack::trackFitChisq().

◆ rresiddisk()

double trklet::Tracklet::rresiddisk ( int  disk)
inline

Definition at line 226 of file Tracklet.h.

226  {
227  assert(abs(disk) <= N_DISK);
228  return diskresid_[abs(disk) - 1].rresid();
229  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::rresid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ rstub()

double trklet::Tracklet::rstub ( int  layer)
inline

Definition at line 199 of file Tracklet.h.

199  {
200  assert(layer > 0 && layer <= N_LAYER);
201  return layerresid_[layer - 1].rstub();
202  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::rstub().

Referenced by addMatch().

◆ seedIndex()

unsigned int trklet::Tracklet::seedIndex ( ) const
inline

Definition at line 507 of file Tracklet.h.

507 { return seedIndex_; }

References seedIndex_.

Referenced by trklet::PurgeDuplicate::execute(), and trklet::PurgeDuplicate::getPhiRes().

◆ setBendIndex()

void trklet::Tracklet::setBendIndex ( int  bendIndex,
int  disk 
)
inline

Definition at line 246 of file Tracklet.h.

246  {
247  assert(abs(disk) <= N_DISK);
248  diskproj_[abs(disk) - 1].setBendIndex(bendIndex);
249  }

References funct::abs(), cms::cuda::assert(), disk(), diskproj_, trklet::N_DISK, and trklet::DiskProjection::setBendIndex().

Referenced by trklet::ProjectionRouter::execute().

◆ setFitPars()

void Tracklet::setFitPars ( double  rinvfit,
double  phi0fit,
double  d0fit,
double  tfit,
double  z0fit,
double  chisqrphifit,
double  chisqrzfit,
double  rinvfitexact,
double  phi0fitexact,
double  d0fitexact,
double  tfitexact,
double  z0fitexact,
double  chisqrphifitexact,
double  chisqrzfitexact,
int  irinvfit,
int  iphi0fit,
int  id0fit,
int  itfit,
int  iz0fit,
int  ichisqrphifit,
int  ichisqrzfit,
int  hitpattern,
const std::vector< const L1TStub * > &  l1stubs = std::vector<const L1TStub*>() 
)

Definition at line 590 of file Tracklet.cc.

612  {
614  chisqrphifit_ = chisqrphifit;
615  chisqrzfit_ = chisqrzfit;
616 
618  chisqrphifitexact_ = chisqrphifitexact;
619  chisqrzfitexact_ = chisqrzfitexact;
620 
621  if (irinvfit > (1 << 14))
622  irinvfit = (1 << 14);
623  if (irinvfit <= -(1 << 14))
624  irinvfit = -(1 << 14) + 1;
625  fpgafitpars_.rinv().set(irinvfit, 15, false, __LINE__, __FILE__);
626  fpgafitpars_.phi0().set(iphi0fit, 19, false, __LINE__, __FILE__);
627  fpgafitpars_.d0().set(id0fit, 19, false, __LINE__, __FILE__);
628  fpgafitpars_.t().set(itfit, 14, false, __LINE__, __FILE__);
629 
630  if (iz0fit >= (1 << (settings_.nbitsz0() - 1))) {
631  iz0fit = (1 << (settings_.nbitsz0() - 1)) - 1;
632  }
633 
634  if (iz0fit <= -(1 << (settings_.nbitsz0() - 1))) {
635  iz0fit = 1 - (1 << (settings_.nbitsz0() - 1));
636  }
637 
638  fpgafitpars_.z0().set(iz0fit, settings_.nbitsz0(), false, __LINE__, __FILE__);
639  ichisqrphifit_.set(ichisqrphifit, 8, true, __LINE__, __FILE__);
640  ichisqrzfit_.set(ichisqrzfit, 8, true, __LINE__, __FILE__);
641 
642  hitpattern_ = hitpattern;
643 
644  fpgatrack_ = std::make_unique<Track>(makeTrack(l1stubs));
645 }

References chisqrphifit_, chisqrphifitexact_, chisqrzfit_, chisqrzfitexact_, d0fit(), d0fitexact(), fitpars_, fitparsexact_, fpgafitpars_, fpgatrack_, hitpattern_, ichisqrphifit_, ichisqrzfit_, id0fit(), trklet::TrackPars< T >::init(), iphi0fit(), irinvfit(), itfit(), iz0fit(), makeTrack(), trklet::Settings::nbitsz0(), phi0fit(), phi0fitexact(), rinvfit(), rinvfitexact(), trklet::FPGAWord::set(), settings_, tfit(), tfitexact(), z0fit(), and z0fitexact().

Referenced by trklet::FitTrack::trackFitChisq(), and trklet::FitTrack::trackFitFake().

◆ setTCIndex()

void trklet::Tracklet::setTCIndex ( int  index)
inline

◆ setTrackletIndex()

void Tracklet::setTrackletIndex ( int  index)

◆ stubptr()

const trklet::Stub* trklet::Tracklet::stubptr ( int  layer) const
inline

Definition at line 370 of file Tracklet.h.

370  {
371  assert(layer > 0 && layer <= N_LAYER);
372  return layerresid_[layer - 1].stubptr();
373  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::stubptr().

Referenced by addMatch(), addMatchDisk(), and trklet::FitTrack::trackFitChisq().

◆ stubtruthmatch()

bool Tracklet::stubtruthmatch ( const L1TStub stub)

Definition at line 151 of file Tracklet.cc.

151  {
152  set<int> tpset;
153  set<int> tpsetstub;
154  set<int> tpsetstubinner;
155  set<int> tpsetstubouter;
156 
157  vector<int> tps = stub->tps();
158  for (auto tp : tps) {
159  if (tp != 0) {
160  tpsetstub.insert(tp);
161  tpset.insert(abs(tp));
162  }
163  }
164  tps = innerStub_->tps();
165  for (auto tp : tps) {
166  if (tp != 0) {
167  tpsetstubinner.insert(tp);
168  tpset.insert(abs(tp));
169  }
170  }
171  tps = outerStub_->tps();
172  for (auto tp : tps) {
173  if (tp != 0) {
174  tpsetstubouter.insert(tp);
175  tpset.insert(abs(tp));
176  }
177  }
178 
179  for (auto tp : tpset) {
180  if (tpsetstub.find(tp) != tpsetstub.end() && tpsetstub.find(-tp) != tpsetstub.end() &&
181  tpsetstubinner.find(tp) != tpsetstubinner.end() && tpsetstubinner.find(-tp) != tpsetstubinner.end() &&
182  tpsetstubouter.find(tp) != tpsetstubouter.end() && tpsetstubouter.find(-tp) != tpsetstubouter.end()) {
183  return true;
184  }
185  }
186 
187  return false;
188 }

References funct::abs(), innerStub_, outerStub_, cmsswSequenceInfo::tp, and trklet::L1TStub::tps().

Referenced by trklet::MatchCalculator::execute(), and trklet::MatchProcessor::matchCalculator().

◆ t()

double trklet::Tracklet::t ( ) const
inline

◆ tapprox()

double trklet::Tracklet::tapprox ( ) const
inline

◆ TCID()

int trklet::Tracklet::TCID ( ) const
inline

◆ TCIndex()

int trklet::Tracklet::TCIndex ( ) const
inline

Definition at line 498 of file Tracklet.h.

498 { return TCIndex_; }

References TCIndex_.

◆ tfit()

double trklet::Tracklet::tfit ( ) const
inline

Definition at line 430 of file Tracklet.h.

430 { return fitpars_.t(); }

References fitpars_, and trklet::TrackPars< T >::t().

Referenced by setFitPars().

◆ tfitexact()

double trklet::Tracklet::tfitexact ( ) const
inline

Definition at line 437 of file Tracklet.h.

437 { return fitparsexact_.t(); }

References fitparsexact_, and trklet::TrackPars< T >::t().

Referenced by setFitPars().

◆ tpseed()

int Tracklet::tpseed ( )

Definition at line 120 of file Tracklet.cc.

120  {
121  set<int> tpset;
122 
123  set<int> tpsetstubinner;
124  set<int> tpsetstubouter;
125 
126  vector<int> tps = innerStub_->tps();
127  for (auto tp : tps) {
128  if (tp != 0) {
129  tpsetstubinner.insert(tp);
130  tpset.insert(abs(tp));
131  }
132  }
133 
134  tps = outerStub_->tps();
135  for (auto tp : tps) {
136  if (tp != 0) {
137  tpsetstubouter.insert(tp);
138  tpset.insert(abs(tp));
139  }
140  }
141 
142  for (auto& tp : tpset) {
143  if (tpsetstubinner.find(tp) != tpsetstubinner.end() && tpsetstubinner.find(-tp) != tpsetstubinner.end() &&
144  tpsetstubouter.find(tp) != tpsetstubouter.end() && tpsetstubouter.find(-tp) != tpsetstubouter.end()) {
145  return tp;
146  }
147  }
148  return 0;
149 }

References funct::abs(), innerStub_, outerStub_, cmsswSequenceInfo::tp, and trklet::L1TStub::tps().

Referenced by trklet::TrackletCalculatorBase::barrelSeeding().

◆ trackfitstr()

std::string Tracklet::trackfitstr ( )

Definition at line 647 of file Tracklet.cc.

647  {
648  string stubid0 = "111111111";
649  string stubid1 = "111111111";
650  string stubid2 = "111111111";
651  string stubid3 = "111111111";
652 
653  if (isBarrel()) {
654  if (layer() == 1) {
655  if (layerresid_[2].valid()) {
656  stubid0 = layerresid_[2].fpgastubid().str();
657  }
658  if (layerresid_[3].valid()) {
659  stubid1 = layerresid_[3].fpgastubid().str();
660  }
661  if (layerresid_[4].valid()) {
662  stubid2 = layerresid_[4].fpgastubid().str();
663  }
664  if (layerresid_[5].valid()) {
665  stubid3 = layerresid_[5].fpgastubid().str();
666  }
667  if (diskresid_[0].valid()) {
668  stubid3 = diskresid_[0].fpgastubid().str();
669  }
670  if (diskresid_[1].valid()) {
671  stubid2 = diskresid_[1].fpgastubid().str();
672  }
673  if (diskresid_[2].valid()) {
674  stubid1 = diskresid_[2].fpgastubid().str();
675  }
676  if (diskresid_[3].valid()) {
677  stubid0 = diskresid_[3].fpgastubid().str();
678  }
679  }
680 
681  if (layer() == 3) {
682  if (layerresid_[0].valid()) {
683  stubid0 = layerresid_[0].fpgastubid().str();
684  }
685  if (layerresid_[1].valid()) {
686  stubid1 = layerresid_[1].fpgastubid().str();
687  }
688  if (layerresid_[4].valid()) {
689  stubid2 = layerresid_[4].fpgastubid().str();
690  }
691  if (layerresid_[5].valid()) {
692  stubid3 = layerresid_[5].fpgastubid().str();
693  }
694  if (diskresid_[0].valid()) {
695  stubid3 = diskresid_[0].fpgastubid().str();
696  }
697  if (diskresid_[1].valid()) {
698  stubid2 = diskresid_[1].fpgastubid().str();
699  }
700  }
701 
702  if (layer() == 5) {
703  if (layerresid_[0].valid()) {
704  stubid0 = layerresid_[0].fpgastubid().str();
705  }
706  if (layerresid_[1].valid()) {
707  stubid1 = layerresid_[1].fpgastubid().str();
708  }
709  if (layerresid_[2].valid()) {
710  stubid2 = layerresid_[2].fpgastubid().str();
711  }
712  if (layerresid_[3].valid()) {
713  stubid3 = layerresid_[3].fpgastubid().str();
714  }
715  }
716  }
717 
718  if (isDisk()) {
719  if (disk() == 1) {
720  if (layerresid_[0].valid()) {
721  stubid0 = layerresid_[0].fpgastubid().str();
722  }
723  if (diskresid_[2].valid()) {
724  stubid1 = diskresid_[2].fpgastubid().str();
725  }
726  if (diskresid_[3].valid()) {
727  stubid2 = diskresid_[3].fpgastubid().str();
728  }
729  if (diskresid_[4].valid()) {
730  stubid3 = diskresid_[4].fpgastubid().str();
731  } else if (layerresid_[1].valid()) {
732  stubid3 = layerresid_[1].fpgastubid().str();
733  }
734  }
735 
736  if (disk() == 3) {
737  if (layerresid_[0].valid()) {
738  stubid0 = layerresid_[0].fpgastubid().str();
739  }
740  if (diskresid_[0].valid()) {
741  stubid1 = diskresid_[0].fpgastubid().str();
742  }
743  if (diskresid_[1].valid()) {
744  stubid2 = diskresid_[1].fpgastubid().str();
745  }
746  if (diskresid_[4].valid()) {
747  stubid3 = diskresid_[4].fpgastubid().str();
748  } else if (layerresid_[1].valid()) {
749  stubid3 = layerresid_[1].fpgastubid().str();
750  }
751  }
752  }
753 
754  if (isOverlap()) {
755  if (layer() == 1) {
756  if (diskresid_[1].valid()) {
757  stubid0 = diskresid_[1].fpgastubid().str();
758  }
759  if (diskresid_[2].valid()) {
760  stubid1 = diskresid_[2].fpgastubid().str();
761  }
762  if (diskresid_[3].valid()) {
763  stubid2 = diskresid_[3].fpgastubid().str();
764  }
765  if (diskresid_[4].valid()) {
766  stubid3 = diskresid_[4].fpgastubid().str();
767  }
768  }
769  }
770 
771  std::string oss;
772  // real Q print out for fitted tracks
773  if (settings_.writeoutReal()) {
774  oss = std::to_string((fpgafitpars_.rinv().value()) * settings_.krinvpars()) + " " +
775  std::to_string((fpgafitpars_.phi0().value()) * settings_.kphi0pars()) + " " +
776  std::to_string((fpgafitpars_.d0().value()) * settings_.kd0pars()) + " " +
777  std::to_string((fpgafitpars_.t().value()) * settings_.ktpars()) + " " +
778  std::to_string((fpgafitpars_.z0().value()) * settings_.kz()) + " " + innerFPGAStub_->phiregionaddressstr() +
779  " ";
780  }
781  //Binary print out
782  if (!settings_.writeoutReal()) {
783  oss = fpgafitpars_.rinv().str() + "|" + fpgafitpars_.phi0().str() + "|" + fpgafitpars_.d0().str() + "|" +
784  fpgafitpars_.t().str() + "|" + fpgafitpars_.z0().str() + "|" + innerFPGAStub_->phiregionaddressstr() + "|";
785  }
786  if (middleFPGAStub_) {
787  oss += middleFPGAStub_->phiregionaddressstr() + " ";
788  }
789  oss += outerFPGAStub_->phiregionaddressstr() + " " + stubid0 + "|" + stubid1 + "|" + stubid2 + "|" + stubid3;
790 
791  return oss;
792 }

References disk(), diskresid_, fpgafitpars_, trklet::LayerResidual::fpgastubid(), trklet::DiskResidual::fpgastubid(), innerFPGAStub_, isBarrel(), isDisk(), isOverlap(), trklet::Settings::kd0pars(), trklet::Settings::kphi0pars(), trklet::Settings::krinvpars(), trklet::Settings::ktpars(), trklet::Settings::kz(), layer(), layerresid_, middleFPGAStub_, outerFPGAStub_, trklet::Stub::phiregionaddressstr(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, RunInfoPI::valid, and trklet::Settings::writeoutReal().

◆ trackletIndex()

int trklet::Tracklet::trackletIndex ( ) const
inline

Definition at line 494 of file Tracklet.h.

494 { return trackletIndex_; }

References trackletIndex_.

Referenced by trklet::FullMatchMemory::addMatch().

◆ trackletparstr()

std::string Tracklet::trackletparstr ( )

Definition at line 201 of file Tracklet.cc.

201  {
202  if (settings_.writeoutReal()) {
203  std::string oss = std::to_string(fpgapars_.rinv().value() * settings_.krinvpars()) + " " +
204  std::to_string(fpgapars_.phi0().value() * settings_.kphi0pars()) + " " +
205  std::to_string(fpgapars_.d0().value() * settings_.kd0pars()) + " " +
206  std::to_string(fpgapars_.z0().value() * settings_.kz()) + " " +
207  std::to_string(fpgapars_.t().value() * settings_.ktpars());
208  return oss;
209  } else {
211  if (middleFPGAStub_) {
212  str += middleFPGAStub_->stubindex().str() + "|";
213  }
214  str += outerFPGAStub_->stubindex().str() + "|" + fpgapars_.rinv().str() + "|" + fpgapars_.phi0().str() + "|";
215  if (middleFPGAStub_)
216  str += fpgapars_.d0().str() + "|";
217  str += fpgapars_.z0().str() + "|" + fpgapars_.t().str();
218  return str;
219  }
220 }

References fpgapars_, innerFPGAStub_, trklet::Settings::kd0pars(), trklet::Settings::kphi0pars(), trklet::Settings::krinvpars(), trklet::Settings::ktpars(), trklet::Settings::kz(), middleFPGAStub_, outerFPGAStub_, settings_, trklet::FPGAWord::str(), str, AlCaHLTBitMon_QueryRunRegistry::string, trklet::Stub::stubindex(), and trklet::Settings::writeoutReal().

◆ trackletprojstr()

std::string Tracklet::trackletprojstr ( int  layer) const

Definition at line 271 of file Tracklet.cc.

271  {
272  assert(layer > 0 && layer <= N_LAYER);
273  FPGAWord tmp;
274  if (trackletIndex_ < 0 || trackletIndex_ > (int)settings_.ntrackletmax()) {
275  throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " trackletIndex_ = " << trackletIndex_;
276  }
277  tmp.set(trackletIndex_, 7, true, __LINE__, __FILE__);
278  FPGAWord tcid;
279  if (settings_.extended()) {
280  tcid.set(TCIndex_, 8, true, __LINE__, __FILE__);
281  } else {
282  tcid.set(TCIndex_, 7, true, __LINE__, __FILE__);
283  }
284 
285  std::string oss = tcid.str() + "|" + tmp.str() + "|" + layerproj_[layer - 1].fpgaphiproj().str() + "|" +
286  layerproj_[layer - 1].fpgazproj().str() + "|" + layerproj_[layer - 1].fpgaphiprojder().str() + "|" +
287  layerproj_[layer - 1].fpgazprojder().str();
288  return oss;
289 }

References cms::cuda::assert(), Exception, trklet::Settings::extended(), trklet::LayerProjection::fpgaphiproj(), trklet::LayerProjection::fpgaphiprojder(), trklet::LayerProjection::fpgazproj(), trklet::LayerProjection::fpgazprojder(), layer(), layerproj_, trklet::N_LAYER, trklet::Settings::ntrackletmax(), trklet::FPGAWord::set(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, TCIndex_, createJobs::tmp, and trackletIndex_.

Referenced by trackletprojstrlayer().

◆ trackletprojstrD()

std::string Tracklet::trackletprojstrD ( int  disk) const

Definition at line 291 of file Tracklet.cc.

291  {
292  assert(abs(disk) <= N_DISK);
293  FPGAWord tmp;
294  if (trackletIndex_ < 0 || trackletIndex_ > (int)settings_.ntrackletmax()) {
295  throw cms::Exception("BadConfig") << __FILE__ << " " << __LINE__ << " trackletIndex_ = " << trackletIndex_;
296  }
297  tmp.set(trackletIndex_, 7, true, __LINE__, __FILE__);
298  FPGAWord tcid;
299  if (settings_.extended()) {
300  tcid.set(TCIndex_, 8, true, __LINE__, __FILE__);
301  } else {
302  tcid.set(TCIndex_, 7, true, __LINE__, __FILE__);
303  }
304  std::string oss = tcid.str() + "|" + tmp.str() + "|" + diskproj_[abs(disk) - 1].fpgaphiproj().str() + "|" +
305  diskproj_[abs(disk) - 1].fpgarproj().str() + "|" + diskproj_[abs(disk) - 1].fpgaphiprojder().str() +
306  "|" + diskproj_[abs(disk) - 1].fpgarprojder().str();
307  return oss;
308 }

References funct::abs(), cms::cuda::assert(), disk(), diskproj_, Exception, trklet::Settings::extended(), trklet::DiskProjection::fpgaphiproj(), trklet::DiskProjection::fpgaphiprojder(), trklet::DiskProjection::fpgarproj(), trklet::DiskProjection::fpgarprojder(), trklet::N_DISK, trklet::Settings::ntrackletmax(), trklet::FPGAWord::set(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, TCIndex_, createJobs::tmp, and trackletIndex_.

Referenced by trackletprojstrdisk().

◆ trackletprojstrdisk()

std::string trklet::Tracklet::trackletprojstrdisk ( int  disk) const
inline

Definition at line 87 of file Tracklet.h.

87 { return trackletprojstrD(disk); }

References disk(), and trackletprojstrD().

◆ trackletprojstrlayer()

std::string trklet::Tracklet::trackletprojstrlayer ( int  layer) const
inline

Definition at line 86 of file Tracklet.h.

86 { return trackletprojstr(layer); }

References layer(), and trackletprojstr().

◆ validProj()

bool trklet::Tracklet::validProj ( int  layer) const
inline

◆ validProjDisk()

bool trklet::Tracklet::validProjDisk ( int  disk) const
inline

◆ validResid()

bool trklet::Tracklet::validResid ( int  layer) const
inline

Definition at line 365 of file Tracklet.h.

365  {
366  assert(layer > 0 && layer <= N_LAYER);
367  return layerresid_[layer - 1].valid();
368  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::valid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ vmstrdisk()

std::string Tracklet::vmstrdisk ( int  disk,
unsigned int  allstubindex 
)

Definition at line 257 of file Tracklet.cc.

257  {
258  FPGAWord index;
259  if (allstubindex >= (1 << 7)) {
260  edm::LogPrint("Tracklet") << "Warning projection number too large!";
261  index.set((1 << 7) - 1, 7, true, __LINE__, __FILE__);
262  } else {
263  index.set(allstubindex, 7, true, __LINE__, __FILE__);
264  }
265  std::string oss = index.str() + "|" + diskproj_[disk - 1].fpgarbin1projvm().str() + "|" +
266  diskproj_[disk - 1].fpgarbin2projvm().str() + "|" + diskproj_[disk - 1].fpgafinervm().str() + "|" +
267  diskproj_[disk - 1].getBendIndex().str();
268  return oss;
269 }

References disk(), diskproj_, trklet::DiskProjection::fpgafinervm(), trklet::DiskProjection::fpgarbin1projvm(), trklet::DiskProjection::fpgarbin2projvm(), trklet::DiskProjection::getBendIndex(), trklet::FPGAWord::str(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ vmstrlayer()

std::string Tracklet::vmstrlayer ( int  layer,
unsigned int  allstubindex 
)

Definition at line 222 of file Tracklet.cc.

222  {
223  FPGAWord index;
224  if (allstubindex >= (1 << 7)) {
225  edm::LogPrint("Tracklet") << "Warning projection number too large!";
226  index.set((1 << 7) - 1, 7, true, __LINE__, __FILE__);
227  } else {
228  index.set(allstubindex, 7, true, __LINE__, __FILE__);
229  }
230 
231  // This is a shortcut.
232  //int irinvvm=16+(fpgarinv().value()>>(fpgarinv().nbits()-5));
233  // rinv is not directly available in the TrackletProjection.
234  // can be inferred from phi derivative: rinv = - phider * 2
235  int tmp_irinv = layerproj_[layer - 1].fpgaphiprojder().value() * (-2);
236  int nbits_irinv = layerproj_[layer - 1].fpgaphiprojder().nbits() + 1;
237 
238  // irinv in VMProjection:
239  // top 5 bits of rinv and shifted to be positive
240  int irinvvm = 16 + (tmp_irinv >> (nbits_irinv - 5));
241 
242  if (settings_.extended() && (irinvvm > 31)) { //TODO - displaced tracking should protect against this
243  edm::LogPrint("Tracklet") << "Warning irinvvm too large:" << irinvvm;
244  irinvvm = 31;
245  }
246 
247  assert(irinvvm >= 0);
248  assert(irinvvm < 32);
249  FPGAWord tmp;
250  tmp.set(irinvvm, 5, true, __LINE__, __FILE__);
251  std::string oss = index.str() + "|" + layerproj_[layer - 1].fpgazbin1projvm().str() + "|" +
252  layerproj_[layer - 1].fpgazbin2projvm().str() + "|" + layerproj_[layer - 1].fpgafinezvm().str() +
253  "|" + tmp.str() + "|" + std::to_string(PSseed());
254  return oss;
255 }

References cms::cuda::assert(), trklet::Settings::extended(), trklet::LayerProjection::fpgafinezvm(), trklet::LayerProjection::fpgaphiprojder(), trklet::LayerProjection::fpgazbin1projvm(), trklet::LayerProjection::fpgazbin2projvm(), layer(), layerproj_, trklet::FPGAWord::nbits(), PSseed(), settings_, trklet::FPGAWord::str(), AlCaHLTBitMon_QueryRunRegistry::string, createJobs::tmp, and trklet::FPGAWord::value().

◆ z0()

double trklet::Tracklet::z0 ( ) const
inline

Definition at line 413 of file Tracklet.h.

413 { return trackpars_.z0(); }

References trackpars_, and trklet::TrackPars< T >::z0().

Referenced by trklet::FitTrack::trackFitChisq(), trklet::FitTrack::trackFitFake(), and Tracklet().

◆ z0approx()

double trklet::Tracklet::z0approx ( ) const
inline

◆ z0fit()

double trklet::Tracklet::z0fit ( ) const
inline

Definition at line 431 of file Tracklet.h.

431 { return fitpars_.z0(); }

References fitpars_, and trklet::TrackPars< T >::z0().

Referenced by setFitPars().

◆ z0fitexact()

double trklet::Tracklet::z0fitexact ( ) const
inline

Definition at line 438 of file Tracklet.h.

438 { return fitparsexact_.z0(); }

References fitparsexact_, and trklet::TrackPars< T >::z0().

Referenced by setFitPars().

◆ zbin1projvm()

int trklet::Tracklet::zbin1projvm ( int  layer) const
inline

◆ zbin2projvm()

int trklet::Tracklet::zbin2projvm ( int  layer) const
inline

◆ zproj()

double trklet::Tracklet::zproj ( int  layer) const
inline

◆ zprojapprox()

double trklet::Tracklet::zprojapprox ( int  layer) const
inline

◆ zprojder()

double trklet::Tracklet::zprojder ( int  layer) const
inline

◆ zprojderapprox()

double trklet::Tracklet::zprojderapprox ( int  layer) const
inline

◆ zprojvm()

int trklet::Tracklet::zprojvm ( int  layer) const
inline

Definition at line 149 of file Tracklet.h.

149  {
150  assert(layer > 0 && layer <= N_LAYER);
151  return layerproj_[layer - 1].fpgazprojvm().value();
152  }

References cms::cuda::assert(), trklet::LayerProjection::fpgazprojvm(), layer(), layerproj_, trklet::N_LAYER, and trklet::FPGAWord::value().

◆ zresid()

double trklet::Tracklet::zresid ( int  layer) const
inline

Definition at line 385 of file Tracklet.h.

385  {
386  assert(layer > 0 && layer <= N_LAYER);
387  return layerresid_[layer - 1].zresid();
388  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::zresid().

Referenced by trklet::FitTrack::trackFitChisq().

◆ zresidapprox()

double trklet::Tracklet::zresidapprox ( int  layer) const
inline

Definition at line 390 of file Tracklet.h.

390  {
391  assert(layer > 0 && layer <= N_LAYER);
392  return layerresid_[layer - 1].zresidapprox();
393  }

References cms::cuda::assert(), layer(), layerresid_, trklet::N_LAYER, and trklet::LayerResidual::zresidapprox().

Referenced by trklet::FitTrack::trackFitChisq().

◆ zstubdisk()

double trklet::Tracklet::zstubdisk ( int  disk)
inline

Definition at line 241 of file Tracklet.h.

241  {
242  assert(abs(disk) <= N_DISK);
243  return diskresid_[abs(disk) - 1].zstub();
244  }

References funct::abs(), cms::cuda::assert(), disk(), diskresid_, trklet::N_DISK, and trklet::DiskResidual::zstub().

Member Data Documentation

◆ barrel_

bool trklet::Tracklet::barrel_
private

Definition at line 515 of file Tracklet.h.

Referenced by getStubIDs(), isBarrel(), and Tracklet().

◆ chisqrphifit_

double trklet::Tracklet::chisqrphifit_
private

Definition at line 547 of file Tracklet.h.

Referenced by chiSqfit(), makeTrack(), and setFitPars().

◆ chisqrphifitexact_

double trklet::Tracklet::chisqrphifitexact_
private

Definition at line 551 of file Tracklet.h.

Referenced by setFitPars().

◆ chisqrzfit_

double trklet::Tracklet::chisqrzfit_
private

Definition at line 548 of file Tracklet.h.

Referenced by chiSqfit(), makeTrack(), and setFitPars().

◆ chisqrzfitexact_

double trklet::Tracklet::chisqrzfitexact_
private

Definition at line 552 of file Tracklet.h.

Referenced by setFitPars().

◆ disk_

bool trklet::Tracklet::disk_
private

Definition at line 516 of file Tracklet.h.

Referenced by getStubIDs(), isDisk(), and Tracklet().

◆ diskproj_

DiskProjection trklet::Tracklet::diskproj_[N_DISK]
private

◆ diskresid_

DiskResidual trklet::Tracklet::diskresid_[N_DISK]
private

◆ fitpars_

TrackPars<double> trklet::Tracklet::fitpars_
private

Definition at line 546 of file Tracklet.h.

Referenced by d0fit(), phi0fit(), rinvfit(), setFitPars(), tfit(), and z0fit().

◆ fitparsexact_

TrackPars<double> trklet::Tracklet::fitparsexact_
private

Definition at line 550 of file Tracklet.h.

Referenced by d0fitexact(), phi0fitexact(), rinvfitexact(), setFitPars(), tfitexact(), and z0fitexact().

◆ fpgafitpars_

TrackPars<FPGAWord> trklet::Tracklet::fpgafitpars_
private

Definition at line 542 of file Tracklet.h.

Referenced by id0fit(), iphi0fit(), irinvfit(), itfit(), iz0fit(), makeTrack(), setFitPars(), and trackfitstr().

◆ fpgapars_

TrackPars<FPGAWord> trklet::Tracklet::fpgapars_
private

Definition at line 532 of file Tracklet.h.

Referenced by fpgad0(), fpgaphi0(), fpgarinv(), fpgat(), fpgaz0(), Tracklet(), and trackletparstr().

◆ fpgatrack_

std::unique_ptr<Track> trklet::Tracklet::fpgatrack_
private

Definition at line 556 of file Tracklet.h.

Referenced by getTrack(), setFitPars(), and Tracklet().

◆ hitpattern_

int trklet::Tracklet::hitpattern_
private

Definition at line 554 of file Tracklet.h.

Referenced by makeTrack(), and setFitPars().

◆ ichisqrphifit_

FPGAWord trklet::Tracklet::ichisqrphifit_
private

Definition at line 543 of file Tracklet.h.

Referenced by fit(), ichiSqfit(), makeTrack(), setFitPars(), and Tracklet().

◆ ichisqrzfit_

FPGAWord trklet::Tracklet::ichisqrzfit_
private

Definition at line 544 of file Tracklet.h.

Referenced by ichiSqfit(), makeTrack(), setFitPars(), and Tracklet().

◆ innerFPGAStub_

const Stub* trklet::Tracklet::innerFPGAStub_
private

◆ innerStub_

const L1TStub* trklet::Tracklet::innerStub_
private

◆ layerproj_

LayerProjection trklet::Tracklet::layerproj_[N_LAYER]
private

◆ layerresid_

LayerResidual trklet::Tracklet::layerresid_[N_LAYER]
private

◆ middleFPGAStub_

const Stub* trklet::Tracklet::middleFPGAStub_
private

◆ middleStub_

const L1TStub* trklet::Tracklet::middleStub_
private

Definition at line 525 of file Tracklet.h.

Referenced by calcSeedIndex(), disk(), getL1Stubs(), layer(), middleStub(), and Tracklet().

◆ outerFPGAStub_

const Stub* trklet::Tracklet::outerFPGAStub_
private

◆ outerStub_

const L1TStub* trklet::Tracklet::outerStub_
private

◆ overlap_

bool trklet::Tracklet::overlap_
private

Definition at line 517 of file Tracklet.h.

Referenced by getStubIDs(), isOverlap(), and Tracklet().

◆ projdisk_

int trklet::Tracklet::projdisk_[N_DISK]
private

Definition at line 539 of file Tracklet.h.

Referenced by Tracklet().

◆ projlayer_

int trklet::Tracklet::projlayer_[N_LAYER - 2]
private

Definition at line 538 of file Tracklet.h.

Referenced by Tracklet().

◆ seedIndex_

unsigned int trklet::Tracklet::seedIndex_
private

Definition at line 512 of file Tracklet.h.

Referenced by seedIndex(), and Tracklet().

◆ settings_

Settings const& trklet::Tracklet::settings_
private

◆ TCIndex_

int trklet::Tracklet::TCIndex_
private

◆ trackletIndex_

int trklet::Tracklet::trackletIndex_
private

◆ trackpars_

TrackPars<double> trklet::Tracklet::trackpars_
private

Definition at line 534 of file Tracklet.h.

Referenced by d0(), phi0(), rinv(), t(), Tracklet(), and z0().

◆ trackparsapprox_

TrackPars<double> trklet::Tracklet::trackparsapprox_
private

Definition at line 535 of file Tracklet.h.

Referenced by d0approx(), phi0approx(), rinvapprox(), tapprox(), Tracklet(), and z0approx().

◆ triplet_

bool trklet::Tracklet::triplet_
private

Definition at line 518 of file Tracklet.h.

Referenced by Tracklet().

trklet::LayerProjection::fpgafinezvm
const FPGAWord & fpgafinezvm() const
Definition: LayerProjection.h:79
trklet::L1TStub::tps
std::vector< int > tps() const
Definition: L1TStub.h:78
trklet::LayerProjection::fpgaphiprojvm
const FPGAWord & fpgaphiprojvm() const
Definition: LayerProjection.h:64
trklet::LayerResidual::zresidapprox
double zresidapprox() const
Definition: LayerResidual.h:63
trklet::Tracklet::chisqrphifitexact_
double chisqrphifitexact_
Definition: Tracklet.h:551
trklet::DiskProjection::phiprojapprox
double phiprojapprox() const
Definition: DiskProjection.h:111
mps_fire.i
i
Definition: mps_fire.py:428
trklet::Settings::ntrackletmax
unsigned int ntrackletmax() const
Definition: Settings.h:274
trklet::Tracklet::diskproj_
DiskProjection diskproj_[N_DISK]
Definition: Tracklet.h:559
trklet::DiskProjection::setBendIndex
void setBendIndex(int bendindex)
Definition: DiskProjection.h:131
trklet::LayerProjection::rproj
double rproj() const
Definition: LayerProjection.h:39
trklet::Tracklet::PSseed
unsigned int PSseed() const
Definition: Tracklet.h:505
trklet::Tracklet::z0approx
double z0approx() const
Definition: Tracklet.h:419
trklet::Stub::phiregionaddressstr
std::string phiregionaddressstr() const
Definition: Stub.cc:182
trklet::Tracklet::settings_
Settings const & settings_
Definition: Tracklet.h:564
trklet::DiskResidual::rresidapprox
double rresidapprox() const
Definition: DiskResidual.h:65
trklet::LayerProjection::zproj
double zproj() const
Definition: LayerProjection.h:94
trklet::FPGAWord::str
std::string str() const
Definition: FPGAWord.cc:54
trklet::Tracklet::phi0fitexact
double phi0fitexact() const
Definition: Tracklet.h:435
trklet::Tracklet::fitpars_
TrackPars< double > fitpars_
Definition: Tracklet.h:546
trklet::DiskProjection::getBendIndex
const FPGAWord & getBendIndex() const
Definition: DiskProjection.h:133
trklet::Settings::ktpars
double ktpars() const
Definition: Settings.h:332
trklet::L1TStub::layer
unsigned int layer() const
Definition: L1TStub.h:44
trklet::Settings::krinvpars
double krinvpars() const
Definition: Settings.h:327
trklet::Tracklet::chisqrzfitexact_
double chisqrzfitexact_
Definition: Tracklet.h:552
trklet::DiskResidual::phiresidapprox
double phiresidapprox() const
Definition: DiskResidual.h:60
trklet::Tracklet::trackletIndex_
int trackletIndex_
Definition: Tracklet.h:528
trklet::Tracklet::ichisqrphifit_
FPGAWord ichisqrphifit_
Definition: Tracklet.h:543
trklet::Tracklet::phi0
double phi0() const
Definition: Tracklet.h:410
trklet::Tracklet::overlap_
bool overlap_
Definition: Tracklet.h:517
min
T min(T a, T b)
Definition: MathUtil.h:58
trklet::DiskProjection::fpgarprojder
const FPGAWord & fpgarprojder() const
Definition: DiskProjection.h:61
zMuMuMuonUserData.alpha
alpha
zGenParticlesMatch = cms.InputTag(""),
Definition: zMuMuMuonUserData.py:9
trklet::Tracklet::innerStub_
const L1TStub * innerStub_
Definition: Tracklet.h:524
trklet::Tracklet::d0approx
double d0approx() const
Definition: Tracklet.h:417
trklet::LayerResidual::init
void init(Settings const &settings, int layer, int iphiresid, int izresid, int istubid, double phiresid, double zresid, double phiresidapprox, double zresidapprox, double rstub, const Stub *stubptr)
Definition: LayerResidual.cc:7
trklet::Tracklet::diskresid_
DiskResidual diskresid_[N_DISK]
Definition: Tracklet.h:562
trklet::LayerProjection::phiproj
double phiproj() const
Definition: LayerProjection.h:89
trklet::TrackPars::t
const T & t() const
Definition: TrackPars.h:32
trklet::Tracklet::middleFPGAStub_
const Stub * middleFPGAStub_
Definition: Tracklet.h:521
trklet::Tracklet::trackpars_
TrackPars< double > trackpars_
Definition: Tracklet.h:534
trklet::Tracklet::layerproj_
LayerProjection layerproj_[N_LAYER]
Definition: Tracklet.h:558
edm::LogPrint
Log< level::Warning, true > LogPrint
Definition: MessageLogger.h:130
trklet::TrackPars::d0
const T & d0() const
Definition: TrackPars.h:31
trklet::LayerResidual::fpgaphiresid
const FPGAWord & fpgaphiresid() const
Definition: LayerResidual.h:33
trklet::LayerProjection::zprojapprox
double zprojapprox() const
Definition: LayerProjection.h:114
trklet::Tracklet::getISeed
int getISeed() const
Definition: Tracklet.cc:849
trklet::DiskProjection::rprojder
double rprojder() const
Definition: DiskProjection.h:106
trklet::Tracklet::layerresid_
LayerResidual layerresid_[N_LAYER]
Definition: Tracklet.h:561
cms::cuda::assert
assert(be >=bs)
trklet::LayerResidual::zresid
double zresid() const
Definition: LayerResidual.h:53
trklet::DiskProjection::valid
bool valid() const
Definition: DiskProjection.h:34
trklet::FPGAWord::set
void set(int value, int nbits, bool positive=true, int line=-1, const char *file=nullptr)
Definition: FPGAWord.cc:14
trklet::Tracklet::TCIndex_
int TCIndex_
Definition: Tracklet.h:529
trklet::DiskProjection::fpgafinervm
const FPGAWord & fpgafinervm() const
Definition: DiskProjection.h:91
trklet::Settings::nbitst
int nbitst() const
Definition: Settings.h:279
trklet::N_DISK
constexpr int N_DISK
Definition: Settings.h:20
trklet::Tracklet::d0fitexact
double d0fitexact() const
Definition: Tracklet.h:436
trklet::DiskProjection::fpgarbin2projvm
const FPGAWord & fpgarbin2projvm() const
Definition: DiskProjection.h:86
trklet::Tracklet::itfit
const FPGAWord & itfit() const
Definition: Tracklet.h:443
trklet::Tracklet::tfit
double tfit() const
Definition: Tracklet.h:430
trklet::Tracklet::fit
bool fit() const
Definition: Tracklet.h:482
trklet::Tracklet::rinvapprox
double rinvapprox() const
Definition: Tracklet.h:415
trklet::Tracklet::z0fitexact
double z0fitexact() const
Definition: Tracklet.h:438
trklet::FPGAWord::nbits
int nbits() const
Definition: FPGAWord.h:25
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
trklet::Tracklet::irinvfit
const FPGAWord & irinvfit() const
Definition: Tracklet.h:440
trklet::Stub::isBarrel
bool isBarrel() const
Definition: Stub.h:60
trklet::Tracklet::triplet_
bool triplet_
Definition: Tracklet.h:518
trklet::Tracklet::isDisk
int isDisk() const
Definition: Tracklet.h:490
trklet::DiskProjection::fpgaphiproj
const FPGAWord & fpgaphiproj() const
Definition: DiskProjection.h:46
trklet::LayerResidual::phiresid
double phiresid() const
Definition: LayerResidual.h:48
trklet::DiskResidual::valid
bool valid() const
Definition: DiskResidual.h:33
trklet::Tracklet::outerFPGAStub_
const Stub * outerFPGAStub_
Definition: Tracklet.h:522
trklet::DiskProjection::phiprojderapprox
double phiprojderapprox() const
Definition: DiskProjection.h:121
trklet::Tracklet::fpgatrack_
std::unique_ptr< Track > fpgatrack_
Definition: Tracklet.h:556
trklet::Tracklet::middleFPGAStub
const Stub * middleFPGAStub()
Definition: Tracklet.h:69
trklet::LayerResidual::stubptr
const Stub * stubptr() const
Definition: LayerResidual.h:73
trklet::Tracklet::barrel_
bool barrel_
Definition: Tracklet.h:515
trklet::Stub::disk
const FPGAWord & disk() const
Definition: Stub.h:57
trklet::Tracklet::trackletprojstr
std::string trackletprojstr(int layer) const
Definition: Tracklet.cc:271
trklet::LayerProjection::fpgaphiproj
const FPGAWord & fpgaphiproj() const
Definition: LayerProjection.h:44
trklet::Tracklet::middleStub
const L1TStub * middleStub()
Definition: Tracklet.h:68
trklet::Track
Definition: Track.h:18
trklet::Tracklet::isOverlap
bool isOverlap() const
Definition: Tracklet.h:489
trklet::Tracklet::stubptr
const trklet::Stub * stubptr(int layer) const
Definition: Tracklet.h:370
trklet::DiskResidual::fpgastubid
const FPGAWord & fpgastubid() const
Definition: DiskResidual.h:45
trklet::Tracklet::innerStub
const L1TStub * innerStub()
Definition: Tracklet.h:65
trklet::DiskProjection::fpgaphiprojder
const FPGAWord & fpgaphiprojder() const
Definition: DiskProjection.h:56
trklet::Tracklet::trackletprojstrD
std::string trackletprojstrD(int disk) const
Definition: Tracklet.cc:291
trklet::DiskResidual::init
void init(Settings const &settings, int disk, int iphiresid, int irresid, int istubid, double phiresid, double rresid, double phiresidapprox, double rresidapprox, double zstub, double alpha, FPGAWord ialpha, const Stub *stubptr)
Definition: DiskResidual.cc:7
trklet::Tracklet::phi0approx
double phi0approx() const
Definition: Tracklet.h:416
trklet::Tracklet::hitpattern_
int hitpattern_
Definition: Tracklet.h:554
str
#define str(s)
Definition: TestProcessor.cc:51
trklet::N_LAYER
constexpr int N_LAYER
Definition: Settings.h:19
trklet::Tracklet::projdisk_
int projdisk_[N_DISK]
Definition: Tracklet.h:539
trklet::LayerProjection::fpgazproj
const FPGAWord & fpgazproj() const
Definition: LayerProjection.h:49
trklet::LayerProjection::zprojderapprox
double zprojderapprox() const
Definition: LayerProjection.h:124
trklet::Settings::nbitsd0
unsigned int nbitsd0() const
Definition: Settings.h:254
trklet::LayerProjection::zprojder
double zprojder() const
Definition: LayerProjection.h:104
trklet::Stub::isDisk
bool isDisk() const
Definition: Stub.h:61
trklet::Settings::kd0pars
double kd0pars() const
Definition: Settings.h:334
trklet::Tracklet::d0fit
double d0fit() const
Definition: Tracklet.h:429
trklet::Tracklet::calcSeedIndex
unsigned int calcSeedIndex() const
Definition: Tracklet.cc:861
cmsswSequenceInfo.tp
tp
Definition: cmsswSequenceInfo.py:17
trklet::LayerResidual::phiresidapprox
double phiresidapprox() const
Definition: LayerResidual.h:58
trklet::FPGAWord
Definition: FPGAWord.h:9
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
trklet::LayerProjection::fpgaphiprojder
const FPGAWord & fpgaphiprojder() const
Definition: LayerProjection.h:54
trklet::N_SEED
constexpr unsigned int N_SEED
Definition: Settings.h:22
trklet::DiskProjection::rprojapprox
double rprojapprox() const
Definition: DiskProjection.h:116
trklet::LayerResidual::valid
bool valid() const
Definition: LayerResidual.h:31
trklet::Settings::kphi0pars
double kphi0pars() const
Definition: Settings.h:331
trklet::LayerResidual::rstub
double rstub() const
Definition: LayerResidual.h:68
trklet::Stub::alphanew
const FPGAWord & alphanew() const
Definition: Stub.h:53
trklet::Tracklet::phi0fit
double phi0fit() const
Definition: Tracklet.h:428
trklet::Tracklet::iphi0fit
const FPGAWord & iphi0fit() const
Definition: Tracklet.h:441
trklet::Settings::extended
bool extended() const
Definition: Settings.h:207
trklet::Tracklet::outerStub_
const L1TStub * outerStub_
Definition: Tracklet.h:526
trklet::DiskResidual::zstub
double zstub() const
Definition: DiskResidual.h:70
trklet::Tracklet::rinvfitexact
double rinvfitexact() const
Definition: Tracklet.h:434
trklet::DiskProjection::fpgarproj
const FPGAWord & fpgarproj() const
Definition: DiskProjection.h:51
trklet::Tracklet::tapprox
double tapprox() const
Definition: Tracklet.h:418
trklet::Tracklet::getStubIDs
std::map< int, int > getStubIDs()
Definition: Tracklet.cc:436
trklet::Tracklet::innerFPGAStub_
const Stub * innerFPGAStub_
Definition: Tracklet.h:520
trklet::L1TStub::disk
int disk() const
Definition: L1TStub.h:45
trklet::Tracklet::outerStub
const L1TStub * outerStub()
Definition: Tracklet.h:71
trklet::LayerProjection::fpgazprojvm
const FPGAWord & fpgazprojvm() const
Definition: LayerProjection.h:84
trklet::Settings::nbitsrinv
int nbitsrinv() const
Definition: Settings.h:277
trklet::Tracklet::rstub
double rstub(int layer)
Definition: Tracklet.h:199
goodZToMuMu_cfi.overlap
overlap
Definition: goodZToMuMu_cfi.py:108
trklet::DiskResidual::fpgaphiresid
const FPGAWord & fpgaphiresid() const
Definition: DiskResidual.h:35
trklet::TrackPars< int >
trklet::TrackPars::init
void init(T rinv, T phi0, T d0, T t, T z0)
Definition: TrackPars.h:21
trklet::Tracklet::id0fit
const FPGAWord & id0fit() const
Definition: Tracklet.h:442
trklet::FPGAWord::value
int value() const
Definition: FPGAWord.h:24
trklet::Tracklet::isBarrel
bool isBarrel() const
Definition: Tracklet.h:488
trklet::Tracklet::fpgafitpars_
TrackPars< FPGAWord > fpgafitpars_
Definition: Tracklet.h:542
trklet::Tracklet::tfitexact
double tfitexact() const
Definition: Tracklet.h:437
trklet::LayerResidual::fpgastubid
const FPGAWord & fpgastubid() const
Definition: LayerResidual.h:43
trklet::TrackPars::z0
const T & z0() const
Definition: TrackPars.h:33
trklet::TrackPars::rinv
const T & rinv() const
Definition: TrackPars.h:29
trklet::Tracklet::rinvfit
double rinvfit() const
Definition: Tracklet.h:427
cmsLHEtoEOSManager.l
l
Definition: cmsLHEtoEOSManager.py:204
trklet::Tracklet::innerFPGAStub
const Stub * innerFPGAStub()
Definition: Tracklet.h:66
trklet::Settings::nbitsz0
int nbitsz0() const
Definition: Settings.h:280
trklet::Tracklet::z0
double z0() const
Definition: Tracklet.h:413
trklet::DiskResidual::rresid
double rresid() const
Definition: DiskResidual.h:55
trklet::Tracklet::rinv
double rinv() const
Definition: Tracklet.h:409
trklet::DiskResidual::fpgarresid
const FPGAWord & fpgarresid() const
Definition: DiskResidual.h:40
trklet::Stub::phiregionaddress
unsigned int phiregionaddress() const
Definition: Stub.cc:177
trklet::Tracklet::d0
double d0() const
Definition: Tracklet.h:411
trklet::Settings::nbitsphi0
int nbitsphi0() const
Definition: Settings.h:278
trklet::Tracklet::chisqrphifit_
double chisqrphifit_
Definition: Tracklet.h:547
trklet::LayerProjection::phiprojder
double phiprojder() const
Definition: LayerProjection.h:99
trklet::DiskProjection::rproj
double rproj() const
Definition: DiskProjection.h:96
PVValHelper::dz
Definition: PVValidationHelpers.h:50
trklet::DiskProjection::phiproj
double phiproj() const
Definition: DiskProjection.h:76
trklet::Tracklet::makeTrack
Track makeTrack(const std::vector< const L1TStub * > &l1stubs)
Definition: Tracklet.cc:794
relativeConstraints.value
value
Definition: relativeConstraints.py:53
trklet::LayerProjection::fpgazprojder
const FPGAWord & fpgazprojder() const
Definition: LayerProjection.h:59
trklet::DiskProjection::phiprojder
double phiprojder() const
Definition: DiskProjection.h:101
trklet::Tracklet::fpgapars_
TrackPars< FPGAWord > fpgapars_
Definition: Tracklet.h:532
trklet::Tracklet::outerFPGAStub
const Stub * outerFPGAStub()
Definition: Tracklet.h:72
flavorHistoryFilter_cfi.dr
dr
Definition: flavorHistoryFilter_cfi.py:37
Exception
Definition: hltDiff.cc:246
trklet::Settings::kz
double kz() const
Definition: Settings.h:249
trklet::Stub::stubindex
const FPGAWord & stubindex() const
Definition: Stub.h:55
trklet::Tracklet::chisqrzfit_
double chisqrzfit_
Definition: Tracklet.h:548
trklet::LayerProjection::valid
bool valid() const
Definition: LayerProjection.h:32
trklet::LayerProjection::fpgazbin2projvm
const FPGAWord & fpgazbin2projvm() const
Definition: LayerProjection.h:74
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
trklet::DiskProjection::rprojderapprox
double rprojderapprox() const
Definition: DiskProjection.h:126
trklet::Tracklet::disk
int disk() const
Definition: Tracklet.cc:824
EcalCondDBWriter_cfi.location
location
Definition: EcalCondDBWriter_cfi.py:63
trklet::LayerProjection::phiprojapprox
double phiprojapprox() const
Definition: LayerProjection.h:109
ztail.d
d
Definition: ztail.py:151
trklet::Tracklet::z0fit
double z0fit() const
Definition: Tracklet.h:431
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
RunInfoPI::valid
Definition: RunInfoPayloadInspectoHelper.h:16
trklet::LayerProjection::phiprojderapprox
double phiprojderapprox() const
Definition: LayerProjection.h:119
trklet::DiskResidual::ialpha
const FPGAWord & ialpha() const
Definition: DiskResidual.h:80
trklet::LayerResidual::fpgazresid
const FPGAWord & fpgazresid() const
Definition: LayerResidual.h:38
trklet::TrackPars::phi0
const T & phi0() const
Definition: TrackPars.h:30
trklet::Tracklet::ichisqrzfit_
FPGAWord ichisqrzfit_
Definition: Tracklet.h:544
trklet::Stub::layer
const FPGAWord & layer() const
Definition: Stub.h:56
trklet::DiskProjection::fpgarbin1projvm
const FPGAWord & fpgarbin1projvm() const
Definition: DiskProjection.h:81
trklet::Tracklet::t
double t() const
Definition: Tracklet.h:412
trklet::Tracklet::trackparsapprox_
TrackPars< double > trackparsapprox_
Definition: Tracklet.h:535
trklet::Tracklet::seedIndex_
unsigned int seedIndex_
Definition: Tracklet.h:512
trklet::Tracklet::middleStub_
const L1TStub * middleStub_
Definition: Tracklet.h:525
trklet::Tracklet::getL1Stubs
std::vector< const L1TStub * > getL1Stubs()
Definition: Tracklet.cc:413
trklet::Tracklet::disk_
bool disk_
Definition: Tracklet.h:516
trklet::Tracklet::fitparsexact_
TrackPars< double > fitparsexact_
Definition: Tracklet.h:550
trklet::DiskResidual::phiresid
double phiresid() const
Definition: DiskResidual.h:50
trklet::LayerProjection::fpgazbin1projvm
const FPGAWord & fpgazbin1projvm() const
Definition: LayerProjection.h:69
d1
static constexpr float d1
Definition: L1EGammaCrystalsEmulatorProducer.cc:84
trklet::Settings::writeoutReal
bool writeoutReal() const
Definition: Settings.h:164
trklet::Tracklet::layer
int layer() const
Definition: Tracklet.cc:817
trklet::DiskResidual::alpha
double alpha() const
Definition: DiskResidual.h:75
trklet::Tracklet::projlayer_
int projlayer_[N_LAYER - 2]
Definition: Tracklet.h:538
trklet::Tracklet::iz0fit
const FPGAWord & iz0fit() const
Definition: Tracklet.h:444