#include <MucBakelite.h>
|
| MucBakelite (int part, int segment, int layer, int upDown, int rpcId, int id) |
|
| MucBakelite (const MucBakelite &other) |
|
MucBakelite & | operator= (const MucBakelite &other) |
|
| ~MucBakelite () |
|
double | GetPhi () |
|
| MucEntity (int part, int segment, int layer) |
|
| MucEntity (int part, int segment, int layer, int id) |
|
| MucEntity (int part, int segment, int layer, int upDown, int id) |
|
| MucEntity (int part, int segment, int layer, int upDown, int rpcId, int id) |
|
| MucEntity (const MucEntity &other) |
|
MucEntity & | operator= (const MucEntity &other) |
|
virtual | ~MucEntity () |
|
int | GetPart () |
|
int | GetSegment () |
|
int | GetLayer () |
|
int | GetUpDown () |
|
int | GetRpcId () |
|
int | GetID () |
|
double | GetTheta () |
|
double | GetRin () |
|
double | GetRout () |
|
double | GetRc () |
|
double | GetThin () |
|
double | GetW () |
|
double | GetH () |
|
double | GetL () |
|
double | GetWu () |
|
double | GetWd () |
|
double | GetArea () |
|
double | GetLocOrgInBes (int i) |
|
double | GetObjRotToMot (int i) |
|
double | GetObjOrgInBes (int i) |
|
double | GetObjOrgInLoc (int i) |
|
double * | GetLocOrgInBes () |
|
double * | GetObjRotToMot () |
|
double * | GetObjOrgInLoc () |
|
double * | GetObjOrgInBes () |
|
void | TransBesToLoc (double LocCoord[], double BesCoord[], double LocOrgInBes[], double Rot_z) |
|
void | TransLocToBes (double LocCoord[], double BesCoord[], double LocOrgInBes[], double Rot_z) |
|
Definition at line 18 of file MucBakelite.h.
◆ MucBakelite() [1/2]
MucBakelite::MucBakelite |
( |
int | part, |
|
|
int | segment, |
|
|
int | layer, |
|
|
int | upDown, |
|
|
int | rpcId, |
|
|
int | id ) |
Definition at line 17 of file MucBakelite.cxx.
18 :
MucEntity( part, segment, layer, upDown, rpcId,
id )
19{
21}
MucEntity(int part, int segment, int layer)
◆ MucBakelite() [2/2]
◆ ~MucBakelite()
MucBakelite::~MucBakelite |
( |
| ) |
|
◆ GetPhi()
double MucBakelite::GetPhi |
( |
| ) |
|
◆ Init()
void MucBakelite::Init |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 43 of file MucBakelite.cxx.
44{
50
57
60
64}
virtual void SetObjOrgInBes()
virtual void SetObjOrgInLoc()
virtual void SetLocOrgInBes()
Referenced by MucBakelite().
◆ operator=()
Definition at line 30 of file MucBakelite.cxx.
31{
32 if( this == &other) return *this;
35
36 return *this;
37}
MucEntity & operator=(const MucEntity &other)
◆ SetBarrelRpcInBes()
int MucBakelite::SetBarrelRpcInBes |
( |
| ) |
|
|
protected |
Definition at line 361 of file MucBakelite.cxx.
362{
363 if(
m_Part != BRID )
return 0;
364
367
369 {
370
371 double r;
372 r = (B_AS_RMIN[
m_Layer] - AS_GAP / 2.0) + (1-2*
m_UpDown)*(STR_TH + RPC_TH)/2.0;
375
376
378 {
380 z = (2*
m_UpDown - 1) * 3 * B_RPC_LTN/2.0;
381 else
382 z = (2*
m_UpDown - 1) * 3 * B_RPC_LTS/2.0;
383 }
386 else
387 z = -B_BOX_LT/2.0 + B_BOX_DZ[
m_UpDown] + (1+2*(3-
m_RpcId))*B_RPC_LTN/2.0;
388 }
389 else
390 {
391
394 else
396
397
398 y = (B_AS_RMIN[
m_Layer] - AS_GAP / 2.0) + (1-2*
m_UpDown)*(STR_TH + RPC_TH)/2.0;
399
400
409 else
410 z = -B_BOX_LT/2.0 - B_BOX_DZ[
m_UpDown] + (1+2*(4-
m_RpcId))*B_RPC_LTN/2.0;
411 }
412
416
417
418 for( int i=0; i<2; i++ ) {
420 }
421
422 return 0;
423}
double sin(const BesAngle a)
double cos(const BesAngle a)
Referenced by Init(), and SetLocOrgInBes().
◆ SetEndcapRpcInBes()
int MucBakelite::SetEndcapRpcInBes |
( |
| ) |
|
|
protected |
Definition at line 425 of file MucBakelite.cxx.
426{
427 if(
m_Part == BRID )
return 0;
428
431
432
434 {
436 x = ( VALUE*
m_Rc + E_GP_DX + E_STRPLN_DA + RPC_SL_OFFSET ) / 2.0;
438 }
442 }
443 else {
445 y = ( VALUE*
m_Rc + E_GP_DY + E_STRPLN_DA + RPC_SL_OFFSET ) / 2.0;
446 }
447 }
448 else
449 {
451 {
452 case 0:
453 x = ( VALUE*
m_Rc + E_GP_DX + E_STRPLN_DA )/2.0 + RPC_DEATH_EDGE/2.0;
455 break;
456 case 1:
458 x += RPC_DEATH_EDGE * ( 3 - 2*sqrt(2.0) )/4.0;
460 y += RPC_DEATH_EDGE * ( 1 + 4.0/sqrt(2.0) )/4.0;
461 break;
462 case 2:
465 break;
466 case 3:
468 x += RPC_DEATH_EDGE * ( 1 + 4.0/sqrt(2.0) )/4.0;
470 y += RPC_DEATH_EDGE * ( 3 - 2*sqrt(2.0) )/4.0;
471 break;
472 case 4:
474 y = ( VALUE*
m_Rc + E_GP_DY + E_STRPLN_DA )/2.0 + RPC_DEATH_EDGE/2.0;
475 }
476 }
477
478
483
484
485 for(
int i=0; i<
m_Layer+1; i++ ) z += E_AS_TH[i];
486
488 z += ( (E_AS_ZMAX - E_AS_TOTAL_TH ) + AS_GAP/2.0 );
489 z += (1-2*
m_UpDown) * ( STR_TH + RPC_TH ) / 2.0;
491
495
496
497 for( int i=0; i<2; i++ ) {
499 }
500
501 return 0;
502}
Referenced by Init(), and SetLocOrgInBes().
◆ SetH()
void MucBakelite::SetH |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 198 of file MucBakelite.cxx.
199{
202 else
203 {
205
206
208 m_H -= RPC_DEATH_EDGE * (1 + 1.0/VALUE);
209 else
210 m_H -= RPC_DEATH_EDGE * 2.0;
211 }
212}
Referenced by Init().
◆ SetL()
void MucBakelite::SetL |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 214 of file MucBakelite.cxx.
215{
217 {
219 {
220
222 {
224 m_L = B_BOX_LT - 2*B_BOX_DZ[
m_UpDown] - 3*B_RPC_LTN;
225 else
226 m_L = B_BOX_LT - 2*B_BOX_DZ[
m_UpDown] - 3*B_RPC_LTS;
227 }
228 else
229 {
232 else
234 }
235 }
236 else
237 {
240 }
243 }
244 else
246
247 }
248
249 m_L -= RPC_DEATH_EDGE * 2.0;
250
251 }
252 else {
254 }
255}
Referenced by Init().
◆ SetLocOrgInBes()
void MucBakelite::SetLocOrgInBes |
( |
| ) |
|
|
protectedvirtual |
◆ SetObjOrgInBes()
void MucBakelite::SetObjOrgInBes |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 528 of file MucBakelite.cxx.
529{
531
532
533 for( int i=0; i<3; i++ ) {
535 }
536}
void TransLocToBes(double LocCoord[], double BesCoord[], double LocOrgInBes[], double Rot_z)
Referenced by Init().
◆ SetObjOrgInLoc()
void MucBakelite::SetObjOrgInLoc |
( |
| ) |
|
|
protectedvirtual |
◆ SetPhi()
void MucBakelite::SetPhi |
( |
| ) |
|
|
protectedvirtual |
◆ SetRc()
void MucBakelite::SetRc |
( |
| ) |
|
|
protectedvirtual |
◆ SetRin()
void MucBakelite::SetRin |
( |
| ) |
|
|
protectedvirtual |
◆ SetRout()
void MucBakelite::SetRout |
( |
| ) |
|
|
protectedvirtual |
◆ SetTheta()
void MucBakelite::SetTheta |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 79 of file MucBakelite.cxx.
80{
83 else
84 {
87 else
88 {
90 m_Theta = ( MUC_PI/4.0 ) + MUC_PI / 8.0 ;
93 else
94 m_Theta = ( MUC_PI/4.0 ) - MUC_PI / 8.0 ;
95 }
96 }
97}
Referenced by Init().
◆ SetThin()
void MucBakelite::SetThin |
( |
| ) |
|
|
protectedvirtual |
◆ SetW()
void MucBakelite::SetW |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 127 of file MucBakelite.cxx.
128{
130 {
132 {
135 else
137 }
138 else
139 {
142 else
144 }
145 }
146 else
147 {
149 {
151 m_W = VALUE *
m_Rc - E_GP_DX - E_STRPLN_DA - RPC_SL_OFFSET;
154 else
155 m_W = VALUE *
m_Rc - E_GP_DY - E_STRPLN_DA - RPC_SL_OFFSET;
156 }
157 else
158 {
160 {
161 case 0:
162 m_W = VALUE *
m_Rc - E_GP_DX - E_STRPLN_DA;
163 break;
164 case 1:
165 case 3:
167 break;
168 case 2:
170 break;
171 case 4:
172 m_W = VALUE *
m_Rc - E_GP_DY - E_STRPLN_DA;
173 break;
174 default: ;
175 }
176 }
177 }
178
179
181 m_W -= RPC_DEATH_EDGE * 2.0;
182 else
183 {
185 if(
m_RpcId == 1 )
m_W -= RPC_DEATH_EDGE * 2.0;
186 else m_W -= ( 1 + 1.0/
cos(MUC_PI/8.0) ) * RPC_DEATH_EDGE;
187 }
188 else
189 {
191 m_W -= RPC_DEATH_EDGE * 2.0;
192 else
193 m_W -= RPC_DEATH_EDGE;
194 }
195 }
196}
Referenced by Init().
◆ SetWd()
void MucBakelite::SetWd |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 310 of file MucBakelite.cxx.
311{
313 else
314 {
316 {
318 m_Wd = VALUE *
m_Rout - E_GP_DX - E_STRPLN_DA - RPC_SL_OFFSET;
321 else
322 m_Wd = VALUE *
m_Rout - E_GP_DY - E_STRPLN_DA - RPC_SL_OFFSET;
323 }
324 else
325 {
327 {
328 case 0:
329 m_Wd = VALUE *
m_Rout - E_GP_DX - E_STRPLN_DA;
330 break;
331 case 1:
332 case 3:
334 break;
335 case 2:
337 break;
338 case 4:
339 m_Wd = VALUE *
m_Rout - E_GP_DY - E_STRPLN_DA;
340 break;
341 default: ;
342 }
343 }
344
345
348 else m_Wd -= ( 1 + 1.0/
cos(MUC_PI/8.0) ) * RPC_DEATH_EDGE;
349 }
350 else
351 {
353 m_Wd -= RPC_DEATH_EDGE * 2.0;
354 else
355 m_Wd -= RPC_DEATH_EDGE;
356 }
357 }
358}
Referenced by Init().
◆ SetWu()
void MucBakelite::SetWu |
( |
| ) |
|
|
protectedvirtual |
Reimplemented from MucEntity.
Definition at line 257 of file MucBakelite.cxx.
258{
260 else
261 {
263 {
265 m_Wu = VALUE *
m_Rin - E_GP_DX - E_STRPLN_DA - RPC_SL_OFFSET;
268 else
269 m_Wu = VALUE *
m_Rin - E_GP_DY - E_STRPLN_DA - RPC_SL_OFFSET;
270 }
271 else
272 {
274 {
275 case 0:
276 m_Wu = VALUE *
m_Rin - E_GP_DX - E_STRPLN_DA;
277 break;
278 case 1:
279 case 3:
281 break;
282 case 2:
284 break;
285 case 4:
286 m_Wu = VALUE *
m_Rin - E_GP_DY - E_STRPLN_DA;
287 break;
288 default: ;
289 }
290 }
291
292
294 {
297 else m_Wu -= ( 1 + 1.0/
cos(MUC_PI/8.0) ) * RPC_DEATH_EDGE;
298 }
299 else
300 {
302 m_Wu -= RPC_DEATH_EDGE * 2.0;
303 else
304 m_W -= RPC_DEATH_EDGE;
305 }
306 }
307 }
308}
Referenced by Init().
The documentation for this class was generated from the following files: