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 14 of file Tracklet.cc.

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

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_, validateGeometry_cfg::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 308 of file Tracklet.cc.

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

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 323 of file Tracklet.cc.

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

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 188 of file Tracklet.cc.

188  {
191  if (middleFPGAStub_) {
193  }
195 
196  return str;
197 }

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 859 of file Tracklet.cc.

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

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 835 of file Tracklet.cc.

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

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 392 of file Tracklet.cc.

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

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 373 of file Tracklet.cc.

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

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 853 of file Tracklet.cc.

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

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

◆ getL1Stubs()

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

Definition at line 411 of file Tracklet.cc.

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

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

Referenced by makeTrack().

◆ getStubIDs()

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

Definition at line 434 of file Tracklet.cc.

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

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(), validateGeometry_cfg::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 792 of file Tracklet.cc.

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

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 350 of file Tracklet.cc.

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

References layerresid_.

◆ nMatchesDisk()

int Tracklet::nMatchesDisk ( )

Definition at line 362 of file Tracklet.cc.

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

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 588 of file Tracklet.cc.

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

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 149 of file Tracklet.cc.

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

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 118 of file Tracklet.cc.

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

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

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

◆ trackfitstr()

std::string Tracklet::trackfitstr ( )

Definition at line 645 of file Tracklet.cc.

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

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, validateGeometry_cfg::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 199 of file Tracklet.cc.

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

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 269 of file Tracklet.cc.

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

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 289 of file Tracklet.cc.

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

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 255 of file Tracklet.cc.

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

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 220 of file Tracklet.cc.

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

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:355
trklet::Settings::ntrackletmax
unsigned int ntrackletmax() const
Definition: Settings.h:272
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:330
trklet::L1TStub::layer
unsigned int layer() const
Definition: L1TStub.h:44
trklet::Settings::krinvpars
double krinvpars() const
Definition: Settings.h:325
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
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:847
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:277
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
validateGeometry_cfg.valid
valid
Definition: validateGeometry_cfg.py:21
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:269
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:289
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:48
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:252
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:332
trklet::Tracklet::d0fit
double d0fit() const
Definition: Tracklet.h:429
trklet::Tracklet::calcSeedIndex
unsigned int calcSeedIndex() const
Definition: Tracklet.cc:859
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:329
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:205
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:434
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
edm::LogPrint
Definition: MessageLogger.h:342
trklet::Settings::nbitsrinv
int nbitsrinv() const
Definition: Settings.h:275
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:193
trklet::Tracklet::innerFPGAStub
const Stub * innerFPGAStub()
Definition: Tracklet.h:66
trklet::Settings::nbitsz0
int nbitsz0() const
Definition: Settings.h:278
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:276
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:792
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:247
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:822
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
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:411
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:162
trklet::Tracklet::layer
int layer() const
Definition: Tracklet.cc:815
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