|
|
Go to the documentation of this file.
13 #ifndef L1_TRACK_TRIGGER_TRACK_FORMAT_H
14 #define L1_TRACK_TRIGGER_TRACK_FORMAT_H
16 #include "CLHEP/Units/GlobalPhysicalConstants.h"
53 static constexpr
unsigned int Npars4 = 4;
54 static constexpr
unsigned int Npars5 = 5;
56 CLHEP::c_light / 1.0E3;
71 unsigned int aHitpattern,
85 unsigned int aHitpattern,
146 double chi2Z()
const;
179 template <
typename T>
195 theTrackSeedType_ = 0;
199 theStubPtConsistency_ = 0.0;
204 template <
typename T>
214 unsigned int aHitPattern,
218 double thePT =
std::abs(MagConstant / aRinv * aBfield / 100.0);
225 theTanL_ = aTanlambda;
228 theTrackSeedType_ = 0;
230 theTrkMVA1_ = trkMVA1;
231 theTrkMVA2_ = trkMVA2;
232 theTrkMVA3_ = trkMVA3;
233 theStubPtConsistency_ = 0.0;
234 theNumFitPars_ =
nPar;
235 theHitPattern_ = aHitPattern;
236 theBField_ = aBfield;
242 template <
typename T>
253 unsigned int aHitPattern,
273 template <
typename T>
276 template <
typename T>
278 theNumFitPars_ =
nPar;
286 template <
typename T>
291 template <
typename T>
296 template <
typename T>
301 template <
typename T>
303 return theMomentum_.eta();
306 template <
typename T>
311 template <
typename T>
316 template <
typename T>
321 template <
typename T>
327 template <
typename T>
333 template <
typename T>
339 template <
typename T>
345 template <
typename T>
347 return theChi2_ / (2 * theStubRefs.size() - theNumFitPars_);
351 template <
typename T>
353 return theChi2_XY_ / (theStubRefs.size() - (theNumFitPars_ - 2));
357 template <
typename T>
359 return theChi2_Z_ / (theStubRefs.size() - 2.);
362 template <
typename T>
367 template <
typename T>
369 theTrkMVA1_ = atrkMVA1;
373 template <
typename T>
378 template <
typename T>
380 theTrkMVA2_ = atrkMVA2;
384 template <
typename T>
389 template <
typename T>
391 theTrkMVA3_ = atrkMVA3;
396 template <
typename T>
398 theStubPtConsistency_ = aStubPtConsistency;
403 template <
typename T>
405 return theStubPtConsistency_;
409 template <
typename T>
411 return theHitPattern_;
415 template <
typename T>
418 double thePT =
std::abs(MagConstant / theRInv_ * aBField / 100.0);
425 template <
typename T>
427 if (!(theNumFitPars_ == Npars4 || theNumFitPars_ == Npars5)) {
432 unsigned int sparebits = 0;
436 if (theChi2_Z_ < 0) {
437 setTrackWord(theMomentum_, thePOCA_, theRInv_, theChi2_, 0, theStubPtConsistency_, theHitPattern_, sparebits);
441 theMomentum_, thePOCA_, theRInv_, theChi2_XY_, theChi2_Z_, theStubPtConsistency_, theHitPattern_, sparebits);
447 template <
typename T>
467 template <
typename T>
470 for (
unsigned int j = 0;
j !=
i; ++
j) {
475 output << padding <<
"TTTrack:\n";
478 unsigned int iStub = 0;
480 typename std::vector<edm::Ref<edmNew::DetSetVector<TTStub<T> >,
TTStub<T> > >::const_iterator stubIter;
481 for (stubIter = theStubRefs.begin(); stubIter != theStubRefs.end(); ++stubIter) {
482 output << padding <<
"stub: " << iStub++ <<
", DetId: " << ((*stubIter)->getDetId()).rawId() <<
'\n';
488 template <
typename T>
490 return (os << aTTTrack.
print());
double chi2XY() const
Chi2XY.
double chi2XYRed() const
Chi2XY reduced.
double chi2Red() const
Chi2 reduced.
unsigned int theEtaSector_
GlobalVector momentum() const
Track momentum.
void setStubPtConsistency(double aPtConsistency)
StubPtConsistency.
double chi2Z() const
Chi2Z.
void addStubRef(edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > aStub)
Class to store the L1 Track Trigger tracks.
double phi() const
Track phi.
void setStubRefs(std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > aStubs)
unsigned int theHitPattern_
static constexpr unsigned int Npars4
void setTrackSeedType(int aSeed)
void settrkMVA3(double atrkMVA3)
Global3DVector GlobalVector
double rInv() const
Track curvature.
void errorSetTrackWordBits(unsigned int)
Sin< T >::type sin(const T &t)
GlobalPoint POCA() const
POCA.
unsigned int hitPattern() const
Hit Pattern.
std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > getStubRefs() const
Track components.
unsigned int theNumFitPars_
Cos< T >::type cos(const T &t)
double chi2ZRed() const
Chi2Z reduced.
void setTrackWordBits()
Set bits in 96-bit Track word.
Class to store the L1 Track Trigger stubs.
Global3DPoint GlobalPoint
static constexpr float MagConstant
void setFitParNo(unsigned int aFitParNo)
double d0() const
Track d0.
double stubPtConsistency() const
Stub Pt consistency.
std::ostream & operator<<(std::ostream &os, const TTTrack< T > &aTTTrack)
unsigned int trackSeedType() const
Track seeding (for debugging)
double tanL() const
Track tanL.
unsigned int thePhiSector_
double z0() const
Track z0.
GlobalVector theMomentum_
void testTrackWordBits()
Test bits in 96-bit Track word.
double trkMVA1() const
MVA Track quality variables.
static constexpr unsigned int Npars5
void setEtaSector(unsigned int aSector)
void settrkMVA2(double atrkMVA2)
std::string print(unsigned int i=0) const
Information.
void settrkMVA1(double atrkMVA1)
std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > theStubRefs
Data members.
unsigned int etaSector() const
Eta Sector.
Abs< T >::type abs(const T &t)
void setPhiSector(unsigned int aSector)
double theStubPtConsistency_
double eta() const
Track eta.
void setBField(double aBField)
set new Bfield
unsigned int phiSector() const
Phi Sector.