|
|
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,
149 double chi2Z()
const;
187 template <
typename T>
203 theTrackSeedType_ = 0;
207 theStubPtConsistency_ = 0.0;
212 template <
typename T>
222 unsigned int aHitPattern,
226 double thePT =
std::abs(MagConstant / aRinv * aBfield / 100.0);
233 theTanL_ = aTanlambda;
236 theTrackSeedType_ = 0;
238 theTrkMVA1_ = trkMVA1;
239 theTrkMVA2_ = trkMVA2;
240 theTrkMVA3_ = trkMVA3;
241 theStubPtConsistency_ = 0.0;
242 theNumFitPars_ =
nPar;
243 theHitPattern_ = aHitPattern;
244 theBField_ = aBfield;
250 template <
typename T>
261 unsigned int aHitPattern,
281 template <
typename T>
284 template <
typename T>
286 theNumFitPars_ =
nPar;
294 template <
typename T>
299 template <
typename T>
304 template <
typename T>
309 template <
typename T>
311 return theMomentum_.eta();
314 template <
typename T>
319 template <
typename T>
324 template <
typename T>
329 template <
typename T>
334 template <
typename T>
340 template <
typename T>
346 template <
typename T>
352 template <
typename T>
358 template <
typename T>
360 return theChi2_ / (2 * theStubRefs.size() - theNumFitPars_);
364 template <
typename T>
366 return theChi2_XY_ / (theStubRefs.size() - (theNumFitPars_ - 2));
370 template <
typename T>
372 return theChi2_Z_ / (theStubRefs.size() - 2.);
375 template <
typename T>
380 template <
typename T>
382 theTrkMVA1_ = atrkMVA1;
386 template <
typename T>
391 template <
typename T>
393 theTrkMVA2_ = atrkMVA2;
397 template <
typename T>
402 template <
typename T>
404 theTrkMVA3_ = atrkMVA3;
409 template <
typename T>
411 theStubPtConsistency_ = aStubPtConsistency;
416 template <
typename T>
418 return theStubPtConsistency_;
422 template <
typename T>
424 return theHitPattern_;
428 template <
typename T>
431 double thePT =
std::abs(MagConstant / theRInv_ * aBField / 100.0);
438 template <
typename T>
440 if (!(theNumFitPars_ == Npars4 || theNumFitPars_ == Npars5)) {
445 unsigned int valid =
true;
446 unsigned int mvaQuality = 0;
447 unsigned int mvaOther = 0;
451 if (theChi2_Z_ < 0) {
458 theStubPtConsistency_,
480 template <
typename T>
500 template <
typename T>
503 for (
unsigned int j = 0;
j !=
i; ++
j) {
508 output << padding <<
"TTTrack:\n";
511 unsigned int iStub = 0;
513 typename std::vector<edm::Ref<edmNew::DetSetVector<TTStub<T> >,
TTStub<T> > >::const_iterator stubIter;
514 for (stubIter = theStubRefs.begin(); stubIter != theStubRefs.end(); ++stubIter) {
515 output << padding <<
"stub: " << iStub++ <<
", DetId: " << ((*stubIter)->getDetId()).rawId() <<
'\n';
521 template <
typename T>
523 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)
float localPhi(float globalPhi, unsigned int sector) const
double chi2ZRed() const
Chi2Z reduced.
void setTrackWordBits()
Set bits in 96-bit Track word.
Class to store the L1 Track Trigger stubs.
void setChi2BendRed(double aChi2BendRed)
Global3DPoint GlobalPoint
static constexpr float MagConstant
void setFitParNo(unsigned int aFitParNo)
double d0() const
Track d0.
double stubPtConsistency() const
StubPtConsistency.
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.
double localPhi() const
Local track phi (within the sector)
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.