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 <iomanip>
#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_ufixed< kAtanLUTSize, kAtanLUTMagSize, AP_RND_CONV, AP_SAT > l1tmetemu::atan_lut_fixed_t
 
typedef ap_ufixed< kCosLUTSize, kCosLUTMagSize, AP_RND_CONV, AP_SAT > l1tmetemu::cos_lut_fixed_t
 
typedef ap_fixed< kMETSize+kEtExtra, kMETMagSize+kEtExtra, AP_RND_CONV, AP_SAT > l1tmetemu::Et_t
 
typedef ap_int< TTTrack_TrackWord::TrackBitWidths::kPhiSize+kGlobalPhiExtra > l1tmetemu::global_phi_t
 
typedef ap_fixed< kMETPhiSize+kEtExtra, 4, AP_RND_CONV, AP_SAT > l1tmetemu::metphi_fixed_t
 
typedef ap_ufixed< kMETSize, kMETMagSize, AP_RND_CONV, AP_SAT > l1tmetemu::METWord_t
 
typedef ap_int< kMETPhiSize > l1tmetemu::METWordphi_t
 
typedef ap_ufixed< kMETPhiSize+kEtExtra+7, kMETPhiSize - 2, AP_RND_CONV, AP_SAT > l1tmetemu::pi_bins_fixed_t
 

Functions

std::vector< cos_lut_fixed_t > l1tmetemu::generateCosLUT ()
 
std::vector< global_phi_t > l1tmetemu::generatePhiSliceLUT (unsigned int N)
 
global_phi_t l1tmetemu::localToGlobalPhi (TTTrack_TrackWord::phi_t local_phi, global_phi_t sector_shift)
 
template<typename T >
void l1tmetemu::printLUT (std::vector< T > lut, std::string module="", std::string name="")
 

Variables

const unsigned int l1tmetemu::kAtanLUTMagSize {2}
 
const unsigned int l1tmetemu::kAtanLUTSize {64}
 
const double l1tmetemu::kBinsInPi = 1.0 / kStepMETwordPhi
 
const unsigned int l1tmetemu::kCosLUTBins {1 << kCosLUTTableSize}
 
const unsigned int l1tmetemu::kCosLUTMagSize {1}
 
const unsigned int l1tmetemu::kCosLUTShift {TTTrack_TrackWord::TrackBitWidths::kPhiSize - kCosLUTTableSize}
 
const unsigned int l1tmetemu::kCosLUTSize {10}
 
const unsigned int l1tmetemu::kCosLUTTableSize {10}
 
const unsigned int l1tmetemu::kEtExtra {4}
 
const unsigned int l1tmetemu::kGlobalPhiExtra {4}
 
const unsigned int l1tmetemu::kInternalPtWidth {14}
 
const double l1tmetemu::kMaxCosLUTPhi {M_PI / 2}
 
const double l1tmetemu::kMaxMET = 1 << kMETMagSize
 
const double l1tmetemu::kMaxMETPhi {2 * M_PI}
 
const unsigned int l1tmetemu::kMETMagSize {11}
 
const unsigned int l1tmetemu::kMETPhiSize {13}
 
const unsigned int l1tmetemu::kMETSize {16}
 
const unsigned int l1tmetemu::kNQuadrants {4}
 
const unsigned int l1tmetemu::kNSector {9}
 
const unsigned int l1tmetemu::kPtMagSize {9}
 
const double l1tmetemu::kStepMETwordEt = kMaxMET / (1 << kMETSize)
 
const double l1tmetemu::kStepMETwordPhi = kMaxMETPhi / (1 << kMETPhiSize)