Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:21:51

0001 #include "L1Trigger/TrackFindingTMTT/interface/L1fittedTrack.h"
0002 
0003 using namespace std;
0004 
0005 namespace tmtt {
0006 
0007   // Empty vector used to initialize rejected tracks.
0008   const std::vector<Stub*> L1fittedTrack::noStubs_;
0009 
0010   // Digitize track and degrade helix parameter resolution according to effect of digitisation.
0011 
0012   void L1fittedTrack::digitizeTrack(const string& fitterName) {
0013     if (settings_->enableDigitize()) {
0014       if (not digitalTrack_) {
0015         // Create & run digitizer.
0016         digitalTrack_ = std::make_shared<DigitalTrack>(settings_, fitterName, this);
0017 
0018         // Convert digitized track params back to floating point with degraded resolution.
0019         qOverPt_ = digitalTrack_->qOverPt();
0020         if (nHelixParam_ == 5)
0021           d0_ = digitalTrack_->d0();
0022         phi0_ = digitalTrack_->phi0();
0023         z0_ = digitalTrack_->z0();
0024         tanLambda_ = digitalTrack_->tanLambda();
0025         chi2rphi_ = digitalTrack_->chisquaredRphi();
0026         chi2rz_ = digitalTrack_->chisquaredRz();
0027 
0028         // Ditto for beam-spot constrained values.
0029         if (nHelixParam_ == 5) {
0030           qOverPt_bcon_ = digitalTrack_->qOverPt_bcon();
0031           phi0_bcon_ = digitalTrack_->phi0_bcon();
0032           chi2rphi_bcon_ = digitalTrack_->chisquaredRphi_bcon();
0033         }
0034 
0035         // Recalculate consistency flag using updated helix params.
0036         this->setConsistentHTcell();
0037       }
0038     }
0039   }
0040 
0041 }  // namespace tmtt