CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
L1fittedTrack.cc
Go to the documentation of this file.
2 
3 using namespace std;
4 
5 namespace tmtt {
6 
7  // Empty vector used to initialize rejected tracks.
8  const std::vector<Stub*> L1fittedTrack::noStubs_;
9 
10  // Digitize track and degrade helix parameter resolution according to effect of digitisation.
11 
12  void L1fittedTrack::digitizeTrack(const string& fitterName) {
13  if (settings_->enableDigitize()) {
14  if (not digitalTrack_) {
15  // Create & run digitizer.
16  digitalTrack_ = std::make_shared<DigitalTrack>(settings_, fitterName, this);
17 
18  // Convert digitized track params back to floating point with degraded resolution.
19  qOverPt_ = digitalTrack_->qOverPt();
20  if (nHelixParam_ == 5)
21  d0_ = digitalTrack_->d0();
22  phi0_ = digitalTrack_->phi0();
23  z0_ = digitalTrack_->z0();
24  tanLambda_ = digitalTrack_->tanLambda();
25  chi2rphi_ = digitalTrack_->chisquaredRphi();
26  chi2rz_ = digitalTrack_->chisquaredRz();
27 
28  // Ditto for beam-spot constrained values.
29  if (nHelixParam_ == 5) {
30  qOverPt_bcon_ = digitalTrack_->qOverPt_bcon();
31  phi0_bcon_ = digitalTrack_->phi0_bcon();
32  chi2rphi_bcon_ = digitalTrack_->chisquaredRphi_bcon();
33  }
34 
35  // Recalculate consistency flag using updated helix params.
36  this->setConsistentHTcell();
37  }
38  }
39  }
40 
41 } // namespace tmtt