78 int isISO = (
idx / 2) % 2;
80 int idx_drcr = isFWD * 2 +
isRPC;
85 int ch_idx = (
charge == 0) ? 1 : 0;
92 if ((
isRPC && isFWD && fabs(oldeta) < 1.04) || (
isRPC && !isFWD && fabs(oldeta) > 1.04)) {
94 edm::LogWarning(
"LUTRangeViolation") <<
"L1MuGMTMIAUEtaProLUT::TheLookupFunction: RPC " << (isFWD ?
"fwd" :
"brl")
95 <<
" eta value out of range: " << oldeta;
99 int isys = isFWD + 2 *
isRPC;
111 unsigned eta_select_word_14 = 1 << icenter;
123 if (neweta > bincenter)
133 for (
int i = imin;
i <= imax;
i++)
134 eta_select_word_14 |= 1 <<
i;
139 unsigned eta_select_word;
141 unsigned mask5 = (1 << 5) - 1;
142 eta_select_word = eta_select_word_14 & mask5;
143 eta_select_word |= (eta_select_word_14 & (mask5 << 9)) >> 4;
145 unsigned mask10 = (1 << 10) - 1;
146 eta_select_word = (eta_select_word_14 & (mask10 << 2)) >> 2;
149 return eta_select_word;
double globalEtaBinCenter(unsigned int globalEtaIndex) const
static const L1CaloGeometry * getCaloGeom()
int m_IsolationCellSizeEta
Private data members (LUT parameters);.
virtual float getLowEdge(unsigned packed) const =0
get the low edge of bin represented by packed
virtual float getCenter(unsigned packed) const =0
get the center of bin represented by packed
const L1MuScale * getPtScale() const
get the Pt scale
const L1MuScale * getRegionalEtaScale(int isys) const
get the regioanl muon trigger eta scale, isys = 0(DT), 1(bRPC), 2(CSC), 3(fwdRPC) ...
static int getIsolationCellSizeEta()
unsigned int globalEtaIndex(const double &etaValue) const
static const L1MuTriggerPtScale * getTriggerPtScale()
unsigned int numberGctForwardEtaBinsPerHalf() const
static const L1MuTriggerScales * getTriggerScales()
void InitParameters()
Initialize scales, configuration parameters, alignment constants, ...
static float eta(int isys, int isISO, int icharge, float eta, float pt)
look up delta-eta
unsigned TheLookupFunction(int idx, unsigned eta, unsigned pt, unsigned charge) const
The lookup function - here the functionality of the LUT is implemented.
Log< level::Warning, false > LogWarning