CMS 3D CMS Logo

Classes | Namespaces | Typedefs | Functions | Variables
L1TkEtMissEmuAlgo.h File Reference
#include <ap_int.h>
#include <cmath>
#include <cstdint>
#include <filesystem>
#include <fstream>
#include <iostream>
#include <numeric>
#include "DataFormats/L1TrackTrigger/interface/TTTrack_TrackWord.h"
#include "DataFormats/L1TrackTrigger/interface/TTTypes.h"
#include "FWCore/MessageLogger/interface/MessageLogger.h"

Go to the source code of this file.

Classes

struct  l1tmetemu::EtMiss
 

Namespaces

 l1tmetemu
 

Typedefs

typedef ap_int< kInternalPtWidth+kEtExtra > l1tmetemu::Et_t
 
typedef ap_uint< kInternalEtaWidth > l1tmetemu::eta_t
 
typedef ap_uint< kInternalPhiWidth+kGlobalPhiExtra > l1tmetemu::global_phi_t
 
typedef ap_uint< kMETSize > l1tmetemu::MET_t
 
typedef ap_uint< kMETPhiSize > l1tmetemu::METphi_t
 
typedef ap_uint< 3 > l1tmetemu::nstub_t
 
typedef ap_uint< kInternalPtWidth > l1tmetemu::pt_t
 
typedef ap_uint< kInternalVTXWidth > l1tmetemu::z_t
 

Functions

template<typename T >
T l1tmetemu::digitizeSignedValue (double value, unsigned int nBits, double lsb)
 
std::vector< global_phi_t > l1tmetemu::generateCosLUT (unsigned int size)
 
std::vector< z_t > l1tmetemu::generateDeltaZLUT (std::vector< double > DeltaZBins)
 
std::vector< eta_t > l1tmetemu::generateEtaRegionLUT (std::vector< double > EtaRegions)
 
template<typename T >
unsigned int l1tmetemu::getBin (double value, const T &bins)
 
unsigned int l1tmetemu::transformSignedValue (unsigned int bits, unsigned int oldnBits, unsigned int newnBits)
 
int l1tmetemu::unpackSignedValue (unsigned int bits, unsigned int nBits)
 

Variables

const unsigned int l1tmetemu::kEtExtra {10}
 
const unsigned int l1tmetemu::kGlobalPhiBins = 1 << kInternalPhiWidth
 
const unsigned int l1tmetemu::kGlobalPhiExtra {3}
 
const unsigned int l1tmetemu::kInternalEtaWidth {8}
 
const unsigned int l1tmetemu::kInternalPhiWidth {8}
 
const unsigned int l1tmetemu::kInternalPtWidth {15}
 
const unsigned int l1tmetemu::kInternalVTXWidth {12}
 
const float l1tmetemu::kMaxCosLUTPhi {M_PI / 2}
 
const float l1tmetemu::kMaxMET {4096}
 
const float l1tmetemu::kMaxMETPhi {2 * M_PI}
 
const float l1tmetemu::kMaxTrackEta {4}
 
const float l1tmetemu::kMaxTrackPt {512}
 
const float l1tmetemu::kMaxTrackZ0 {-TTTrack_TrackWord::minZ0}
 
const unsigned int l1tmetemu::kMETBins = 1 << kMETSize
 
const unsigned int l1tmetemu::kMETPhiBins = 1 << kMETPhiSize
 
const unsigned int l1tmetemu::kMETPhiSize {14}
 
const unsigned int l1tmetemu::kMETSize {15}
 
const unsigned int l1tmetemu::kNEtaRegion {6}
 
const unsigned int l1tmetemu::kNQuadrants {4}
 
const unsigned int l1tmetemu::kNSector {9}
 
const double l1tmetemu::kStepEta = (2 * std::abs(kMaxTrackEta)) / (1 << kInternalEtaWidth)
 
const double l1tmetemu::kStepMET = (l1tmetemu::kMaxMET / l1tmetemu::kMETBins)
 
const double l1tmetemu::kStepMETPhi = (l1tmetemu::kMaxMETPhi / l1tmetemu::kMETPhiBins)
 
const double l1tmetemu::kStepPhi = (2 * -TTTrack_TrackWord::minPhi0) / (kGlobalPhiBins - 1)
 
const double l1tmetemu::kStepPt = (std::abs(kMaxTrackPt)) / (1 << kInternalPtWidth)
 
const double l1tmetemu::kStepZ0 = (2 * std::abs(kMaxTrackZ0)) / (1 << kInternalVTXWidth)