Class to store the L1 Track Trigger tracks. More...
#include <TTTrack.h>
Public Member Functions | |
void | addStubRef (edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > aStub) |
double | chi2 () const |
Chi2. More... | |
double | chi2Bend () |
double | chi2BendRed () |
double | chi2Red () const |
Chi2 reduced. More... | |
double | chi2XY () const |
Chi2XY. More... | |
double | chi2XYRed () const |
Chi2XY reduced. More... | |
double | chi2Z () const |
Chi2Z. More... | |
double | chi2ZRed () const |
Chi2Z reduced. More... | |
double | d0 () const |
Track d0. More... | |
double | eta () const |
Track eta. More... | |
unsigned int | etaSector () const |
Eta Sector. More... | |
std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > | getStubRefs () const |
Track components. More... | |
unsigned int | hitPattern () const |
Hit Pattern. More... | |
double | localPhi () const |
Local track phi (within the sector) More... | |
GlobalVector | momentum () const |
Track momentum. More... | |
int | nFitPars () const |
double | phi () const |
Track phi. More... | |
unsigned int | phiSector () const |
Phi Sector. More... | |
GlobalPoint | POCA () const |
POCA. More... | |
std::string | print (unsigned int i=0) const |
Information. More... | |
double | rInv () const |
Track curvature. More... | |
void | setBField (double aBField) |
set new Bfield More... | |
void | setChi2BendRed (double aChi2BendRed) |
void | setEtaSector (unsigned int aSector) |
void | setFitParNo (unsigned int aFitParNo) |
void | setPhiSector (unsigned int aSector) |
void | setStubPtConsistency (double aPtConsistency) |
StubPtConsistency. More... | |
void | setStubRefs (std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > aStubs) |
void | setTrackSeedType (int aSeed) |
void | setTrackWordBits () |
Set bits in 96-bit Track word. More... | |
void | settrkMVA1 (double atrkMVA1) |
void | settrkMVA2 (double atrkMVA2) |
void | settrkMVA3 (double atrkMVA3) |
double | stubPtConsistency () const |
StubPtConsistency. More... | |
double | tanL () const |
Track tanL. More... | |
void | testTrackWordBits () |
Test bits in 96-bit Track word. More... | |
unsigned int | trackSeedType () const |
Track seeding (for debugging) More... | |
double | trkMVA1 () const |
MVA Track quality variables. More... | |
double | trkMVA2 () const |
double | trkMVA3 () const |
TTTrack () | |
Constructors. More... | |
TTTrack (double aRinv, double aphi, double aTanLambda, double az0, double ad0, double aChi2, double trkMVA1, double trkMVA2, double trkMVA3, unsigned int aHitpattern, unsigned int nPar, double Bfield) | |
Meant to be default constructor. More... | |
TTTrack (double aRinv, double aphi, double aTanLambda, double az0, double ad0, double aChi2xyfit, double aChi2zfit, double trkMVA1, double trkMVA2, double trkMVA3, unsigned int aHitpattern, unsigned int nPar, double Bfield) | |
Second default constructor with split chi2. More... | |
double | z0 () const |
Track z0. More... | |
~TTTrack () | |
Destructor. More... | |
Public Member Functions inherited from TTTrack_TrackWord | |
unsigned int | countSetBits (unsigned int n) const |
unsigned int | digitizeSignedValue (double value, unsigned int nBits, double lsb) const |
double | getBendChi2 () const |
unsigned int | getBendChi2Bits () const |
bendChi2_t | getBendChi2Word () const |
template<typename T > | |
constexpr unsigned int | getBin (double value, const T &bins) const |
double | getChi2RPhi () const |
unsigned int | getChi2RPhiBits () const |
chi2rphi_t | getChi2RPhiWord () const |
double | getChi2RZ () const |
unsigned int | getChi2RZBits () const |
chi2rz_t | getChi2RZWord () const |
double | getD0 () const |
unsigned int | getD0Bits () const |
d0_t | getD0Word () const |
unsigned int | getHitPattern () const |
unsigned int | getHitPatternBits () const |
hit_t | getHitPatternWord () const |
unsigned int | getMVAOther () const |
unsigned int | getMVAOtherBits () const |
otherMVA_t | getMVAOtherWord () const |
unsigned int | getMVAQuality () const |
unsigned int | getMVAQualityBits () const |
qualityMVA_t | getMVAQualityWord () const |
unsigned int | getNStubs () const |
double | getPhi () const |
unsigned int | getPhiBits () const |
phi_t | getPhiWord () const |
double | getRinv () const |
unsigned int | getRinvBits () const |
rinv_t | getRinvWord () const |
double | getTanl () const |
unsigned int | getTanlBits () const |
tanl_t | getTanlWord () const |
tkword_t | getTrackWord () const |
bool | getValid () const |
unsigned int | getValidBits () const |
valid_t | getValidWord () const |
double | getZ0 () const |
unsigned int | getZ0Bits () const |
z0_t | getZ0Word () const |
TTTrack_TrackWord & | operator= (const TTTrack_TrackWord &word) |
void | setTrackWord (unsigned int valid, const GlobalVector &momentum, const GlobalPoint &POCA, double rInv, double chi2RPhi, double chi2RZ, double bendChi2, unsigned int hitPattern, unsigned int mvaQuality, unsigned int mvaOther, unsigned int sector) |
void | setTrackWord (unsigned int valid, unsigned int rInv, unsigned int phi0, unsigned int tanl, unsigned int z0, unsigned int d0, unsigned int chi2RPhi, unsigned int chi2RZ, unsigned int bendChi2, unsigned int hitPattern, unsigned int mvaQuality, unsigned int mvaOther) |
void | setTrackWord (ap_uint< TrackBitWidths::kValidSize > valid, ap_uint< TrackBitWidths::kRinvSize > rInv, ap_uint< TrackBitWidths::kPhiSize > phi0, ap_uint< TrackBitWidths::kTanlSize > tanl, ap_uint< TrackBitWidths::kZ0Size > z0, ap_uint< TrackBitWidths::kD0Size > d0, ap_uint< TrackBitWidths::kChi2RPhiSize > chi2RPhi, ap_uint< TrackBitWidths::kChi2RZSize > chi2RZ, ap_uint< TrackBitWidths::kBendChi2Size > bendChi2, ap_uint< TrackBitWidths::kHitPatternSize > hitPattern, ap_uint< TrackBitWidths::kMVAQualitySize > mvaQuality, ap_uint< TrackBitWidths::kMVAOtherSize > mvaOther) |
bool | singleDigitizationSchemeTest (const double floatingPointValue, const unsigned int nBits, const double lsb) const |
void | testDigitizationScheme () const |
TTTrack_TrackWord () | |
TTTrack_TrackWord (unsigned int valid, const GlobalVector &momentum, const GlobalPoint &POCA, double rInv, double chi2RPhi, double chi2RZ, double bendChi2, unsigned int hitPattern, unsigned int mvaQuality, unsigned int mvaOther, unsigned int sector) | |
TTTrack_TrackWord (unsigned int valid, unsigned int rInv, unsigned int phi0, unsigned int tanl, unsigned int z0, unsigned int d0, unsigned int chi2RPhi, unsigned int chi2RZ, unsigned int bendChi2, unsigned int hitPattern, unsigned int mvaQuality, unsigned int mvaOther) | |
TTTrack_TrackWord (const TTTrack_TrackWord &word) | |
double | undigitizeSignedValue (unsigned int twosValue, unsigned int nBits, double lsb, double offset=0.5) const |
Private Attributes | |
double | theBField_ |
double | theChi2_ |
double | theChi2_XY_ |
double | theChi2_Z_ |
double | theD0_ |
unsigned int | theEtaSector_ |
unsigned int | theHitPattern_ |
GlobalVector | theMomentum_ |
unsigned int | theNumFitPars_ |
double | thePhi_ |
unsigned int | thePhiSector_ |
GlobalPoint | thePOCA_ |
double | theRInv_ |
double | theStubPtConsistency_ |
std::vector< edm::Ref< edmNew::DetSetVector< TTStub< T > >, TTStub< T > > > | theStubRefs |
Data members. More... | |
double | theTanL_ |
int | theTrackSeedType_ |
double | theTrkMVA1_ |
double | theTrkMVA2_ |
double | theTrkMVA3_ |
double | theZ0_ |
Static Private Attributes | |
static constexpr float | MagConstant |
static constexpr unsigned int | Npars4 = 4 |
static constexpr unsigned int | Npars5 = 5 |
Additional Inherited Members | |
Public Types inherited from TTTrack_TrackWord | |
typedef ap_uint< TrackBitWidths::kBendChi2Size > | bendChi2_t |
typedef ap_uint< TrackBitWidths::kChi2RPhiSize > | chi2rphi_t |
typedef ap_uint< TrackBitWidths::kChi2RZSize > | chi2rz_t |
typedef ap_uint< TrackBitWidths::kD0Size > | d0_t |
typedef ap_uint< TrackBitWidths::kHitPatternSize > | hit_t |
typedef ap_uint< TrackBitWidths::kMVAOtherSize > | otherMVA_t |
typedef ap_uint< TrackBitWidths::kPhiSize > | phi_t |
typedef ap_uint< TrackBitWidths::kMVAQualitySize > | qualityMVA_t |
typedef ap_uint< TrackBitWidths::kRinvSize > | rinv_t |
typedef ap_uint< TrackBitWidths::kTanlSize > | tanl_t |
typedef std::bitset< TrackBitWidths::kTrackWordSize > | tkword_bs_t |
typedef ap_uint< TrackBitWidths::kTrackWordSize > | tkword_t |
enum | TrackBitLocations { kMVAOtherLSB = 0, kMVAOtherMSB = kMVAOtherLSB + TrackBitWidths::kMVAOtherSize - 1, kMVAQualityLSB = kMVAOtherMSB + 1, kMVAQualityMSB = kMVAQualityLSB + TrackBitWidths::kMVAQualitySize - 1, kHitPatternLSB = kMVAQualityMSB + 1, kHitPatternMSB = kHitPatternLSB + TrackBitWidths::kHitPatternSize - 1, kBendChi2LSB = kHitPatternMSB + 1, kBendChi2MSB = kBendChi2LSB + TrackBitWidths::kBendChi2Size - 1, kD0LSB = kBendChi2MSB + 1, kD0MSB = kD0LSB + TrackBitWidths::kD0Size - 1, kChi2RZLSB = kD0MSB + 1, kChi2RZMSB = kChi2RZLSB + TrackBitWidths::kChi2RZSize - 1, kZ0LSB = kChi2RZMSB + 1, kZ0MSB = kZ0LSB + TrackBitWidths::kZ0Size - 1, kTanlLSB = kZ0MSB + 1, kTanlMSB = kTanlLSB + TrackBitWidths::kTanlSize - 1, kChi2RPhiLSB = kTanlMSB + 1, kChi2RPhiMSB = kChi2RPhiLSB + TrackBitWidths::kChi2RPhiSize - 1, kPhiLSB = kChi2RPhiMSB + 1, kPhiMSB = kPhiLSB + TrackBitWidths::kPhiSize - 1, kRinvLSB = kPhiMSB + 1, kRinvMSB = kRinvLSB + TrackBitWidths::kRinvSize - 1, kValidLSB = kRinvMSB + 1, kValidMSB = kValidLSB + TrackBitWidths::kValidSize - 1 } |
enum | TrackBitWidths { kMVAOtherSize = 6, kMVAQualitySize = 3, kHitPatternSize = 7, kBendChi2Size = 3, kD0Size = 13, kChi2RZSize = 4, kZ0Size = 12, kTanlSize = 16, kChi2RPhiSize = 4, kPhiSize = 12, kRinvSize = 15, kValidSize = 1, kTrackWordSize } |
typedef ap_uint< TrackBitWidths::kValidSize > | valid_t |
typedef ap_uint< TrackBitWidths::kZ0Size > | z0_t |
Public Attributes inherited from TTTrack_TrackWord | |
tkword_bs_t | trackWord_ |
Static Public Attributes inherited from TTTrack_TrackWord | |
static constexpr std::array< double, 1<< TrackBitWidths::kBendChi2Size > | bendChi2Bins |
static constexpr std::array< double, 1<< TrackBitWidths::kChi2RPhiSize > | chi2RPhiBins |
static constexpr std::array< double, 1<< TrackBitWidths::kChi2RZSize > | chi2RZBins |
static constexpr double | minD0 = -16. |
static constexpr double | minPhi0 = -0.7853981696 |
static constexpr double | minRinv = -0.006 |
static constexpr double | minTanl = -8. |
static constexpr double | minZ0 = -20.46912512 |
static constexpr unsigned int | nSectors = 9 |
static constexpr double | sectorWidth = (2. * M_PI) / nSectors |
static constexpr double | stepD0 = (1. / (1 << 8)) |
static constexpr double | stepPhi0 = (2. * std::abs(minPhi0)) / (1 << TrackBitWidths::kPhiSize) |
static constexpr double | stepRinv = (2. * std::abs(minRinv)) / (1 << TrackBitWidths::kRinvSize) |
static constexpr double | stepTanL = (1. / (1 << 12)) |
static constexpr double | stepZ0 = (2. * std::abs(minZ0)) / (1 << TrackBitWidths::kZ0Size) |
Protected Member Functions inherited from TTTrack_TrackWord | |
float | localPhi (float globalPhi, unsigned int sector) const |
Class to store the L1 Track Trigger tracks.
After moving from SimDataFormats to DataFormats, the template structure of the class was maintained in order to accomodate any types other than PixelDigis in case there is such a need in the future.
Constructors.
Close class.
Implementation of methods
Here, in the header file, the methods which do not depend on the specific type <T> that can fit the template. Other methods, with type-specific features, are implemented in the source file.Default Constructor
Definition at line 189 of file TTTrack.h.
TTTrack< T >::TTTrack | ( | double | aRinv, |
double | aphi, | ||
double | aTanLambda, | ||
double | az0, | ||
double | ad0, | ||
double | aChi2, | ||
double | trkMVA1, | ||
double | trkMVA2, | ||
double | trkMVA3, | ||
unsigned int | aHitpattern, | ||
unsigned int | nPar, | ||
double | Bfield | ||
) |
Meant to be default constructor.
Definition at line 213 of file TTTrack.h.
References funct::abs(), funct::cos(), HcalResponse_cfi::nPar, and funct::sin().
TTTrack< T >::TTTrack | ( | double | aRinv, |
double | aphi, | ||
double | aTanLambda, | ||
double | az0, | ||
double | ad0, | ||
double | aChi2xyfit, | ||
double | aChi2zfit, | ||
double | trkMVA1, | ||
double | trkMVA2, | ||
double | trkMVA3, | ||
unsigned int | aHitpattern, | ||
unsigned int | nPar, | ||
double | Bfield | ||
) |
Second default constructor with split chi2.
Definition at line 251 of file TTTrack.h.
References TTTrack< T >::theChi2_XY_, and TTTrack< T >::theChi2_Z_.
|
inline |
Definition at line 94 of file TTTrack.h.
References TTTrack< T >::theStubRefs.
Definition at line 161 of file TTTrack.h.
References TTTrack< T >::chi2BendRed(), and TTTrack< T >::theStubRefs.
Definition at line 159 of file TTTrack.h.
References TTTrack< T >::stubPtConsistency().
Referenced by TTTrack< T >::chi2Bend().
Chi2 reduced.
Definition at line 359 of file TTTrack.h.
Referenced by L1TrackJetProducer::produce(), and L1TrackJetEmulatorProducer::produce().
Chi2XY.
Chi2XY reduced.
Definition at line 365 of file TTTrack.h.
Chi2Z.
Chi2Z reduced.
Definition at line 371 of file TTTrack.h.
Track eta.
Definition at line 310 of file TTTrack.h.
Referenced by Particle.Particle::__str__(), datamodel.Object::DeltaR(), L1TrackQuality::featureTransform(), Jet.Jet::jetID(), datamodel.Object::p4(), and Jet.Jet::puJetId().
|
inline |
Track components.
Definition at line 93 of file TTTrack.h.
References TTTrack< T >::theStubRefs.
Referenced by L1TrackQuality::featureTransform(), StubPtConsistency::getConsistency(), L1TrackJetProducer::produce(), L1TrackJetEmulatorProducer::produce(), and L1TrackQuality::setL1TrackQuality().
Hit Pattern.
Definition at line 423 of file TTTrack.h.
Referenced by L1TrackQuality::featureTransform().
Local track phi (within the sector)
Definition at line 320 of file TTTrack.h.
References TTTrack_TrackWord::localPhi().
GlobalVector TTTrack< T >::momentum | ( | ) | const |
Track momentum.
Definition at line 295 of file TTTrack.h.
Referenced by l1t::TkPhiCandidate::dRTrkPair(), SeedMvaEstimatorPhase2::getTsosOnPixels(), trajectoryStateTransform::initialFreeStateL1TTrack(), L1TrackJetProducer::produce(), L1TrackJetEmulatorProducer::produce(), L1TrackFastJetProducer::produce(), L1FastTrackingJetProducer::produce(), L1TruthTrackFastJetProducer::produce(), and L1TrackQuality::setL1TrackQuality().
Track phi.
Definition at line 315 of file TTTrack.h.
Referenced by Particle.Particle::__str__(), datamodel.Object::DeltaR(), L1TrackQuality::featureTransform(), datamodel.Object::p4(), and ntupleDataFormat.Track::phiPull().
GlobalPoint TTTrack< T >::POCA | ( | ) | const |
POCA.
Definition at line 335 of file TTTrack.h.
Referenced by l1t::TkPhiCandidate::dxyTrkPair(), SeedMvaEstimatorPhase2::getTsosOnPixels(), and trajectoryStateTransform::initialFreeStateL1TTrack().
Information.
Definition at line 501 of file TTTrack.h.
References mps_fire::i, dqmiolumiharvest::j, convertSQLitetoXML_cfg::output, nano_mu_digi_cff::rawId, and AlCaHLTBitMon_QueryRunRegistry::string.
Track curvature.
Definition at line 300 of file TTTrack.h.
Referenced by StubPtConsistency::getConsistency(), SeedMvaEstimatorPhase2::getTsosOnPixels(), and trajectoryStateTransform::initialFreeStateL1TTrack().
set new Bfield
set B field if need be
Definition at line 429 of file TTTrack.h.
References funct::abs().
Definition at line 160 of file TTTrack.h.
References TTTrack< T >::setStubPtConsistency().
|
inline |
Definition at line 95 of file TTTrack.h.
References TTTrack< T >::theStubRefs.
Definition at line 144 of file TTTrack.h.
References TTTrack< T >::theTrackSeedType_.
Referenced by trackerTFP::TrackKF::ttTrack().
Set bits in 96-bit Track word.
Definition at line 439 of file TTTrack.h.
References tttrack::errorSetTrackWordBits(), and validateGeometry_cfg::valid.
Referenced by l1tpf::PFTrackProducerFromL1Tracks::produce().
Stub Pt consistency (i.e. stub bend chi2/dof) Note: The "stubPtConsistency" names are historic and people are encouraged to adopt the "chi2Bend" names.
Definition at line 417 of file TTTrack.h.
Referenced by TTTrack< T >::chi2BendRed(), L1TrackJetProducer::produce(), L1TrackJetEmulatorProducer::produce(), and L1TrackQuality::setL1TrackQuality().
Track tanL.
Definition at line 305 of file TTTrack.h.
Referenced by L1TrackQuality::featureTransform().
Track seeding (for debugging)
Definition at line 143 of file TTTrack.h.
References TTTrack< T >::theTrackSeedType_.
MVA Track quality variables.
Track z0.
Definition at line 330 of file TTTrack.h.
Referenced by L1TrackQuality::featureTransform(), L1TrackJetProducer::produce(), L1TrackJetEmulatorProducer::produce(), L1TrackFastJetProducer::produce(), L1FastTrackingJetProducer::produce(), L1TruthTrackFastJetProducer::produce(), and L1TrackQuality::setL1TrackQuality().
Definition at line 44 of file TTTrack.h.
Referenced by TTTrack< T >::TTTrack().
Definition at line 45 of file TTTrack.h.
Referenced by TTTrack< T >::TTTrack().
Definition at line 41 of file TTTrack.h.
Referenced by TTTrack< T >::etaSector(), and TTTrack< T >::setEtaSector().
|
private |
Definition at line 46 of file TTTrack.h.
Referenced by TTTrack< T >::nFitPars().
Definition at line 40 of file TTTrack.h.
Referenced by TTTrack< T >::phiSector(), and TTTrack< T >::setPhiSector().
|
private |
|
private |
Data members.
Definition at line 32 of file TTTrack.h.
Referenced by TTTrack< T >::addStubRef(), TTTrack< T >::chi2Bend(), TTTrack< T >::getStubRefs(), and TTTrack< T >::setStubRefs().
Definition at line 51 of file TTTrack.h.
Referenced by TTTrack< T >::setTrackSeedType(), and TTTrack< T >::trackSeedType().