8 #define m_pi 3.14159265358979
14 std::string
msg =
"[RPCConst::iptFromPt] called with illegal pt=";
15 std::ostringstream ostr;
22 while (pt <
m_pts[ipt]) { ipt--; };
32 std::string
msg =
"[RPCConst::ptFromIpt] problem with ipt: ";
33 std::ostringstream ostr;
39 else return m_pts[ipt];
45 int iabsitow = (atower >= 0)? atower: -atower;
46 if (0==iabsitow)
return 0.;
50 std::string
msg =
"[RPCConst::etaFromTowerNum] iabsitow>ITOW_MAX for m_tower:";
51 std::ostringstream ostr;
58 return (atower>= 0) ? eta : -
eta;
64 double abseta = (eta >=0.) ? eta:-
eta;
66 if(
m_etas[m_tower] <= abseta && abseta<
m_etas[m_tower+1])
break;
71 return (eta>=0) ? m_tower:-m_tower;
76 return (phi <2.*
m_pi) ? phi: phi-2.*
m_pi;
80 int iseg = logSegment*12 + logSector;
82 return (phi <2.*
m_pi) ? phi: phi-2.*
m_pi;
112 const double lum = 2.0e33;
113 const double dabseta = 1.0;
114 const double dpt = 1.0;
115 const double afactor = 1.0e-34*lum*dabseta*dpt;
116 const double a = 2*1.3084E6;
117 const double mu=-0.725;
118 const double sigma=0.4333;
119 const double s2=2*sigma*sigma;
122 ptlog10 = log10(pt_ev);
123 double ex = (ptlog10-
mu)*(ptlog10-mu)/
s2;
124 double rate = (a *
exp(-ex) * afactor);
137 rate = rate * (etaTo - etaFrom);
166 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5,
168 10., 12., 14., 16., 18.,
169 20., 25., 30., 35., 40., 45.,
170 50., 60., 70., 80., 90., 100., 120., 140.};
175 {0.00, 0.07, 0.27, 0.44, 0.58, 0.72,
176 0.83, 0.93, 1.04, 1.14, 1.24, 1.36,
177 1.48, 1.61, 1.73, 1.85, 1.97, 2.10};
182 "m_LOGPLANE1",
"m_LOGPLANE2",
"m_LOGPLANE3",
"m_LOGPLANE4",
"m_LOGPLANE5",
"m_LOGPLANE6"
187 {72, 56, 8, 40, 40, 24},
188 {72, 56, 8, 40, 40, 24},
189 {72, 56, 8, 40, 40, 24},
190 {72, 56, 8, 40, 40, 24},
191 {72, 56, 8, 40, 40, 24},
192 {72, 56, 40, 8, 40, 24},
193 {56, 72, 40, 8, 24, 0},
194 {72, 56, 40, 8, 24, 0},
195 {72, 24, 40, 8, 0, 0},
196 {72, 8, 40, 0, 0, 0},
197 {72, 8, 40, 24, 0, 0},
198 {72, 8, 40, 24, 0, 0},
199 {72, 8, 40, 24, 0, 0},
200 {72, 8, 40, 24, 0, 0},
201 {72, 8, 40, 24, 0, 0},
202 {72, 8, 40, 24, 0, 0},
203 {72, 8, 40, 24, 0, 0}
209 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3
214 6, 6, 6, 6, 6, 6, 5, 5, 4, 3, 4, 4, 4, 4, 4, 4, 4
219 m_LOGPLANE3, m_LOGPLANE3, m_LOGPLANE3, m_LOGPLANE3, m_LOGPLANE3,
221 m_LOGPLANE4, m_LOGPLANE4, m_LOGPLANE4, m_LOGPLANE4,
223 m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2, m_LOGPLANE2
244 for(
unsigned int i = 0;
i < str.size();
i++)
245 if(str[
i] <
'0' || str[
i] >
'9')
246 throw RPCException(
"Error in stringToInt(): the string cannot be converted to a number");
248 return atoi(str.c_str());
262 sprintf(tmp,
"%d",number);
static const int m_USED_PLANES_COUNT[m_TOWER_COUNT]
m_Number of Logic Planes existing in each m_Tower.
static const int m_VLPT_PLANES_COUNT[m_TOWER_COUNT]
m_Number of Logic Planes used for Very Low Pt patterns.
The coordinates of Logic Cone: m_Tower, m_LogSector, m_LogSegment.
Maximal number of abs(m_tower_number)
bool operator<(const l1RpcConeCrdnts &cone) const
static const int m_REF_PLANE[m_TOWER_COUNT]
Definition of Referenece Plane for each m_Tower.
bool operator==(const l1RpcConeCrdnts &cone) const
static double vxMuRate(int ptCode)
static const std::string m_LOGPLANE_STR[]
Log Planes names.
static double phiFromLogSegSec(const int logSegment, const int logSector)
std::string intToString(int number)
Converts inteager number to string.
static const double m_etas[RPCConst::ITOW_MAX+2]
static const unsigned int m_LOGPLANE_SIZE[m_TOWER_COUNT][m_LOGPLANES_COUNT]
Definition of Logic Cone Sizes - number of Logic m_Strips in each plane.
static double phiFromSegmentNum(const int iseg)
static double ptFromIpt(const int ipt)
static const int m_LOGPLANES_COUNT
Max Logic Planes Count in trigger towers.
static double etaFromTowerNum(const int atower)
static int segmentNumFromPhi(const double phi)
std::vector< std::vector< double > > tmp
static double vxIntegMuRate(int ptCode, double etaFrom, double etaTo)
static const double m_pts[RPCConst::IPT_MAX+1]
Offset of the first trigger phi sector [deg].
static int towerNumFromEta(const double eta)
static int iptFromPt(const double pt)
int stringToInt(std::string str)
Converts string to inteager number. If string contains chars, that are not digits, throws RPCException.