CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Static Private Member Functions | Static Private Attributes
L1MuGMTEtaLUT Class Reference

#include <L1MuGMTEtaLUT.h>

Public Member Functions

 L1MuGMTEtaLUT ()
 constructor More...
 
virtual ~L1MuGMTEtaLUT ()
 destructor More...
 

Static Public Member Functions

static float eta (int isys, int isISO, int icharge, float eta, float pt)
 look up delta-eta More...
 

Static Private Member Functions

static int etabin (float eta, int isys)
 

Static Private Attributes

static const int bRPC =2
 
static const int CSC =1
 
static const int DT =0
 
static float etabins [NSYS][NETA+1]
 
static float fitparams_eta [NRP][NSYS][NETA][3]
 
static const int fRPC =3
 
static const unsigned int NETA =8
 
static const unsigned int NRP =2
 
static const int NSYS =4
 

Detailed Description

Description: Look-up table for GMT Eta projection unit

         Caluclates float delta-eta from charge, eta and pT 

         Simple static implementation with parametrization for
         CMS121 geometry

Definition at line 47 of file L1MuGMTEtaLUT.h.

Constructor & Destructor Documentation

L1MuGMTEtaLUT::L1MuGMTEtaLUT ( )

constructor

Definition at line 46 of file L1MuGMTEtaLUT.cc.

46  {
47 }
L1MuGMTEtaLUT::~L1MuGMTEtaLUT ( )
virtual

destructor

Definition at line 52 of file L1MuGMTEtaLUT.cc.

52  {
53 
54 }

Member Function Documentation

float L1MuGMTEtaLUT::eta ( int  isys,
int  isISO,
int  icharge,
float  eta,
float  pt 
)
static

look up delta-eta

Definition at line 72 of file L1MuGMTEtaLUT.cc.

References a, b, bRPC, trackerHits::c, CSC, DT, etabin(), fitparams_eta, and fRPC.

Referenced by L1MuGMTMIAUEtaProLUT::TheLookupFunction().

72  {
73 
74  int ieta = etabin ( (float) fabs(eta), isys );
75 
76  if ( (isys==DT || isys==bRPC) && pt < 4.) pt = 4.; // cut off
77  if ( (isys==CSC || isys==fRPC) && pt < 3.) pt = 3.;
78 
79  float a=fitparams_eta[isISO][isys][ieta][0];
80  float b=fitparams_eta[isISO][isys][ieta][1];
81  float c=fitparams_eta[isISO][isys][ieta][2];
82 
83  float deta = a + b / pt + c / (pt*pt);
84 
85  float neweta;
86  if (eta>0) neweta = eta - deta;
87  else neweta = eta + deta;
88 
89  return neweta;
90  }
static const int CSC
Definition: L1MuGMTEtaLUT.h:66
static const int bRPC
Definition: L1MuGMTEtaLUT.h:67
static const int DT
Definition: L1MuGMTEtaLUT.h:65
static const int fRPC
Definition: L1MuGMTEtaLUT.h:68
static float fitparams_eta[NRP][NSYS][NETA][3]
Definition: L1MuGMTEtaLUT.h:78
static int etabin(float eta, int isys)
double b
Definition: hdecay.h:120
static float eta(int isys, int isISO, int icharge, float eta, float pt)
look up delta-eta
double a
Definition: hdecay.h:121
int L1MuGMTEtaLUT::etabin ( float  eta,
int  isys 
)
staticprivate

Definition at line 60 of file L1MuGMTEtaLUT.cc.

References etabins, i, and NETA.

Referenced by eta().

60  {
61  int i;
62  for (i=0; i<(int)NETA;i++)
63  if (eta >= etabins[isys][i] && eta < etabins[isys][i+1]) break;
64  if (i>=(int)NETA) edm::LogWarning("LUTProblem") << "L1MuGMTEtaLUT::etabin(): could not assign eta bin ";
65  return i;
66 }
int i
Definition: DBlmapReader.cc:9
static const unsigned int NETA
Definition: L1MuGMTEtaLUT.h:72
static float etabins[NSYS][NETA+1]
Definition: L1MuGMTEtaLUT.h:77
static float eta(int isys, int isISO, int icharge, float eta, float pt)
look up delta-eta

Member Data Documentation

const int L1MuGMTEtaLUT::bRPC =2
staticprivate

Definition at line 67 of file L1MuGMTEtaLUT.h.

Referenced by eta().

const int L1MuGMTEtaLUT::CSC =1
staticprivate

Definition at line 66 of file L1MuGMTEtaLUT.h.

Referenced by eta().

const int L1MuGMTEtaLUT::DT =0
staticprivate

Definition at line 65 of file L1MuGMTEtaLUT.h.

Referenced by eta().

float L1MuGMTEtaLUT::etabins
staticprivate
Initial value:
= {
{ 0.00, 0.22, 0.27, 0.58, 0.77, 0.87, 0.92, 1.24, 1.35 },
{ 0.00, 1.06, 1.26, 1.46, 1.66, 1.86, 2.06, 2.26, 2.46 },
{ 0.00, 0.06, 0.25, 0.41, 0.54, 0.70, 0.83, 0.93, 2.10 },
{ 0.00 , 1.24, 1.36, 1.48, 1.61, 1.73, 1.85, 1.97, 2.10}
}

Definition at line 77 of file L1MuGMTEtaLUT.h.

Referenced by etabin().

float L1MuGMTEtaLUT::fitparams_eta
staticprivate

Definition at line 78 of file L1MuGMTEtaLUT.h.

Referenced by eta().

const int L1MuGMTEtaLUT::fRPC =3
staticprivate

Definition at line 68 of file L1MuGMTEtaLUT.h.

Referenced by eta().

const unsigned int L1MuGMTEtaLUT::NETA =8
staticprivate

Definition at line 72 of file L1MuGMTEtaLUT.h.

Referenced by etabin().

const unsigned int L1MuGMTEtaLUT::NRP =2
staticprivate

Definition at line 75 of file L1MuGMTEtaLUT.h.

const int L1MuGMTEtaLUT::NSYS =4
staticprivate

Definition at line 64 of file L1MuGMTEtaLUT.h.