102 #include "StPmdGeom.h"
112 #include<TPolyLine.h>
119 Float_t
StPmdGeom::mxcon[17]={22.63367,66.84988,112.60741,66.51461,112.3336,
120 -23.71335,-1.75714,-1.80849,-69.33651,-69.33518,
121 3.60214,-45.43217,-67.35937,-112.86835,3.60151,
124 Float_t StPmdGeom::mycon[17]={13.95724,-36.74996,-63.1415,41.57234,15.11893,
125 12.62782,76.01182,128.98824,36.68728,89.59438,
126 -27.89206,-27.81838,-40.5852,-67.40152,-53.35941,
127 -78.78845,-105.38004};
131 Float_t StPmdGeom::mdetxcon[12]={-69.33518,-1.80849,-69.33651,-1.75714,
132 -112.86835,-67.35937,-42.7025,66.51461,
133 112.3336,66.84988,112.60741,-40.31029};
135 Float_t StPmdGeom::mdetycon[12]={89.59438,128.98824,36.68728,76.01182,
136 -67.40152,-40.5852,-105.38004,41.57234,
137 15.11893,-36.74996,-63.1415,-52.64566};
141 Int_t StPmdGeom::inorm[192] = {23,24,24,24,24,23,22,23,23,22,21,22,22,20,21,
142 21,21,19,18,20,19,18,20,20,17,17,19,18,17,17,
143 19,18,18,17,17,17,17,18,19,18,18,19,20,19,19,
144 21,20,20,20,22,23,21,22,23,21,21,24,24,22,23,
145 24,24,22,23,15,16,16,16,16,15,14,15,15,14,13,
146 14,14,12,13,13,13,11,10,12,11,10,12,12,9,9,11,
147 10,9,9,11,10,10,9,9,9,9,10,11,10,10,11,12,11,
148 11,13,12,12,12,14,15,13,14,15,13,13,16,16,14,
149 15,16,16,14,15,7,8,8,8,8,7,6,7,7,6,5,6,6,4,5,5,
150 5,3,2,4,3,2,4,4,1,1,3,2,1,1,3,2,2,1,1,1,1,2,3,
151 2,2,3,4,3,3,5,4,4,4,6,7,5,6,7,5,5,8,8,6,7,8,8,
154 Int_t StPmdGeom::jnorm[192] = {4,4,3,2,1,3,4,2,1,1,1,2,3,1,4,2,3,1,1,2,2,2,4,
155 3,1,2,3,3,3,4,4,4,5,5,6,7,8,6,5,7,8,8,8,7,6,8,
156 5,7,6,8,8,7,7,7,5,6,8,7,6,6,6,5,5,5,4,4,3,2,1,
157 3,4,2,1,1,1,2,3,1,4,2,3,1,1,2,2,2,4,3,1,2,3,3,
158 3,4,4,4,5,5,6,7,8,6,5,7,8,8,8,7,6,8,5,7,6,8,8,
159 7,7,7,5,6,8,7,6,6,6,5,5,5,4,4,3,2,1,3,4,2,1,1,
160 1,2,3,1,4,2,3,1,1,2,2,2,4,3,1,2,3,3,3,4,4,4,5,
161 5,6,7,8,6,5,7,8,8,8,7,6,8,5,7,6,8,8,7,7,7,5,6,
164 Int_t StPmdGeom::imirr[192] = {4,4,4,3,3,3,2,1,3,4,2,2,2,1,1,3,2,4,1,3,2,1,1,
165 1,2,4,3,1,2,3,4,4,5,5,5,6,6,6,7,8,6,5,7,7,7,8,
166 8,6,7,5,8,6,7,8,8,8,7,5,6,8,7,6,5,5,4,4,4,3,3,
167 3,2,1,3,4,2,2,2,1,1,3,2,4,1,3,2,1,1,1,2,4,3,1,
168 2,3,4,4,5,5,5,6,6,6,7,8,6,5,7,7,7,8,8,6,7,5,8,
169 6,7,8,8,8,7,5,6,8,7,6,5,5,4,4,4,3,3,3,2,1,3,4,
170 2,2,2,1,1,3,2,4,1,3,2,1,1,1,2,4,3,1,2,3,4,4,5,
171 5,5,6,6,6,7,8,6,5,7,7,7,8,8,6,7,5,8,6,7,8,8,8,
174 Int_t StPmdGeom::jmirr[192] = {2,3,1,1,2,3,1,1,4,4,2,3,4,2,3,5,5,5,4,6,6,5,6,
175 7,7,6,7,8,8,8,8,7,7,6,8,8,7,6,8,8,5,5,7,6,5,7,
176 6,4,4,4,5,3,3,4,3,2,2,3,2,1,1,1,1,2,10,11,9,9,
177 10,11,9,9,12,12,10,11,12,10,11,13,13,13,12,14,
178 14,13,14,15,15,14,15,16,16,16,16,15,15,14,16,16,
179 15,14,16,16,13,13,15,14,13,15,14,12,12,12,13,
180 11,11,12,11,10,10,11,10,9,9,9,9,10,18,19,17,17,
181 18,19,17,17,20,20,18,19,20,18,19,21,21,21,20,
182 22,22,21,22,23,23,22,23,24,24,24,24,23,23,22,
183 24,24,23,22,24,24,21,21,23,22,21,23,22,20,20,
184 20,21,19,19,20,19,18,18,19,18,17,17,17,17,18};
187 Int_t status[48][36];
201 nmod=(sector-1)*5 + super;
205 void StPmdGeom::Cell_xy(Int_t nmod,Int_t row, Int_t col,Float_t& xreal, Float_t& yreal,Float_t& eta,Float_t& phi)
209 xreal = mxcon[nmod-1] - (row-1)*mcelldia_y;
210 yreal = mycon[nmod-1] + (col-1)*mcelldia_x + (row-1)*mcell_rad;
212 if (nmod>5 && nmod<=10)
214 xreal = mxcon[nmod-1] - (col - 1) * mconst2;
215 yreal = mycon[nmod-1] - (col - 1) * mconst1 - (row - 1) * mcelldia_x;
217 if (nmod>10 && nmod<=17)
219 xreal = mxcon[nmod-1] + (col - 1)*mconst2 + (row - 1)*mconst2;
220 yreal = mycon[nmod-1] + (row - col ) * mconst1;
227 void StPmdGeom::DetCell_xy(Int_t nmod,Float_t row, Float_t col,Float_t& xreal, Float_t& yreal,Float_t& eta,Float_t& phi)
231 xreal = mdetxcon[nmod-1] - (col - 1) * mconst2;
232 yreal = mdetycon[nmod-1] - (col - 1) * mconst1 - (row - 1) * mcelldia_x;
235 if (nmod>4 && nmod<=7)
237 xreal = mdetxcon[nmod-1] + (col - 1)*mconst2 + (row - 1)*mconst2;
238 yreal = mdetycon[nmod-1] + (row - col ) * mconst1;
241 if (nmod>7 && nmod<=11)
243 xreal = mdetxcon[nmod-1] - (row-1)*mcelldia_y;
244 yreal = mdetycon[nmod-1] + (col-1)*mcelldia_x + (row-1)*mcell_rad;
248 xreal = mdetxcon[nmod-1] + (col - 1)*mconst2 + (row - 1)*mconst2;
249 yreal = mdetycon[nmod-1] + (row - col ) * mconst1;
260 xreal = mdetxcon[nmod-1] - (col - 1) * mconst2;
261 yreal = mdetycon[nmod-1] - (col - 1) * mconst1 - (row - 1) * mcelldia_x;
264 if (nmod>4 && nmod<=7)
266 xreal = mdetxcon[nmod-1] + (col - 1)*mconst2 + (row - 1)*mconst2;
267 yreal = mdetycon[nmod-1] + (row - col ) * mconst1;
270 if (nmod>7 && nmod<=11)
272 xreal = mdetxcon[nmod-1] - (row-1)*mcelldia_y;
273 yreal = mdetycon[nmod-1] + (col-1)*mcelldia_x + (row-1)*mcell_rad;
277 xreal = mdetxcon[nmod-1] + (col - 1)*mconst2 + (row - 1)*mconst2;
278 yreal = mdetycon[nmod-1] + (row - col ) * mconst1;
286 Float_t rdist = (TMath::Sqrt(xreal*xreal + yreal*yreal))/mzreal;
287 Float_t theta = TMath::ATan(rdist);
289 if(theta !=0.){ eta = TMath::Log(TMath::Tan(0.5*theta));}
291 if(yreal>0) {phi = 1.571428;}
292 if(yreal<0) {phi = -1.571428;}
294 if(xreal != 0) {phi = atan2(yreal,xreal);}
393 Int_t StPmdGeom::ChainMapping(Int_t& chainno,Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t&chmod)
404 Int_t brd=int((ch)/64)+1;
408 for(Int_t ibrd=0;ibrd<36;ibrd++){
410 if(status[chainno-1][ibrd]==0){missing++;}
411 brdCount+=status[chainno-1][ibrd];
414 chtemp=ch+missing*64;
417 if(chtemp>=1728)
return kStWarn;
421 chain1(chtemp,supmod,col,row);
424 chain2(chtemp,supmod,col,row);
427 chain3(chtemp,supmod,col,row);
430 chain2(chtemp,supmod,col1,row1);
431 col = col1; row = row1 + 24;
434 chain5(chtemp,supmod,col,row);
437 chain2(chtemp,supmod,col,row);
441 chain2(chtemp,supmod,col1,row1);
442 col = col1; row = row1 + 24; supmod = 4;
445 chain2(chtemp,supmod,col1,row1);
446 col = 73 - col1; row = 25 - row1; supmod = 5;
449 chain9(chtemp,supmod,col,row);
452 chain10(chtemp,supmod,col,row);
455 chain10(chtemp,supmod,col1,row1);
457 if(supmod==4){col = col1 - 24;}
458 if(supmod==6){row = row1 + 24;}
461 chain12(chtemp,supmod,col,row);
464 chain12(chtemp,supmod,col1,row1);
466 if(supmod==5) {row = row1 -24; supmod = 6;}
467 if(supmod==7) {row = row1 + 24;}
470 chain5(chtemp,supmod,col,row);
474 chain15(chtemp,supmod,col,row);
477 chain5(chtemp,supmod,col1,row1);
478 supmod = 8; col = col1 -24; row =row1;
481 chain17(chtemp,supmod,col,row);
484 chain5(chtemp,supmod,col1,row1);
485 supmod = 10; col = col1 + 24; row =row1;
488 chain2(chtemp,supmod,col,row);
492 chain5(chtemp,supmod,col,row);
496 chain21(chtemp,supmod,col,row);
499 chain22(chtemp,supmod,col,row);
502 chain23(chtemp,supmod,col,row);
505 chain5(chtemp,supmod,col1,row1);
506 supmod = 12; col = 121 - col1; row = 73 - row1;
509 chain15(chtemp,supmod, col1, row1);
510 supmod = 13; col = 49 - row1; row = 49 - col1;
513 chain5(chtemp,supmod,col1,row1);
514 supmod = 14; col = 73 - row1; row = 49 - col1;
517 chain17(chtemp,supmod,col1,row1);
521 if(supmod==15){ row = 73 - col1;}
524 chain5(chtemp,supmod,col1,row1);
525 supmod = 14; col = 73 - row1; row = 49 - col1 +24;
528 chain2(chtemp,supmod,col1,row1);
529 supmod = 15; col = 49 - row1; row = 73 - col1;
532 chain5(chtemp,supmod,col1,row1);
533 supmod = 16; col = 73 - row1; row = 49 - col1;
536 chain5(chtemp,supmod,col1,row1);
537 supmod = 16; col = 73 - row1; row = 49 - col1 +24;
540 chain5(chtemp,supmod,col1,row1);
541 supmod = 17; col = row1; row = col1 -24;
544 chain22(chtemp,supmod,col1,row1);
558 chain34(chtemp,supmod,col,row);
561 chain34(chtemp,supmod,col1,row1);
563 if(supmod == 16){ col = col1 - 24;}
564 if(supmod == 18){ row = row1 + 24;}
567 chain34(chtemp,supmod,col1,row1);
569 if(supmod == 16) {col = 121-col1;row = 97 - row1;}
573 chain34(chtemp,supmod,col1,row1);
575 if(supmod==18){row = row1 + 24;supmod = 19;}
577 col = 121-col1; row = 73 - row1;
581 chain2(chtemp,supmod,col1,row1);
582 supmod = 20; col = 49 - row1; row = 73 - col1;
585 chain39(chtemp,supmod,col1,row1);
586 col = 49 - row1; row = 49 - col1;
589 chain2(chtemp,supmod,col1,row1);
590 supmod = 20; col = 25 - row1; row = 73 - col1;
593 chain41(chtemp,supmod,col1,row1);
594 if(supmod==21){col = 49 - row1; row = 49 - col1;}
595 if(supmod==23){col = 73 - row1; row = 49 - col1;}
598 chain2(chtemp,supmod,col1,row1);
599 supmod = 22; col = 73 - row1; row = 73 - col1;
602 chain5(chtemp,supmod,col1,row1);
603 supmod = 23; col = 73 - row1; row = 49 - col1;
606 chain2(chtemp,supmod,col1,row1);
607 supmod = 22; col = 49 - row1; row = 73 - col1;
610 chain45(chtemp,supmod,col,row);
613 chain46(chtemp,supmod,col1,row1);
614 if(supmod==23){col = 73 - row1; row = 49 - col1;}
615 if(supmod==24){col = col1; row = row1;}
618 chain45(chtemp,supmod,col1,row1);
620 if(supmod ==22){col = 49 - col1; row = 73 -row1;}
621 if(supmod==24){col = 48 + col1; row = row1 - 48;}
625 chain2(chtemp,supmod,col1,row1);
626 supmod = 24; col = 72 + row1; row = col1;
634 void StPmdGeom::chain1(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
640 col = inorm[ch] + 24; row = jnorm[ch];
644 col = inorm[ch-192]; row = jnorm[ch-192];
648 col = 25 - inorm[ch-2*192]; row = 9 - jnorm[ch-2*192] + 8;
652 col = 25 - inorm[ch-3*192] + 24; row = 9 - jnorm[ch-3*192] + 8;
656 col = inorm[ch-4*192] + 24; row = jnorm[ch - 4*192] + 16;
660 col = inorm[ch-5*192]; row = jnorm[ch-5*192] + 16;
664 col = inorm[ch-6*192]; row = jnorm[ch-6*192] + 24;
668 col = 25 - inorm[ch-7*192]; row = 9 - jnorm[ch-7*192] + 24 + 8;
672 col = inorm[ch-8*192]; row = jnorm[ch-8*192] + 24 + 16;
678 void StPmdGeom::chain2(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
684 col = inorm[ch] + 48; row = jnorm[ch];
687 col = inorm[ch-192] + 24; row = jnorm[ch-192];
690 col = inorm[ch-2*192]; row = jnorm[ch-2*192];
693 col = 25 - inorm[ch-3*192]; row = 9 - jnorm[ch-3*192] + 8;
696 col = 25 - inorm[ch-4*192] + 24; row = 9 - jnorm[ch-4*192] + 8;
699 col = 25 - inorm[ch-5*192] + 48; row = 9 - jnorm[ch-5*192] + 8;
702 col = inorm[ch-6*192] + 48; row = jnorm[ch-6*192] + 16;
705 col = inorm[ch-7*192] + 24; row = jnorm[ch-7*192] + 16;
708 col = inorm[ch-8*192]; row = jnorm[ch-8*192] + 16;
714 void StPmdGeom::chain3(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
720 col = inorm[ch] + 24; row = jnorm[ch] + 24;
724 col = 25 - inorm[ch-192] + 24; row = 9 - jnorm[ch-192] + 24 + 8;
728 col = inorm[ch-2*192] + 24; row = jnorm[ch-2*192] + 24 + 16;
732 col = imirr[ch-3*192] + 16; row = jmirr[ch-3*192];
736 col = imirr[ch-4*192] + 16; row = jmirr[ch-4*192] + 24;
740 col = 9 - imirr[ch-5*192] + 8; row = 25 - jmirr[ch-5*192] + 24;
744 col = 9 - imirr[ch-6*192] + 8; row = 25 - jmirr[ch-6*192];
748 col = imirr[ch-7*192]; row = jmirr[ch-7*192];
752 col = imirr[ch-8*192] ; row = jmirr[ch-8*192] + 24;
758 void StPmdGeom::chain5(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
764 col = imirr[ch] + 24 + 16; row = jmirr[ch];
767 col = imirr[ch-192] + 24 +16; row = jmirr[ch-192] + 24;
770 col = imirr[ch-2*192] + 24 + 16; row = jmirr[ch-2*192] + 48;
773 col = 9 - imirr[ch-3*192] + 24 + 8; row = 25 - jmirr[ch-3*192] +48;
776 col = 9 - imirr[ch-4*192] + 24 +8; row = 25 -jmirr[ch-4*192] + 24;
779 col = 9 - imirr[ch-5*192] + 24 +8; row = 25 -jmirr[ch-5*192];
782 col = imirr[ch-6*192] + 24 ; row = jmirr[ch-6*192];
785 col = imirr[ch-7*192] + 24; row = jmirr[ch-7*192] + 24;
788 col = imirr[ch-8*192] + 24; row = jmirr[ch-8*192] + 48;
793 void StPmdGeom::chain9(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
799 col = imirr[ch] + 16; row = jmirr[ch] + 48;
802 col = 9 - imirr[ch-192] + 8; row = 25 - jmirr[ch-192] + 48;
805 col = imirr[ch-2*192]; row = jmirr[ch-2*192] + 48;
809 col = 25 - inorm[ch-3*192]; row = 9-jnorm[ch-3*192] +24 + 16;
814 col = 25 - inorm[ch-4*192] + 24; row = 9-jnorm[ch-4*192] + 24 + 16;
819 col = inorm[ch-5*192] + 24; row = jnorm[ch-5*192] + 24 + 8;
824 col = inorm[ch-6*192]; row = jnorm[ch-6*192]+ 24 +8;
829 col = 25 - inorm[ch-7*192]; row = 9-jnorm[ch-7*192] + 24;
834 col = 25 - inorm[ch-8*192] + 24; row = 9-jnorm[ch-8*192] + 24;
839 void StPmdGeom::chain10(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
845 col = inorm[ch] + 48; row = jnorm[ch] + 48;
848 col = 25 - inorm[ch-192] + 48; row = 9 - jnorm[ch-192] +48 + 8;
851 col = inorm[ch-2*192] + 48; row = jnorm[ch-2*192] + 48 + 16;
854 col = 25 - inorm[ch-3*192]; row = 9 -jnorm[ch-3*192] + 16;
858 col = 25 - inorm[ch-4*192] + 24; row = 9 -jnorm[ch-4*192] + 16;
862 col = inorm[ch-5*192] + 24; row = jnorm[ch-5*192] + 8;
866 col = inorm[ch-6*192]; row = jnorm[ch-6*192] +8;
870 col = 25 - inorm[ch-7*192]; row = 9 -jnorm[ch-7*192];
874 col = 25 - inorm[ch-8*192]+ 24; row = 9-jnorm[ch-8*192];
879 void StPmdGeom::chain12(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
885 col = 25 - inorm[ch]+ 48; row = 9-jnorm[ch] +24 + 16;
888 col = inorm[ch-192] + 48; row = jnorm[ch-192] + 24 + 8;
891 col = 25 - inorm[ch-2*192]+ 48; row = 9-jnorm[ch-2*192] +24;
894 col = 25 - inorm[ch-3*192]; row = 9-jnorm[ch-3*192] + 16;
898 col = 25 - inorm[ch-4*192]+24; row = 9-jnorm[ch-4*192] + 16;
902 col = inorm[ch-5*192] + 24; row = jnorm[ch-5*192] + 8;
906 col = inorm[ch-6*192]; row = jnorm[ch-6*192] + 8;
910 col = 25 - inorm[ch-7*192]; row = 9-jnorm[ch-7*192];
914 col = 25 - inorm[ch-8*192]+24; row = 9-jnorm[ch-8*192];
920 void StPmdGeom::chain15(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
926 col = imirr[ch] + 24 + 16; row = jmirr[ch];
929 col = imirr[ch-192] + 24 +16; row = jmirr[ch-192] + 24;
932 col = 9 - imirr[ch-2*192] + 24 + 8; row = 25 - jmirr[ch-2*192] +24;
935 col = 9 - imirr[ch-3*192] + 24 + 8; row = 25 - jmirr[ch-3*192];
938 col = imirr[ch-4*192] + 24; row = jmirr[ch-4*192];
941 col = imirr[ch-5*192] + 24; row = jmirr[ch-5*192] + 24;
944 col = imirr[ch-6*192] + 16; row = jmirr[ch-6*192] + 24;
947 col = 9 - imirr[ch-7*192] + 8; row = 25 - jmirr[ch-7*192] +24;
950 col = imirr[ch-8*192]; row = jmirr[ch-8*192] + 24;
954 void StPmdGeom:: chain17(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
960 col = imirr[ch] + 16; row = jmirr[ch];
963 col = 9 - imirr[ch-192] + 8; row = 25 - jmirr[ch-192];
966 col = imirr[ch-2*192]; row = jmirr[ch-2*192];
969 col = inorm[ch-3*192] + 48; row = jnorm[ch-3*192] + 24;
973 col = inorm[ch-4*192] + 24; row = jnorm[ch-4*192] + 24;
977 col = 25 - inorm[ch-5*192] + 24; row = 9 - jnorm[ch-5*192] +24 + 8;
981 col = 25 - inorm[ch-6*192] + 48; row = 9 - jnorm[ch-6*192] +24 + 8;
985 col = inorm[ch-7*192] + 48; row = jnorm[ch-7*192] + 24 + 16;
989 col = inorm[ch-8*192] + 24; row = jnorm[ch-8*192] + 24 + 16;
995 void StPmdGeom::chain21(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1001 col = imirr[ch] + 16; row = jmirr[ch];
1004 col = imirr[ch-192] +16; row = jmirr[ch-192] + 24;
1007 col = 9 - imirr[ch-2*192] + 8; row = 25 - jmirr[ch-2*192] +24;
1010 col = 9 - imirr[ch-3*192] + 8; row = 25 - jmirr[ch-3*192];
1013 col = imirr[ch-4*192] ; row = jmirr[ch-4*192];
1016 col = imirr[ch-5*192]; row = jmirr[ch-5*192] + 24;
1019 col = 9 - imirr[ch-6*192]; row = 25 -jmirr[ch-6*192] + 48;
1023 col = imirr[ch-7*192] + 8; row = jmirr[ch-7*192] + 48;
1027 col = 9 - imirr[ch-8*192]+ 16; row = 25 -jmirr[ch-8*192] + 48;
1032 void StPmdGeom::chain22(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1038 col = inorm[ch]; row = jnorm[ch] + 24;
1041 col = 25 - inorm[ch-192]; row = 9 - jnorm[ch-192] +24 + 8;
1044 col = inorm[ch-2*192]; row = jnorm[ch-2*192] + 24 +16;
1047 col = 9 - imirr[ch-3*192]+48; row = 25 -jmirr[ch-3*192] + 48;
1051 col = 9 - imirr[ch-4*192]+48; row = 25 -jmirr[ch-4*192] + 24;
1055 col = imirr[ch-5*192] +48+ 8; row = jmirr[ch-5*192] + 24;
1059 col = imirr[ch-6*192] + 48 + 8; row = jmirr[ch-6*192] + 48;
1063 col = 9 - imirr[ch-7*192]+48 + 16; row = 25 -jmirr[ch-7*192] + 48;
1067 col = 9 - imirr[ch-8*192]+48 + 16; row = 25 -jmirr[ch-8*192] + 24;
1072 void StPmdGeom::chain23(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1078 col = 9 - imirr[ch]+ 24; row = 25 -jmirr[ch] + 48;
1081 col = 9 - imirr[ch-192]+ 24; row = 25 -jmirr[ch-192] + 24;
1084 col = imirr[ch-2*192] +24+ 8; row = jmirr[ch-2*192] + 24;
1087 col = imirr[ch-3*192] +24+ 8; row = jmirr[ch-3*192] + 48;
1090 col = 9 - imirr[ch-4*192]+ 24 +16; row = 25 -jmirr[ch-4*192] + 48;
1093 col = 9 - imirr[ch-5*192]+ 24 +16; row = 25 -jmirr[ch-5*192] + 24;
1096 col = 9 - imirr[ch-6*192]+ 48; row = 25 -jmirr[ch-6*192];
1099 col = imirr[ch-7*192] +48+ 8; row = jmirr[ch-7*192];
1102 col = 9 - imirr[ch-8*192]+ 48 +16; row = 25 -jmirr[ch-8*192];
1106 void StPmdGeom::chain34(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1112 col = 73 - jmirr[ch]; row = 9 - imirr[ch] +48;
1115 col = 48 + jmirr[ch-192]; row = 48 + imirr[ch-192] +8;
1118 col = 73 - jmirr[ch-2*192]; row = 9- imirr[ch-2*192] +48 +16;
1121 col = jmirr[ch-3*192]; row = imirr[ch-3*192] + 16;
1125 col = jmirr[ch-4*192] + 24; row = imirr[ch-4*192] +16;
1129 col = 49 - jmirr[ch-5*192]; row = 9 - imirr[ch-5*192] + 8;
1133 col = 25 - jmirr[ch-6*192]; row = 9 - imirr[ch-6*192] + 8;
1137 col = jmirr[ch-7*192]; row = imirr[ch-7*192];
1141 col = jmirr[ch-8*192]+24; row = imirr[ch-8*192];
1147 void StPmdGeom::chain39(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1153 col = inorm[ch] + 24; row = jnorm[ch];
1156 col = inorm[ch-192]; row = jnorm[ch-192];
1159 col = 25 - inorm[ch-2*192]; row = 9 - jnorm[ch-2*192] + 8;
1162 col = 25 - inorm[ch-3*192] + 24; row = 9 - jnorm[ch-3*192] + 8;
1165 col = inorm[ch-4*192] + 24; row = jnorm[ch - 4*192] + 16;
1168 col = inorm[ch-5*192]; row = jnorm[ch-5*192] + 16;
1171 col = inorm[ch-6*192]; row = jnorm[ch-6*192] + 24;
1174 col = 25 - inorm[ch-7*192]; row = 9 - jnorm[ch-7*192] + 24 + 8;
1177 col = inorm[ch-8*192]; row = jnorm[ch-8*192] + 24 + 16;
1182 void StPmdGeom::chain41(
int& ch,
int& supmod,
int& col,
int& row)
1188 col = inorm[ch] + 24; row = jnorm[ch] + 24;
1191 col = 25 - inorm[ch-192] + 24; row = 9 - jnorm[ch-192] + 24 + 8;
1194 col = inorm[ch-2*192] + 24; row = jnorm[ch-2*192] + 24 + 16;
1197 col = imirr[ch-3*192] + 16; row = jmirr[ch-3*192];
1201 col = imirr[ch-4*192] + 16; row = jmirr[ch-4*192] + 24;
1205 col = 9 - imirr[ch-5*192] + 8; row = 25 - jmirr[ch-5*192] + 24;
1209 col = 9 - imirr[ch-6*192] + 8; row = 25 - jmirr[ch-6*192];
1213 col = imirr[ch-7*192]; row = jmirr[ch-7*192];
1217 col = imirr[ch-8*192] ; row = jmirr[ch-8*192] + 24;
1223 void StPmdGeom::chain45(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1229 col = 25 - jnorm[ch]; row = 25 - inorm[ch];
1232 col = 25 - jnorm[ch-192]; row = 25 - inorm[ch-192] + 24;
1235 col = jnorm[ch-2*192] +8;row = inorm[ch-2*192]+24;
1238 col = jnorm[ch-3*192] +8;row = inorm[ch-3*192];
1241 col = 9 - jnorm[ch-4*192] ; row = 25 - inorm[ch-4*192];
1244 col = 9 - jnorm[ch-5*192] ; row = 25 - inorm[ch-5*192]+ 24;
1247 col = jnorm[ch-6*192]; row = 48 + inorm[ch-6*192];
1251 col = 9 - jnorm[ch-7*192] + 8; row = 73 - inorm[ch-7*192];
1255 col = jnorm[ch-8*192] + 16; row = 48 + inorm[ch-8*192];
1261 void StPmdGeom::chain46(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row)
1267 col = imirr[ch] + 16; row = jmirr[ch] + 48;
1270 col = 9 - imirr[ch-192] + 8; row = 25 - jmirr[ch-192] + 48;
1273 col = imirr[ch-2*192]; row = jmirr[ch-2*192] + 48;
1276 col = 48 + jnorm[ch-3*192]; row = 48 + inorm[ch-3*192];
1280 col = 48 + jnorm[ch-4*192]; row = 24 + inorm[ch-4*192];
1284 col = 9 - jnorm[ch-5*192] + 56; row = 49 - inorm[ch-5*192];
1288 col = 9 - jnorm[ch-6*192] + 56; row = 73 - inorm[ch-6*192];
1292 col = jnorm[ch-7*192] + 64; row = 48 + inorm[ch-7*192];
1296 col = jnorm[ch-8*192] + 64; row = 24 + inorm[ch-8*192];
1301 void StPmdGeom::ADC2Edep(Int_t ADC, Float_t& Edep)
1303 const Float_t Coeff[4] = {-0.7802, 0.09678, -3.054e-05, 0.0};
1306 Edep = Coeff[0] + Coeff[1]*ADC + Coeff[2]*pow(Float_t(ADC),2) + Coeff[3]*pow(Float_t(ADC),3);
1309 void StPmdGeom::readBoardDetail()
1312 for(Int_t i=0;i<48;i++){
1314 for(Int_t ib=0;ib<36;ib++){
1320 void StPmdGeom::readBoardDetail(Int_t runno1)
1326 Int_t alive_stat[48];
1327 for(Int_t i=0;i<48;i++){alive_stat[i]=0;}
1328 for(Int_t i=0;i<48;i++){
1330 for(Int_t ib=0;ib<36;ib++){
1332 if (ib>=27) {status[i][ib]=0;}
1333 alive_stat[i]=alive_stat[i]+status[i][ib];
1356 GetRunYear(runno1,rn,year);
1368 for(Int_t i=3;i<6;i++)status[0][i]=0;
1369 for(Int_t i=12;i<18;i++)status[0][i]=0;
1373 status[3][22]=0; status[3][25]=0; status[3][26]=0;
1375 status[5][1]=0;
for(Int_t i=24;i<27;i++)status[5][i]=0;
1377 status[6][24]=0;
for(Int_t i=6;i<9;i++)status[6][i]=0;
1379 for(Int_t i=0;i<27;i++)status[7][i]=0;
1383 for(Int_t i=0;i<27;i++)status[9][i]=0;
1385 for(Int_t i=0;i<27;i++)status[10][i]=0;
1387 for(Int_t i=0;i<9;i++)status[11][i]=0;
1389 for(Int_t i=0;i<9;i++)status[12][i]=0;
1391 for(Int_t i=0;i<27;i++)status[13][i]=0;
1393 for(Int_t i=0;i<27;i++)status[14][i]=0;
1395 for(Int_t i=0;i<27;i++)status[15][i]=0;
1397 for(Int_t i=0;i<9;i++)status[16][i]=0;
1399 for(Int_t i=6;i<12;i++)status[17][i]=0;
1400 for(Int_t i=24;i<27;i++)status[17][i]=0;
1402 for(Int_t i=3;i<6;i++)status[19][i]=0;
1403 for(Int_t i=21;i<24;i++)status[19][i]=0;
1412 status[23][6]=0;status[23][24]=0;
1418 status[38][24]=0;status[38][25]=0;
1439 for(Int_t i=18;i<27;i++)status[44][i]=0;
1441 for(Int_t i=3;i<6;i++)status[45][i]=0;
1442 for(Int_t i=9;i<27;i++)status[45][i]=0;
1453 for(Int_t i=18;i<27;i++)status[44][i]=1;
1456 for(Int_t i=9;i<27;i++)status[45][i]=1;
1465 for(Int_t i=0;i<21;i++)status[0][i]=0;
1468 status[1][19]=1;status[1][9]=0;
1470 status[2][3]=0;status[2][6]=0;
1471 status[2][7]=0;status[2][8]=0;
1472 status[2][10]=0;status[2][13]=0;
1474 status[3][25]=1; status[3][26]=1;
1475 status[3][13]=0; status[3][15]=0;
1476 status[3][18]=0; status[3][19]=0;
1477 status[3][20]=0; status[3][22]=0;
1480 status[4][2]=0; status[4][17]=0;
1483 for(Int_t i=21;i<27;i++)status[5][i]=0;
1487 for(Int_t i=2;i<4;i++)status[6][i]=0;
1489 for(Int_t i=17;i<21;i++)status[6][i]=0;
1494 status[8][9]=0; status[8][11]=0;
1496 status[11][14]=0; status[11][26]=0;
1498 for(Int_t i=5;i<13;i++)status[17][i]=0;
1499 status[17][14]=0; status[17][18]=0;
1500 status[17][21]=0; status[17][22]=0;
1501 for(Int_t i=24;i<27;i++)status[17][i]=0;
1503 status[18][1]=0; status[18][6]=0;
1505 for(Int_t i=24;i<27;i++)status[18][i]=0;
1509 status[20][2]=0; status[20][8]=0;
1510 status[20][9]=0; status[20][18]=0;
1511 status[20][20]=0; status[20][24]=0;
1516 status[28][23]=0; status[28][24]=0;
1521 status[44][3]=0; status[44][4]=0;
1524 for(Int_t i=3;i<6;i++)status[45][i]=1;
1575 status[44][6]=0;status[44][11]=0;
1577 status[46][8]=0;status[46][16]=0;
1579 status[47][11]=0;status[47][19]=0;
1586 if( rn >=1 && year==6)
1589 for(Int_t i=3;i<9;i++)status[0][i]=0;
1590 for(Int_t i=24;i<27;i++)status[0][i]=0;
1594 status[2][4]=0;status[2][6]=0;
1597 for(Int_t i=19;i<22;i++)status[3][i]=0;
1602 for(Int_t i=0;i<27;i++)status[5][i]=0;
1604 status[6][0]=0;status[6][5]=0;
1605 for(Int_t i=12;i<14;i++)status[6][i]=0;
1606 for(Int_t i=21;i<23;i++)status[6][i]=0;
1608 status[7][3]=0;status[7][23]=0;
1609 for(Int_t i=10;i<14;i++)status[7][i]=0;
1610 for(Int_t i=25;i<26;i++)status[7][i]=0;
1612 status[8][0]=0;status[8][7]=0;
1613 status[8][19]=0;status[8][25]=0;status[8][26]=0;
1615 status[9][5]=0; status[9][8]=0; status[9][22]=0;
1617 status[10][0]=0;status[10][7]=0;
1618 for(Int_t i=12;i<14;i++)status[10][i]=0;
1619 for(Int_t i=22;i<27;i++)status[10][i]=0;
1621 for(Int_t i=4;i<7;i++)status[11][i]=0;
1623 for(Int_t i=12;i<14;i++)status[11][i]=0;
1624 for(Int_t i=18;i<27;i++)status[11][i]=0;
1627 for(Int_t i=10;i<12;i++)status[12][i]=0;
1628 status[12][15]=0;status[12][23]=0;status[12][24]=0;status[12][26]=0;
1630 for(Int_t i=0;i<27;i++)status[13][i]=0;
1632 for(Int_t i=18;i<27;i++)status[14][i]=0;
1634 for(Int_t i=12;i<14;i++)status[15][i]=0;
1635 for(Int_t i=18;i<27;i++)status[15][i]=0;
1637 status[16][0]=0; status[16][17]=0; status[16][19]=0;
1638 status[16][20]=0; status[16][25]=0;status[16][26]=0;
1640 for(Int_t i=0;i<27;i++)status[17][i]=0;
1642 status[18][1]=0; status[18][6]=0; status[18][12]=0;
1643 for(Int_t i=18;i<21;i++)status[18][i]=0;
1644 for(Int_t i=24;i<27;i++)status[18][i]=0;
1646 for(Int_t i=0;i<27;i++)status[19][i]=0;
1648 status[20][0]=0; status[20][6]=0; status[20][7]=0;
1649 for(Int_t i=10;i<16;i++)status[20][i]=0;
1650 status[20][20]=0; status[20][26]=0;
1652 for(Int_t i=0;i<27;i++)status[21][i]=0;
1654 for(Int_t i=1;i<3;i++)status[22][i]=0;
1657 for(Int_t i=6;i<8;i++)status[23][i]=0;
1659 for(Int_t i=23;i<27;i++)status[23][i]=0;
1661 for(Int_t i=5;i<7;i++)status[24][i]=0;
1662 for(Int_t i=11;i<14;i++)status[24][i]=0;
1663 for(Int_t i=15;i<17;i++)status[24][i]=0;
1666 for(Int_t i=15;i<18;i++)status[25][i]=0;
1668 for(Int_t i=1;i<3;i++)status[26][i]=0;
1672 status[28][10]=0;status[28][24]=0;
1674 for(Int_t i=0;i<3;i++)status[29][i]=0;
1675 for(Int_t i=15;i<21;i++)status[29][i]=0;
1677 for(Int_t i=18;i<23;i++)status[30][i]=0;
1680 for(Int_t i=10;i<12;i++)status[32][i]=0;
1681 for(Int_t i=17;i<19;i++)status[32][i]=0;
1682 for(Int_t i=24;i<27;i++)status[32][i]=0;
1686 for(Int_t i=0;i<3;i++)status[34][i]=0;
1690 status[36][2]=0; status[36][12]=0;
1691 for(Int_t i=6;i<8;i++)status[36][i]=0;
1692 for(Int_t i=15;i<17;i++)status[36][i]=0;
1695 for(Int_t i=20;i<22;i++)status[37][i]=0;
1699 status[39][2]=0; status[39][10]=0; status[39][20]=0;
1700 for(Int_t i=6;i<8;i++)status[39][i]=0;
1701 for(Int_t i=24;i<27;i++)status[39][i]=0;
1704 for(Int_t i=9;i<11;i++)status[40][i]=0;
1705 for(Int_t i=13;i<15;i++)status[40][i]=0;
1711 status[44][3]=0;status[44][6]=0;
1712 for(Int_t i=12;i<18;i++)status[44][i]=0;
1713 for(Int_t i=18;i<27;i++)status[44][i]=0;
1715 for(Int_t i=9;i<27;i++)status[45][i]=0;
1717 for(Int_t i=0;i<4;i++)status[46][i]=0;
1718 for(Int_t i=6;i<9;i++)status[46][i]=0;
1719 status[46][10]=0;status[46][15]=0;status[46][17]=0;status[46][24]=0;
1721 status[47][0]=0;status[47][5]=0;status[47][11]=0;
1722 for(Int_t i=14;i<16;i++)status[47][i]=0;
1723 for(Int_t i=17;i<19;i++)status[47][i]=0;
1724 for(Int_t i=24;i<27;i++)status[47][i]=0;
1727 if(rn >=1 && year==8){
1732 for(Int_t i=0;i<48;i++){
1733 for(Int_t ib=27;ib<36;ib++){
1734 if (i==0 || i==6 || i==18 || i==19 || i==22 || i==23){
1743 for(Int_t i=0;i<9;i++)status[0][i]=0;
1744 for(Int_t i=12;i<18;i++)status[0][i]=0;
1745 for(Int_t i=33;i<36;i++)status[0][i]=0;
1754 for(Int_t i=19;i<22;i++)status[3][i]=0;
1766 for(Int_t i=22;i<32;i++)status[6][i]=0;
1769 for(Int_t i=10;i<14;i++)status[7][i]=0;
1788 for(Int_t i=22;i<27;i++)status[10][i]=0;
1790 for(Int_t i=4;i<7;i++)status[11][i]=0;
1794 for(Int_t i=18;i<27;i++)status[11][i]=0;
1806 for(Int_t i=24;i<27;i++)status[14][i]=0;
1813 for(Int_t i=3;i<6;i++)status[18][i]=0;
1815 for(Int_t i=15;i<18;i++)status[18][i]=0;
1819 for(Int_t i=0;i<3;i++)status[19][i]=0;
1820 for(Int_t i=6;i<10;i++)status[19][i]=0;
1821 for(Int_t i=14;i<18;i++)status[19][i]=0;
1830 for(Int_t i=18;i<25;i++)status[22][i]=0;
1837 for(Int_t i=22;i<30;i++)status[23][i]=0;
1841 for(Int_t i=11;i<14;i++)status[24][i]=0;
1855 for(Int_t i=0;i<3;i++)status[29][i]=0;
1857 for(Int_t i=15;i<21;i++)status[29][i]=0;
1859 for(Int_t i=18;i<23;i++)status[30][i]=0;
1867 for(Int_t i=23;i<27;i++)status[32][i]=0;
1877 for(Int_t i=6;i<9;i++)status[36][i]=0;
1879 for(Int_t i=14;i<17;i++)status[36][i]=0;
1893 for(Int_t i=24;i<27;i++)status[39][i]=0;
1907 for(Int_t i=10;i<27;i++)status[44][i]=0;
1920 if(rn>101&&year==8){
1932 if(rn>114&&year==8){
1945 if(rn>300 && year==8){
1960 if(rn >=1 && (year==10||year==11||year==12)){
1965 for(Int_t i=0;i<48;i++){
1966 for(Int_t ib=27;ib<36;ib++){
1967 if (i==7 || i==11 || i==22 || i==23){
1976 for(Int_t brd = 0;brd<=2;brd++){
1979 for(Int_t brd = 6;brd<=8;brd++){
1982 for(Int_t brd = 24;brd<=26;brd++){
2004 for(Int_t brd=19;brd<=22;brd++){
2022 for(Int_t brd=22;brd<=24;brd++){
2031 for(Int_t brd=18;brd<=20;brd++){
2045 for(Int_t brd = 11;brd<=14;brd++){
2051 for(Int_t brd = 18;brd <=24;brd++){
2060 for(Int_t i=23;i<=30;i++){status[23][i]=0;}
2072 for(Int_t brd = 3;brd<=5;brd++){
2075 for(Int_t brd = 12;brd<=14;brd++){
2078 for(Int_t brd = 21;brd<=23;brd++){
2106 for(Int_t brd=24;brd<=26;brd++){
2120 for(Int_t brd = 10;brd<=26;brd++){
2134 if(rn>48 && (year==10||year==11)){
2139 if(rn>84 && (year==10||year==11)){
2145 if(rn>96 && (year==10||year==11)){
2148 for(Int_t brd = 6;brd<12;brd++){
2159 for(Int_t i=0;i<48;i++){
2160 for(Int_t ib=0;ib<36;ib++){
2161 alive_stat[i]=alive_stat[i]+status[i][ib];
2168 Int_t StPmdGeom::ChainMapping(Int_t& chainno,Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t&chmod,Int_t year)
2176 Int_t chain = chainno;
2178 Int_t brd=Int_t((ch)/64)+1;
2183 for(Int_t ibrd=0;ibrd<36;ibrd++){
2185 if(status[chainno-1][ibrd]==0){missing++;}
2186 brdCount+=status[chainno-1][ibrd];
2189 chtemp=ch+missing*64;
2194 if(chain==1 || chain==7 || chain==19 || chain==20 || chain==23 || chain==24) {
2196 if( chtemp>=2304){
return kStWarn;}
2205 if(chain==6 || chain==17 || chain == 21 ){
return kStWarn;}
2207 if(year==10||year==11||year==12){
2209 if(chain==8||chain==12||chain==23||chain==24){
2210 if(chtemp>=2304){
return kStWarn;}
2212 if(chtemp>=1728){
return kStWarn;}
2214 if(chain==6||chain==21){
return kStWarn;}
2217 if(chtemp>=1728){
return kStWarn;}
2225 chain1(chtemp,supmod,col,row,year);
2228 chain2(chtemp,supmod,col,row,year);
2231 chain3(chtemp,supmod,col,row,year);
2234 chain4(chtemp,supmod,col,row,year);
2237 chain5(chtemp,supmod,col,row,year);
2240 chain6(chtemp,supmod,col,row,year);
2243 chain7(chtemp,supmod,col,row,year);
2246 chain8(chtemp,supmod,col,row,year);
2249 chain9(chtemp,supmod,col,row,year);
2252 chain10(chtemp,supmod,col,row,year);
2255 chain11(chtemp,supmod,col,row,year);
2258 chain12(chtemp,supmod,col,row,year);
2261 chain13(chtemp,supmod,col,row,year);
2264 chain14(chtemp,supmod,col,row,year);
2267 chain15(chtemp,supmod,col,row,year);
2270 chain16(chtemp,supmod,col,row,year);
2273 chain17(chtemp,supmod,col,row,year);
2276 chain18(chtemp,supmod,col,row,year);
2279 chain19(chtemp,supmod,col,row,year);
2282 chain20(chtemp,supmod,col,row,year);
2285 chain21(chtemp,supmod,col,row,year);
2288 chain22(chtemp,supmod,col,row,year);
2291 chain23(chtemp,supmod,col,row,year);
2294 chain24(chtemp,supmod,col,row,year);
2297 chain25(chtemp,supmod,col,row,year);
2300 chain26(chtemp,supmod,col,row,year);
2303 chain27(chtemp,supmod,col,row,year);
2306 chain28(chtemp,supmod,col,row,year);
2309 chain29(chtemp,supmod,col,row,year);
2312 chain30(chtemp,supmod,col,row,year);
2315 chain31(chtemp,supmod,col,row,year);
2318 chain32(chtemp,supmod,col,row,year);
2321 chain33(chtemp,supmod,col,row,year);
2324 chain34(chtemp,supmod,col,row,year);
2327 chain35(chtemp,supmod,col,row,year);
2330 chain36(chtemp,supmod,col,row,year);
2333 chain37(chtemp,supmod,col,row,year);
2336 chain38(chtemp,supmod,col,row,year);
2339 chain39(chtemp,supmod,col,row,year);
2342 chain40(chtemp,supmod,col,row,year);
2345 chain41(chtemp,supmod,col,row,year);
2348 chain42(chtemp,supmod,col,row,year);
2351 chain43(chtemp,supmod,col,row,year);
2354 chain44(chtemp,supmod,col,row,year);
2357 chain45(chtemp,supmod,col,row,year);
2360 chain46(chtemp,supmod,col,row,year);
2363 chain47(chtemp,supmod,col,row,year);
2366 chain48(chtemp,supmod,col,row,year);
2369 if(supmod<=0 || col<=0 || row<=0){
2379 void StPmdGeom::chain1(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
2381 Int_t zone = ch/192;
2431 col = inorm[ch]; row = 8 + jnorm[ch];
2435 col = 25 - inorm[ch-192]; row = 25 - jnorm[ch-192];
2439 col = 49 - inorm[ch-2*192]; row = 25 - jnorm[ch-2*192];
2443 col = 24 + inorm[ch-3*192]; row = 24 + jnorm[ch-3*192];
2447 col = inorm[ch-4*192]; row = 24 + jnorm[ch-4*192];
2451 col = 25 - inorm[ch-5*192]; row = 41 - jnorm[ch-5*192];
2455 col = 49 - inorm[ch-6*192]; row = 41 - jnorm[ch-6*192];
2459 col = 24 + inorm[ch-7*192]; row = 40 + jnorm[ch-7*192];
2463 col = inorm[ch-8*192]; row = 40 + jnorm[ch-8*192];
2474 col = 25 - inorm[ch]; row = 9 - jnorm[ch];
2478 col = 49 - inorm[ch-192]; row = 9 - jnorm[ch-192];
2482 col = 24 + inorm[ch-2*192]; row = 8 + jnorm[ch-2*192];
2486 col = inorm[ch-3*192]; row = 8 + jnorm[ch-3*192];
2490 col = 25 - inorm[ch-4*192]; row = 25 - jnorm[ch-4*192];
2494 col = 49 - inorm[ch-5*192]; row = 25 - jnorm[ch-5*192];
2498 col = 24 + inorm[ch-6*192]; row = 24 + jnorm[ch-6*192];
2502 col = inorm[ch-7*192]; row = 24 + jnorm[ch-7*192];
2506 col = 25 - inorm[ch-8*192]; row = 41 - jnorm[ch-8*192];
2510 col = 49 - inorm[ch-9*192]; row = 41 - jnorm[ch-9*192];
2514 col = 24 + inorm[ch-10*192]; row = 40 + jnorm[ch-10*192];
2518 col = inorm[ch-11*192]; row = 40 + jnorm[ch-11*192];
2530 col = 25 - inorm[ch];
2531 row = 9 - jnorm[ch];
2535 col = inorm[ch-192];
2536 row = 8 + jnorm[ch-192];
2540 col = 25 - inorm[ch-2*192];
2541 row = 25 - jnorm[ch-2*192];
2545 col = 25 - inorm[ch-3*192];
2546 row = 33 - jnorm[ch-3*192];
2550 col = 49 - inorm[ch-4*192];
2551 row = 33 -jnorm[ch-4*192];
2555 col = 24 + inorm[ch-5*192];
2556 row = 32 + jnorm[ch-5*192];
2560 col = inorm[ch-6*192];
2561 row = 32 + jnorm[ch-6*192];
2565 col = 25 - inorm[ch-7*192];
2566 row = 49 - jnorm[ch-7*192];
2570 col = 49 - inorm[ch-8*192];
2571 row = 49 - jnorm[ch-8*192];
2579 void StPmdGeom::chain2(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
2581 Int_t zone = ch/192;
2588 col = 48 + inorm[ch];
2593 col = 24 + inorm[ch-192];
2594 row = jnorm[ch-192];
2598 col = inorm[ch-2*192];
2599 row = jnorm[ch-2*192];
2603 col = 25 - inorm[ch-3*192];
2604 row = 17 - jnorm[ch-3*192];
2608 col = 49 - inorm[ch-4*192];
2609 row = 17 - jnorm[ch-4*192];
2613 col = 73 - inorm[ch-5*192];
2614 row = 17 - jnorm[ch-5*192];
2618 col = 48 + inorm[ch-6*192];
2619 row = 16 + jnorm[ch-6*192];
2623 col = 24 + inorm[ch-7*192];
2624 row = 16 + jnorm[ch-7*192];
2628 col = inorm[ch-8*192];
2629 row = 16 + jnorm[ch-8*192];
2641 col = 48 + inorm[ch];
2646 col = 24 + inorm[ch-192];
2647 row = jnorm[ch-192];
2651 col = inorm[ch-2*192];
2652 row = jnorm[ch-2*192];
2656 col = 25 - inorm[ch-3*192];
2657 row = 17 - jnorm[ch-3*192];
2661 col = 49 - inorm[ch-4*192];
2662 row = 17 - jnorm[ch-4*192];
2666 col = 73 - inorm[ch-5*192];
2667 row = 17 - jnorm[ch-5*192];
2671 col = 48 + inorm[ch-6*192];
2672 row = 16 + jnorm[ch-6*192];
2676 col = 24 + inorm[ch-7*192];
2677 row = 16 + jnorm[ch-7*192];
2681 col = inorm[ch-8*192];
2682 row = 16 + jnorm[ch-8*192];
2690 void StPmdGeom::chain3(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
2692 Int_t zone = ch/192;
2699 col = 16 + imirr[ch];
2704 col = 16 + imirr[ch-192];
2705 row = 24 + jmirr[ch-192];
2709 col = 16 + imirr[ch-2*192];
2710 row = 48 + jmirr[ch-2*192];
2714 col = 17 - imirr[ch-3*192];
2715 row = 73 - jmirr[ch-3*192];
2719 col = 17 - imirr[ch-4*192];
2720 row = 49 - jmirr[ch-4*192];
2724 col = 17 - imirr[ch-5*192];
2725 row = 25 - jmirr[ch-5*192];
2729 col = imirr[ch-6*192];
2730 row = jmirr[ch-6*192];
2734 col = imirr[ch-7*192];
2735 row = 24 + jmirr[ch-7*192];
2739 col = imirr[ch-8*192];
2740 row = 48 + jmirr[ch-8*192];
2752 col = 16 + imirr[ch];
2757 col = 16 + imirr[ch-192];
2758 row = 24 + jmirr[ch-192];
2762 col = 16 + imirr[ch-2*192];
2763 row = 48 + jmirr[ch-2*192];
2767 col = 17 - imirr[ch-3*192];
2768 row = 73 - jmirr[ch-3*192];
2772 col = 17 - imirr[ch-4*192];
2773 row = 49 - jmirr[ch-4*192];
2777 col = 17 - imirr[ch-5*192];
2778 row = 25 - jmirr[ch-5*192];
2782 col = imirr[ch-6*192];
2783 row = jmirr[ch-6*192];
2787 col = imirr[ch-7*192];
2788 row = 24 + jmirr[ch-7*192];
2792 col = imirr[ch-8*192];
2793 row = 48 + jmirr[ch-8*192];
2800 void StPmdGeom::chain4(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
2803 Int_t zone = ch/192;
2810 col = 48 + inorm[ch];
2811 row = 24 + jnorm[ch];
2815 col = 24 + inorm[ch-192];
2816 row = 24 + jnorm[ch-192];
2820 col = inorm[ch-2*192];
2821 row = 24 + jnorm[ch-2*192];
2825 col = 25 - inorm[ch-3*192];
2826 row = 41 - jnorm[ch-3*192];
2830 col = 49 - inorm[ch-4*192];
2831 row = 41 - jnorm[ch-4*192];
2835 col = 73 - inorm[ch-5*192];
2836 row = 41 - jnorm[ch-5*192];
2840 col = 48 + inorm[ch-6*192];
2841 row = 40 + jnorm[ch-6*192];
2845 col = 24 + inorm[ch-7*192];
2846 row = 40 + jnorm[ch-7*192];
2850 col = inorm[ch-8*192];
2851 row = 40 + jnorm[ch-8*192];
2863 col = 48 + inorm[ch];
2864 row = 24 + jnorm[ch];
2868 col = 24 + inorm[ch-192];
2869 row = 24 + jnorm[ch-192];
2873 col = inorm[ch-2*192];
2874 row = 24 + jnorm[ch-2*192];
2878 col = 25 - inorm[ch-3*192];
2879 row = 41 - jnorm[ch-3*192];
2883 col = 49 - inorm[ch-4*192];
2884 row = 41 - jnorm[ch-4*192];
2888 col = 73 - inorm[ch-5*192];
2889 row = 41 - jnorm[ch-5*192];
2893 col = 48 + inorm[ch-6*192];
2894 row = 40 + jnorm[ch-6*192];
2898 col = 24 + inorm[ch-7*192];
2899 row = 40 + jnorm[ch-7*192];
2903 col = inorm[ch-8*192];
2904 row = 40 + jnorm[ch-8*192];
2911 void StPmdGeom::chain5(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
2913 Int_t zone = ch/192;
2920 col = 40 + imirr[ch];
2925 col = 40 + imirr[ch-192];
2926 row = 24 + jmirr[ch-192];
2930 col = 40 + imirr[ch-2*192];
2931 row = 48 + jmirr[ch-2*192];
2935 col = 41 - imirr[ch-3*192];
2936 row = 73 - jmirr[ch-3*192];
2940 col = 41 - imirr[ch-4*192];
2941 row = 49 - jmirr[ch-4*192];
2945 col = 41 - imirr[ch-5*192];
2946 row = 25 - jmirr[ch-5*192];
2950 col = 24 + imirr[ch-6*192];
2951 row = jmirr[ch-6*192];
2955 col = 24 + imirr[ch-7*192];
2956 row = 24 + jmirr[ch-7*192];
2960 col = 24 + imirr[ch-8*192];
2961 row = 48 + jmirr[ch-8*192];
2973 col = 40 + imirr[ch];
2978 col = 40 + imirr[ch-192];
2979 row = 24 + jmirr[ch-192];
2983 col = 40 + imirr[ch-2*192];
2984 row = 48 + jmirr[ch-2*192];
2988 col = 41 - imirr[ch-3*192];
2989 row = 73 - jmirr[ch-3*192];
2993 col = 41 - imirr[ch-4*192];
2994 row = 49 - jmirr[ch-4*192];
2998 col = 41 - imirr[ch-5*192];
2999 row = 25 - jmirr[ch-5*192];
3003 col = 24 + imirr[ch-6*192];
3004 row = jmirr[ch-6*192];
3008 col = 24 + imirr[ch-7*192];
3009 row = 24 + jmirr[ch-7*192];
3013 col = 24 + imirr[ch-8*192];
3014 row = 48 + jmirr[ch-8*192];
3021 void StPmdGeom::chain6(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3027 void StPmdGeom::chain7(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3029 Int_t zone = ch/192;
3036 col = 48 + inorm[ch];
3041 col = 24 + inorm[ch-192];
3042 row = jnorm[ch-192];
3046 col = inorm[ch-2*192];
3047 row = jnorm[ch-2*192];
3051 col = 25 - inorm[ch-3*192];
3052 row = 17 - jnorm[ch-3*192];
3056 col = 49 - inorm[ch-4*192];
3057 row = 17 - jnorm[ch-4*192];
3061 col = 73 - inorm[ch-5*192];
3062 row = 17 - jnorm[ch-5*192];
3066 col = 40 + inorm[ch-6*192];
3067 row = 16 + jnorm[ch-6*192];
3071 col = 24 + inorm[ch-7*192];
3072 row = 24 + jnorm[ch-7*192];
3076 col = inorm[ch-8*192];
3077 row = 24 + jnorm[ch-8*192];
3087 col = 48 + inorm[ch];
3092 col = 24 + inorm[ch-192];
3093 row = jnorm[ch-192];
3097 col = inorm[ch-2*192];
3098 row = jnorm[ch-2*192];
3102 col = 25 - inorm[ch-3*192];
3103 row = 17 - jnorm[ch-3*192];
3107 col = 49 - inorm[ch-4*192];
3108 row = 17 - jnorm[ch-4*192];
3112 col = 73 - inorm[ch-5*192];
3113 row = 17 - jnorm[ch-5*192];
3117 col = 48 + inorm[ch-6*192];
3118 row = 16 + jnorm[ch-6*192];
3122 col = 24 + inorm[ch-7*192];
3123 row = 16 + jnorm[ch-7*192];
3127 col = inorm[ch-8*192];
3128 row = 16 + jnorm[ch-8*192];
3132 col = 48 + inorm[ch-9*192];
3133 row = 24 + jnorm[ch-9*192];
3137 col = 24 + inorm[ch-10*192];
3138 row = 24 + jnorm[ch-10*192];
3142 col = inorm[ch-11*192];
3143 row = 24 + jnorm[ch-11*192];
3154 col = 48 + inorm[ch];
3159 col = 24 + inorm[ch-192];
3160 row = jnorm[ch-192];
3164 col = inorm[ch-2*192];
3165 row = jnorm[ch-2*192];
3169 col = 25 - inorm[ch-3*192];
3170 row = 17 - jnorm[ch-3*192];
3174 col = 49 - inorm[ch-4*192];
3175 row = 17 - jnorm[ch-4*192];
3179 col = 73 - inorm[ch-5*192];
3180 row = 17 - jnorm[ch-5*192];
3184 col = 48 + inorm[ch-6*192];
3185 row = 16 + jnorm[ch-6*192];
3189 col = 24 + inorm[ch-7*192];
3190 row = 16 + jnorm[ch-7*192];
3194 col = inorm[ch-8*192];
3195 row = 16 + jnorm[ch-8*192];
3203 void StPmdGeom::chain8(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3205 Int_t zone = ch/192;
3212 col = 48 + inorm[ch];
3217 col = 24 + inorm[ch-192];
3218 row = jnorm[ch-192];
3222 col = inorm[ch-2*192];
3223 row = jnorm[ch-2*192];
3227 col = 25 - inorm[ch-3*192];
3228 row = 17 - jnorm[ch-3*192];
3232 col = 49 - inorm[ch-4*192];
3233 row = 17 - jnorm[ch-4*192];
3237 col = 73 - inorm[ch-5*192];
3238 row = 17 - jnorm[ch-5*192];
3242 col = 48 + inorm[ch-6*192];
3243 row = 16 + jnorm[ch-6*192];
3247 col = 24 + inorm[ch-7*192];
3248 row = 16 + jnorm[ch-7*192];
3252 col = inorm[ch-8*192];
3253 row = 16 + jnorm[ch-8*192];
3263 col = 48 + inorm[ch];
3268 col = 24 + inorm[ch-192];
3269 row = jnorm[ch-192];
3273 col = inorm[ch-2*192];
3274 row = jnorm[ch-2*192];
3278 col = 25 - inorm[ch-3*192];
3279 row = 17 - jnorm[ch-3*192];
3283 col = 49 - inorm[ch-4*192];
3284 row = 17 - jnorm[ch-4*192];
3288 col = 73 - inorm[ch-5*192];
3289 row = 17 - jnorm[ch-5*192];
3293 col = 48 + inorm[ch-6*192];
3294 row = 16 + jnorm[ch-6*192];
3298 col = 24 + inorm[ch-7*192];
3299 row = 16 + jnorm[ch-7*192];
3303 col = inorm[ch-8*192];
3304 row = 16 + jnorm[ch-8*192];
3315 col = 48 + inorm[ch];
3316 row = 40 + jnorm[ch];
3320 col = 73 - inorm[ch-192];
3321 row = 41 - jnorm[ch-192];
3325 col = 48 + inorm[ch-2*192];
3326 row = 24 + jnorm[ch-2*192];
3330 col = 48 + inorm[ch-3*192];
3331 row = 16 + jnorm[ch-3*192];
3335 col = 24 + inorm[ch-4*192];
3336 row = 16 + jnorm[ch-4*192];
3340 col = inorm[ch-5*192];
3341 row = 16 + jnorm[ch-5*192];
3345 col = 25 - inorm[ch-6*192];
3346 row = 17 - jnorm[ch-6*192];
3350 col = 49 - inorm[ch-7*192];
3351 row = 17 - jnorm[ch-7*192];
3355 col = 73 - inorm[ch-8*192];
3356 row = 17 - jnorm[ch-8*192];
3360 col = 48 + inorm[ch-9*192];
3361 row = jnorm[ch-9*192];
3365 col = 24 + inorm[ch-10*192];
3366 row = jnorm[ch-10*192];
3370 col = inorm[ch-11*192];
3371 row = jnorm[ch-11*192];
3379 void StPmdGeom::chain9(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3381 Int_t zone = ch/192;
3388 col = 48 + inorm[ch];
3389 row = 48 + jnorm[ch];
3393 col = 73 - inorm[ch-192];
3394 row = 65 - jnorm[ch-192];
3398 col = 48 + inorm[ch-2*192];
3399 row = 64 + jnorm[ch-2*192];
3403 col = 25 - inorm[ch-3*192];
3404 row = 25 - jnorm[ch-3*192];
3408 col = 49 - inorm[ch-4*192];
3409 row = 25 - jnorm[ch-4*192];
3413 col = 24 + inorm[ch-5*192];
3414 row = 8 + jnorm[ch-5*192];
3418 col = inorm[ch-6*192];
3419 row = 8 + jnorm[ch-6*192];
3423 col = 25 - inorm[ch-7*192];
3424 row = 9 - jnorm[ch-7*192];
3428 col = 49 - inorm[ch-8*192];
3429 row = 9 - jnorm[ch-8*192];
3439 col = 48 + inorm[ch];
3440 row = 48 + jnorm[ch];
3444 col = 73 - inorm[ch-192];
3445 row = 65 - jnorm[ch-192];
3449 col = 48 + inorm[ch-2*192];
3450 row = 64 + jnorm[ch-2*192];
3454 col = 25 - inorm[ch-3*192];
3455 row = 25 - jnorm[ch-3*192];
3459 col = 49 - inorm[ch-4*192];
3460 row = 25 - jnorm[ch-4*192];
3464 col = 24 + inorm[ch-5*192];
3465 row = 8 + jnorm[ch-5*192];
3469 col = inorm[ch-6*192];
3470 row = 8 + jnorm[ch-6*192];
3474 col = 25 - inorm[ch-7*192];
3475 row = 9 - jnorm[ch-7*192];
3479 col = 49 - inorm[ch-8*192];
3480 row = 9 - jnorm[ch-8*192];
3495 col = 24+inorm[ch-192];
3496 row = 40+jnorm[ch-192];
3500 col = inorm[ch-2*192];
3501 row = 40+jnorm[ch-2*192];
3505 col = 25 - inorm[ch-3*192];
3506 row = 41 - jnorm[ch-3*192];
3510 col = 49 - inorm[ch-4*192];
3511 row = 41 - jnorm[ch-4*192];
3515 col = 73 - inorm[ch-5*192];
3516 row = 41 - jnorm[ch-5*192];
3520 col = 48+inorm[ch-6*192];
3521 row = 24+jnorm[ch-6*192];
3525 col = 24+inorm[ch-7*192];
3526 row = 24+jnorm[ch-7*192];
3530 col = inorm[ch-8*192];
3531 row = 24+jnorm[ch-8*192];
3539 void StPmdGeom::chain10(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3541 Int_t zone = ch/192;
3548 col = 48 + inorm[ch];
3549 row = 24 + jnorm[ch];
3553 col = 24 + inorm[ch-192];
3554 row = 24 + jnorm[ch-192];
3558 col = inorm[ch-2*192];
3559 row = 24 + jnorm[ch-2*192];
3563 col = 25 - inorm[ch-3*192];
3564 row = 41 - jnorm[ch-3*192];
3568 col = 49 - inorm[ch-4*192];
3569 row = 41 - jnorm[ch-4*192];
3573 col = 73 - inorm[ch-5*192];
3574 row = 41 - jnorm[ch-5*192];
3578 col = 48 + inorm[ch-6*192];
3579 row = 40 + jnorm[ch-6*192];
3583 col = 24 + inorm[ch-7*192];
3584 row = 40 + jnorm[ch-7*192];
3588 col = inorm[ch-8*192];
3589 row = 40 + jnorm[ch-8*192];
3599 col = 48 + inorm[ch];
3600 row = 24 + jnorm[ch];
3604 col = 24 + inorm[ch-192];
3605 row = 24 + jnorm[ch-192];
3609 col = inorm[ch-2*192];
3610 row = 24 + jnorm[ch-2*192];
3614 col = 25 - inorm[ch-3*192];
3615 row = 41 - jnorm[ch-3*192];
3619 col = 49 - inorm[ch-4*192];
3620 row = 41 - jnorm[ch-4*192];
3624 col = 73 - inorm[ch-5*192];
3625 row = 41 - jnorm[ch-5*192];
3629 col = 48 + inorm[ch-6*192];
3630 row = 40 + jnorm[ch-6*192];
3634 col = 24 + inorm[ch-7*192];
3635 row = 40 + jnorm[ch-7*192];
3639 col = inorm[ch-8*192];
3640 row = 40 + jnorm[ch-8*192];
3651 col = 24 + inorm[ch];
3652 row = 24 + jnorm[ch];
3656 col = inorm[ch-192];
3657 row = 24 + jnorm[ch-192];
3661 col = 25 - inorm[ch-2*192];
3662 row = 41 - jnorm[ch-2*192];
3666 col = 49 - inorm[ch-3*192];
3667 row = 41 - jnorm[ch-3*192];
3671 col = 24 + inorm[ch-4*192];
3672 row = 40 + jnorm[ch-4*192];
3676 col = inorm[ch-5*192];
3677 row = 40 + jnorm[ch-5*192];
3681 col = 25 - inorm[ch-6*192];
3682 row = 9 - jnorm[ch-6*192];
3686 col = inorm[ch-7*192];
3687 row = 8 + jnorm[ch-7*192];
3691 col = 25 - inorm[ch-8*192];
3692 row = 25 - jnorm[ch-8*192];
3699 void StPmdGeom::chain11(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3701 Int_t zone = ch/192;
3708 col = 24 + inorm[ch];
3709 row = 48 + jnorm[ch];
3713 col = 49 - inorm[ch-192];
3714 row = 65 - jnorm[ch-192];
3718 col = 24 + inorm[ch-2*192];
3719 row = 64 + jnorm[ch-2*192];
3723 col = 25 - inorm[ch-3*192];
3724 row = 49 - jnorm[ch-3*192];
3728 col = 49 - inorm[ch-4*192];
3729 row = 49 - jnorm[ch-4*192];
3733 col = 24 + inorm[ch-5*192];
3734 row = 32 + jnorm[ch-5*192];
3738 col = inorm[ch-6*192];
3739 row = 32 + jnorm[ch-6*192];
3743 col = 25 - inorm[ch-7*192];
3744 row = 33 - jnorm[ch-7*192];
3748 col = 49 - inorm[ch-8*192];
3749 row = 33 - jnorm[ch-8*192];
3759 col = 24 + inorm[ch];
3760 row = 48 + jnorm[ch];
3764 col = 49 - inorm[ch-192];
3765 row = 65 - jnorm[ch-192];
3769 col = 24 + inorm[ch-2*192];
3770 row = 64 + jnorm[ch-2*192];
3774 col = 25 - inorm[ch-3*192];
3775 row = 49 - jnorm[ch-3*192];
3779 col = 49 - inorm[ch-4*192];
3780 row = 49 - jnorm[ch-4*192];
3784 col = 24 + inorm[ch-5*192];
3785 row = 32 + jnorm[ch-5*192];
3789 col = inorm[ch-6*192];
3790 row = 32 + jnorm[ch-6*192];
3794 col = 25 - inorm[ch-7*192];
3795 row = 33 - jnorm[ch-7*192];
3799 col = 49 - inorm[ch-8*192];
3800 row = 33 - jnorm[ch-8*192];
3811 col = 48 + inorm[ch];
3812 row = 48 + jnorm[ch];
3816 col = 24 + inorm[ch-192];
3817 row = 48 + jnorm[ch-192];
3821 col = 49 - inorm[ch-2*192];
3822 row = 65 - jnorm[ch-2*192];
3826 col = 73 - inorm[ch-3*192];
3827 row = 65 - jnorm[ch-3*192];
3831 col = 48 + inorm[ch-4*192];
3832 row = 64 + jnorm[ch-4*192];
3836 col = 24 + inorm[ch-5*192];
3837 row = 64 + jnorm[ch-5*192];
3841 col = 25 - inorm[ch-6*192];
3842 row = 49 - jnorm[ch-6*192];
3846 col = inorm[ch-7*192];
3847 row = 32 + jnorm[ch-7*192];
3851 col = 25 - inorm[ch-8*192];
3852 row = 33 - jnorm[ch-8*192];
3860 void StPmdGeom::chain12(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
3862 Int_t zone = ch/192;
3869 col = 25 - inorm[ch];
3870 row = 25 - jnorm[ch];
3874 col = 49 - inorm[ch-192];
3875 row = 25 - jnorm[ch-192];
3879 col = 24 + inorm[ch-2*192];
3880 row = 8 + jnorm[ch-2*192];
3884 col = inorm[ch-3*192];
3885 row = 8 + jnorm[ch-3*192];
3889 col = 25 - inorm[ch-4*192];
3890 row = 9 - jnorm[ch-4*192];
3894 col = 49 - inorm[ch-5*192];
3895 row = 9 - jnorm[ch-5*192];
3905 col = 25 - inorm[ch];
3906 row = 25 - jnorm[ch];
3910 col = 49 - inorm[ch-192];
3911 row = 25 - jnorm[ch-192];
3915 col = 24 + inorm[ch-2*192];
3916 row = 8 + jnorm[ch-2*192];
3920 col = inorm[ch-3*192];
3921 row = 8 + jnorm[ch-3*192];
3925 col = 25 - inorm[ch-4*192];
3926 row = 9 - jnorm[ch-4*192];
3930 col = 49 - inorm[ch-5*192];
3931 row = 9 - jnorm[ch-5*192];
3942 col = 25 - inorm[ch];
3943 row = 49 - jnorm[ch];
3947 col = 49 - inorm[ch-192];
3948 row = 49 - jnorm[ch-192];
3952 col = 24 + inorm[ch-2*192];
3953 row = 32 + jnorm[ch-2*192];
3957 col = inorm[ch-3*192];
3958 row = 32 + jnorm[ch-3*192];
3962 col = 25 - inorm[ch-4*192];
3963 row = 33 - jnorm[ch-4*192];
3967 col = 49 - inorm[ch-5*192];
3968 row = 33 - jnorm[ch-5*192];
3972 col = 25 - inorm[ch-6*192];
3973 row = 25 - jnorm[ch-6*192];
3977 col = 49 - inorm[ch-7*192];
3978 row = 25 - jnorm[ch-7*192];
3982 col = 24 + inorm[ch-8*192];
3983 row = 8 + jnorm[ch-8*192];
3987 col = inorm[ch-9*192];
3988 row = 8 + jnorm[ch-9*192];
3992 col = 25 -inorm[ch-10*192];
3993 row = 9 - jnorm[ch-10*192];
3997 col = 49 -inorm[ch-11*192];
3998 row = 9 - jnorm[ch-11*192];
4006 void StPmdGeom::chain13(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4008 Int_t zone = ch/192;
4015 col = 73 - inorm[ch];
4016 row = 9 - jnorm[ch];
4020 col = 48 + inorm[ch-192];
4021 row = 8 + jnorm[ch-192];
4025 col = 73 - inorm[ch-2*192];
4026 row = 25 - jnorm[ch-2*192];
4030 col = 25 - inorm[ch-3*192];
4031 row = 49 - jnorm[ch-3*192];
4035 col = 49 - inorm[ch-4*192];
4036 row = 49 - jnorm[ch-4*192];
4040 col = 24 + inorm[ch-5*192];
4041 row = 32 + jnorm[ch-5*192];
4045 col = inorm[ch-6*192];
4046 row = 32 + jnorm[ch-6*192];
4050 col = 25 - inorm[ch-7*192];
4051 row = 33 - jnorm[ch-7*192];
4055 col = 49 - inorm[ch-8*192];
4056 row = 33 - jnorm[ch-8*192];
4066 col = 73 - inorm[ch];
4067 row = 9 - jnorm[ch];
4071 col = 48 + inorm[ch-192];
4072 row = 8 + jnorm[ch-192];
4076 col = 73 - inorm[ch-2*192];
4077 row = 25 - jnorm[ch-2*192];
4081 col = 25 - inorm[ch-3*192];
4082 row = 49 - jnorm[ch-3*192];
4086 col = 49 - inorm[ch-4*192];
4087 row = 49 - jnorm[ch-4*192];
4091 col = 24 + inorm[ch-5*192];
4092 row = 32 + jnorm[ch-5*192];
4096 col = inorm[ch-6*192];
4097 row = 32 + jnorm[ch-6*192];
4101 col = 25 - inorm[ch-7*192];
4102 row = 33 - jnorm[ch-7*192];
4106 col = 49 - inorm[ch-8*192];
4107 row = 33 - jnorm[ch-8*192];
4118 col = 49 - inorm[ch];
4119 row = 49 - jnorm[ch];
4123 col = 24 + inorm[ch-192];
4124 row = 32 + jnorm[ch-192];
4128 col = 49 - inorm[ch-2*192];
4129 row = 33 - jnorm[ch-2*192];
4133 col = 49 - inorm[ch-3*192];
4134 row = 25 - jnorm[ch-3*192];
4138 col = 73 - inorm[ch-4*192];
4139 row = 25 - jnorm[ch-4*192];
4143 col = 48 + inorm[ch-5*192];
4144 row = 8 + jnorm[ch-5*192];
4148 col = 24 + inorm[ch-6*192];
4149 row = 8 + jnorm[ch-6*192];
4153 col = 49 - inorm[ch-7*192];
4154 row = 9 - jnorm[ch-7*192];
4158 col = 73 - inorm[ch-8*192];
4159 row = 9 - jnorm[ch-8*192];
4167 void StPmdGeom::chain14(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4169 Int_t zone = ch/192;
4183 col = 40 + imirr[ch];
4184 row = 73 - jmirr[ch];
4188 col= 40 + imirr[ch-192];
4189 row= 49 - jmirr[ch-192];
4193 col= 40 + imirr[ch-2*192];
4194 row= 25 - jmirr[ch-2*192];
4198 col = 41 - imirr[ch-3*192];
4199 row = jmirr[ch-3*192];
4203 col = 41 - imirr[ch-4*192];
4204 row = 24 + jmirr[ch-4*192];
4208 col = 41 - imirr[ch-5*192];
4209 row = 48 + jmirr[ch-5*192];
4213 col= 24 + imirr[ch-6*192];
4214 row= 73 - jmirr[ch-6*192];
4218 col= 24 + imirr[ch-7*192];
4219 row= 49 - jmirr[ch-7*192];
4223 col= 24 + imirr[ch-8*192];
4224 row= 25 - jmirr[ch-8*192];
4232 void StPmdGeom::chain15(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4234 Int_t zone = ch/192;
4241 col = 40 + imirr[ch];
4246 col = 40 + imirr[ch-192];
4247 row = 24 + jmirr[ch-192];
4251 col = 41 - imirr[ch-2*192];
4252 row = 49 - jmirr[ch-2*192];
4256 col = 41 - imirr[ch-3*192];
4257 row = 25 - jmirr[ch-3*192];
4261 col = 24 + imirr[ch-4*192];
4262 row = jmirr[ch-4*192];
4266 col = 24 + imirr[ch-5*192];
4267 row = 24 + jmirr[ch-5*192];
4279 col = 40 + imirr[ch];
4284 col = 40 + imirr[ch-192];
4285 row = 24 + jmirr[ch-192];
4289 col = 41 - imirr[ch-2*192];
4290 row = 49 - jmirr[ch-2*192];
4294 col = 41 - imirr[ch-3*192];
4295 row = 25 - jmirr[ch-3*192];
4299 col = 24 + imirr[ch-4*192];
4300 row = jmirr[ch-4*192];
4304 col = 24 + imirr[ch-5*192];
4305 row = 24 + jmirr[ch-5*192];
4309 col = imirr[ch-6*192];
4310 row = jmirr[ch-6*192];
4314 col = 8 + imirr[ch-7*192];
4315 row = 25 - jmirr[ch-7*192];
4319 col = 16 + imirr[ch-8*192];
4320 row = jmirr[ch-8*192];
4328 void StPmdGeom::chain16(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4330 Int_t zone = ch/192;
4337 col = 16 + imirr[ch];
4342 col = 16 + imirr[ch-192];
4343 row = 24 + jmirr[ch-192];
4347 col = 17 - imirr[ch-2*192];
4348 row = 49 - jmirr[ch-2*192];
4352 col = 17 - imirr[ch-3*192];
4353 row = 25 - jmirr[ch-3*192];
4357 col = imirr[ch-4*192];
4358 row = jmirr[ch-4*192];
4362 col = imirr[ch-5*192];
4363 row = 24 + jmirr[ch-5*192];
4375 col = 9 - imirr[ch];
4380 col = 8 + imirr[ch-192];
4381 row = 25 - jmirr[ch-192];
4385 col = 25 - imirr[ch-2*192];
4386 row = jmirr[ch-2*192];
4390 col = 17 - imirr[ch-3*192];
4391 row = 24 + jmirr[ch-3*192];
4395 col = 17 - imirr[ch-4*192];
4396 row = 48 + jmirr[ch-4*192];
4400 col = 16 + imirr[ch-5*192];
4401 row = 73 - jmirr[ch-5*192];
4405 col = 16 + imirr[ch-6*192];
4406 row = 49 - jmirr[ch-6*192];
4410 col = imirr[ch-7*192];
4411 row = 73 - jmirr[ch-7*192];
4415 col = imirr[ch-8*192];
4416 row = 49 - jmirr[ch-8*192];
4424 void StPmdGeom::chain17(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4426 Int_t zone = ch/192;
4433 col = 48 + inorm[ch];
4434 row = 24 + jnorm[ch];
4438 col = 24 + inorm[ch-192];
4439 row = 24 + jnorm[ch-192];
4443 col = inorm[ch-2*192];
4444 row = 24 + jnorm[ch-2*192];
4448 col = 25 - inorm[ch-3*192];
4449 row = 41 - jnorm[ch-3*192];
4453 col = 49 - inorm[ch-4*192];
4454 row = 41 - jnorm[ch-4*192];
4458 col = 73 - inorm[ch-5*192];
4459 row = 41 - jnorm[ch-5*192];
4463 col = 48 + inorm[ch-6*192];
4464 row = 40 + jnorm[ch-6*192];
4468 col = 24 + inorm[ch-7*192];
4469 row = 40 + jnorm[ch-7*192];
4473 col = inorm[ch-8*192];
4474 row = 40 + jnorm[ch-8*192];
4490 col = 25 - inorm[ch];
4491 row = 33 - jnorm[ch];
4495 col = 49 - inorm[ch-192];
4496 row = 33 - jnorm[ch-192];
4500 col = 73 - inorm[ch-2*192];
4501 row = 33 - jnorm[ch-2*192];
4505 col = 48 + inorm[ch-3*192];
4506 row = 32 + jnorm[ch-3*192];
4510 col = 24 + inorm[ch-4*192];
4511 row = 32 + jnorm[ch-4*192];
4515 col = inorm[ch-5*192];
4516 row = 32 + jnorm[ch-5*192];
4520 col = 25 - inorm[ch-6*192];
4521 row = 49 - jnorm[ch-6*192];
4525 col = 49 - inorm[ch-7*192];
4526 row = 49 - jnorm[ch-7*192];
4530 col = 73 - inorm[ch-8*192];
4531 row = 49 - jnorm[ch-8*192];
4539 void StPmdGeom::chain18(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4541 Int_t zone = ch/192;
4557 col = 64 + imirr[ch];
4558 row = 48 + jmirr[ch];
4562 col = 65 - imirr[ch-192];
4563 row = 73 - jmirr[ch-192];
4567 col = 48 + imirr[ch-2*192];
4568 row = 48 + jmirr[ch-2*192];
4572 col = 40 + imirr[ch-3*192];
4573 row = 24 + jmirr[ch-3*192];
4577 col = 40 + imirr[ch-4*192];
4578 row = 48 + jmirr[ch-4*192];
4582 col = 41 - imirr[ch-5*192];
4583 row = 73 - jmirr[ch-5*192];
4587 col = 41 - imirr[ch-6*192];
4588 row = 49 - jmirr[ch-6*192];
4592 col = 24 + imirr[ch-7*192];
4593 row = 24 + jmirr[ch-7*192];
4597 col = 24 + imirr[ch-8*192];
4598 row = 48 + jmirr[ch-8*192];
4606 void StPmdGeom::chain19(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4608 Int_t zone = ch/192;
4614 col = 48 + inorm[ch];
4619 col = 24 + inorm[ch-192];
4620 row = jnorm[ch-192];
4624 col = inorm[ch-2*192];
4625 row = jnorm[ch-2*192];
4629 col = 25 - inorm[ch-3*192];
4630 row = 17 - jnorm[ch-3*192];
4634 col = 49 - inorm[ch-4*192];
4635 row = 17 - jnorm[ch-4*192];
4639 col = 73 - inorm[ch-5*192];
4640 row = 17 - jnorm[ch-5*192];
4644 col = 48 + inorm[ch-6*192];
4645 row = 16 + jnorm[ch-6*192];
4649 col = 24 + inorm[ch-7*192];
4650 row = 16 + jnorm[ch-7*192];
4654 col = inorm[ch-8*192];
4655 row = 16 + jnorm[ch-8*192];
4665 col = 24 + inorm[ch];
4670 col = inorm[ch-192];
4671 row = jnorm[ch-192];
4675 col = 25 - inorm[ch-2*192];
4676 row = 17 - jnorm[ch-2*192];
4680 col = 49 - inorm[ch-3*192];
4681 row = 17 - jnorm[ch-3*192];
4685 col = 24 + inorm[ch-4*192];
4686 row = 16 + jnorm[ch-4*192];
4690 col = inorm[ch-5*192];
4691 row = 16 + jnorm[ch-5*192];
4695 col = 24 + inorm[ch-6*192];
4696 row = 24 + jnorm[ch-6*192];
4700 col = inorm[ch-7*192];
4701 row = 24 + jnorm[ch-7*192];
4705 col= 25 - inorm[ch-8*192];
4706 row= 41 - jnorm[ch-8*192];
4710 col= 49 - inorm[ch-9*192];
4711 row= 41 - jnorm[ch-9*192];
4715 col = 24 + inorm[ch-10*192];
4716 row = 40 + jnorm[ch-10*192];
4720 col = inorm[ch-11*192];
4721 row = 40 + jnorm[ch-11*192];
4732 col = 25 -inorm[ch];
4733 row = 9 - jnorm[ch];
4737 col = 49 -inorm[ch-192];
4738 row = 9 - jnorm[ch-192];
4742 col = 73 -inorm[ch-2*192];
4743 row = 9 - jnorm[ch-2*192];
4747 col = 48 + inorm[ch-3*192];
4748 row = 8+ jnorm[ch-3*192];
4752 col = 24 + inorm[ch-4*192];
4753 row = 8+ jnorm[ch-4*192];
4757 col = inorm[ch-5*192];
4758 row = 8+ jnorm[ch-5*192];
4762 col = 25 - inorm[ch-6*192];
4763 row = 25 - jnorm[ch-6*192];
4767 col = 49 - inorm[ch-7*192];
4768 row = 25 - jnorm[ch-7*192];
4772 col = 73 - inorm[ch-8*192];
4773 row = 25 - jnorm[ch-8*192];
4781 void StPmdGeom::chain20(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4784 Int_t zone = ch/192;
4797 col = 48 + inorm[ch];
4802 col = 73 - inorm[ch-192];
4803 row = 17 - jnorm[ch-192];
4807 col = 48 + inorm[ch-2*192];
4808 row = 16 + jnorm[ch-2*192];
4812 col = 48 + inorm[ch-3*192];
4813 row = 24 + jnorm[ch-3*192];
4817 col = 73 - inorm[ch-4*192];
4818 row = 41 - jnorm[ch-4*192];
4822 col = 48 + inorm[ch-5*192];
4823 row = 40 - jnorm[ch-5*192];
4827 col = 64 + imirr[ch-6*192];
4828 row = jmirr[ch-6*192];
4832 col = 64 + imirr[ch-7*192];
4833 row = 24 + jmirr[ch-7*192];
4837 col = 65 - imirr[ch-8*192];
4838 row = 49 - jmirr[ch-8*192];
4842 col = 65 - imirr[ch-9*192];
4843 row = 25 - jmirr[ch-9*192];
4847 col = 48 + imirr[ch-10*192];
4848 row = jmirr[ch-10*192];
4852 col = 48 + imirr[ch-11*192];
4853 row = 24 + jmirr[ch-11*192];
4864 col = 64 + imirr[ch];
4869 col = 64 + imirr[ch-192];
4870 row = 24 + jmirr[ch-192];
4874 col = 65 - imirr[ch-2*192];
4875 row = 49 - jmirr[ch-2*192];
4879 col = 65 - imirr[ch-3*192];
4880 row = 25 - jmirr[ch-3*192];
4884 col = 48 + imirr[ch-4*192];
4885 row = jmirr[ch-4*192];
4889 col = 48 + imirr[ch-5*192];
4890 row = 24 + jmirr[ch-5*192];
4913 void StPmdGeom::chain21(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4915 Int_t zone = ch/192;
4922 col = 9 - imirr[ch];
4923 row = 73 - jmirr[ch];
4927 col = 8 + imirr[ch-192];
4928 row = 48 + jmirr[ch-192];
4932 col = 25 - imirr[ch-2*192];
4933 row = 73 - jmirr[ch-2*192];
4937 col = 33 - imirr[ch-3*192];
4938 row = 73 - jmirr[ch-3*192];
4942 col = 33 - imirr[ch-4*192];
4943 row = 49 - jmirr[ch-4*192];
4947 col = 32 + imirr[ch-5*192];
4948 row = 24 + jmirr[ch-5*192];
4952 col = 32 + imirr[ch-6*192];
4953 row = 48 + jmirr[ch-6*192];
4957 col = 49 - imirr[ch-7*192];
4958 row = 73 - jmirr[ch-7*192];
4962 col = 49 - imirr[ch-8*192];
4963 row = 49 - jmirr[ch-8*192];
4982 void StPmdGeom::chain22(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
4984 Int_t zone = ch/192;
4997 col = 40 + imirr[ch];
4998 row = 25 - jmirr[ch];
5002 col = 41 - imirr[ch-192];
5003 row = jmirr[ch-192];
5007 col = 24 + imirr[ch-2*192];
5008 row = 25 - jmirr[ch-2*192];
5012 col = 25 - imirr[ch-3*192];
5013 row = 49 - jmirr[ch-3*192];
5017 col = 25 - imirr[ch-4*192];
5018 row = 25 - jmirr[ch-4*192];
5022 col = 8 + imirr[ch-5*192];
5023 row = jmirr[ch-5*192];
5027 col = 8 + imirr[ch-6*192];
5028 row = 24 + jmirr[ch-6*192];
5032 col = 9 - imirr[ch-7*192];
5033 row = 49 - jmirr[ch-7*192];
5037 col = 9 - imirr[ch-8*192];
5038 row = 25 - jmirr[ch-8*192];
5054 col = imirr[ch-1*192];
5055 row = 24 + jmirr[ch -1*192];
5059 col = 17 - imirr[ch-2*192];
5060 row = 49 - jmirr[ch-2*192];
5064 col = 17 - imirr[ch-3*192];
5065 row = 25 - jmirr[ch-3*192];
5069 col = 16 + imirr[ch-4*192];
5070 row = jmirr[ch-4*192];
5074 col = 16 + imirr[ch-5*192];
5075 row = 24 + jmirr[ch-5*192];
5079 col = 24 + imirr[ch-6*192];
5080 row = jmirr[ch-6*192];
5084 col = 41 - imirr[ch-7*192];
5085 row = 25 - jmirr[ch-7*192];
5089 col = 40 + imirr[ch-8*192];
5090 row = jmirr[ch-8*192];
5099 void StPmdGeom::chain23(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5101 Int_t zone = ch/192;
5109 col = 57 - imirr[ch];
5110 row = 73 - jmirr[ch];
5114 col = 57 - imirr[ch-192];
5115 row = 49 - jmirr[ch-192];
5119 col = 57 - imirr[ch-2*192];
5120 row = 25 - jmirr[ch-2*192];
5124 col = 56 + imirr[ch-3*192];
5125 row = jmirr[ch-3*192];
5129 col = 56 + imirr[ch-4*192];
5130 row = 24 + jmirr[ch-4*192];
5134 col = 56 + imirr[ch-5*192];
5135 row = 48 + jmirr[ch-5*192];
5139 col = 73 - imirr[ch-6*192];
5140 row = 73 - jmirr[ch-6*192];
5144 col = 73 - imirr[ch-7*192];
5145 row = 49 - jmirr[ch-7*192];
5149 col = 73 - imirr[ch-8*192];
5150 row = 25 - jmirr[ch-8*192];
5162 col = 73 - imirr[ch];
5163 row = 49 - jmirr[ch];
5167 col = 73 - imirr[ch-192];
5168 row = 25 - jmirr[ch-192];
5172 col = 56 + imirr[ch-2*192];
5173 row = jmirr[ch-2*192];
5177 col = 56 + imirr[ch-3*192];
5178 row = 24 + jmirr[ch-3*192];
5182 col = 57 - imirr[ch-4*192];
5183 row = 49 - jmirr[ch-4*192];
5187 col = 57 - imirr[ch-5*192];
5188 row = 25 - jmirr[ch-5*192];
5192 col = 33 - imirr[ch-6*192];
5193 row = 73 - jmirr[ch-6*192];
5197 col = 33 - imirr[ch-7*192];
5198 row = 49 - jmirr[ch-7*192];
5202 col = 32 + imirr[ch-8*192];
5203 row = 24 + jmirr[ch-8*192];
5207 col = 32 + imirr[ch-9*192];
5208 row = 48 + jmirr[ch-9*192];
5212 col = 49 - imirr[ch-10*192];
5213 row = 73 - jmirr[ch-10*192];
5217 col = 49 - imirr[ch-11*192];
5218 row = 49 - jmirr[ch-11*192];
5225 void StPmdGeom::chain24(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5227 Int_t zone = ch/192;
5234 col = 97 - imirr[ch];
5235 row = 73 - jmirr[ch];
5239 col = 97 - imirr[ch-192];
5240 row = 49 - jmirr[ch-192];
5244 col = 97 - imirr[ch-2*192];
5245 row = 25 - jmirr[ch-2*192];
5249 col = 80 + imirr[ch-3*192];
5250 row = jmirr[ch-3*192];
5254 col = 80 + imirr[ch-4*192];
5255 row = 24 + jmirr[ch-4*192];
5259 col = 80 + imirr[ch-5*192];
5260 row = 48 + jmirr[ch-5*192];
5264 col = 81 - imirr[ch-6*192];
5265 row = 73 - jmirr[ch-6*192];
5269 col = 81 - imirr[ch-7*192];
5270 row = 49 - jmirr[ch-7*192];
5274 col = 81 - imirr[ch-8*192];
5275 row = 25 - jmirr[ch-8*192];
5287 col = 97 - imirr[ch];
5288 row = 73 - jmirr[ch];
5292 col = 97 - imirr[ch-192];
5293 row = 49 - jmirr[ch-192];
5297 col = 97 - imirr[ch-2*192];
5298 row = 25 - jmirr[ch-2*192];
5302 col = 80 + imirr[ch-3*192];
5303 row = jmirr[ch-3*192];
5307 col = 80 + imirr[ch-4*192];
5308 row = 24 + jmirr[ch-4*192];
5312 col = 80 + imirr[ch-5*192];
5313 row = 48 + jmirr[ch-5*192];
5317 col = 81 - imirr[ch-6*192];
5318 row = 73 - jmirr[ch-6*192];
5322 col = 81 - imirr[ch-7*192];
5323 row = 49 - jmirr[ch-7*192];
5327 col = 81 - imirr[ch-8*192];
5328 row = 48 + jmirr[ch-8*192];
5332 col = 57 - imirr[ch-9*192];
5333 row = 73 - jmirr[ch-9*192];
5337 col = 56 + imirr[ch-10*192];
5338 row = 48 + jmirr[ch-10*192];
5342 col = 73 - imirr[ch-11*192];
5343 row = 73 - jmirr[ch-11*192];
5351 void StPmdGeom::chain25(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5353 Int_t zone = ch/192;
5357 col = 49 - jmirr[ch];
5358 row = 9 - imirr[ch];
5362 col = 25 - jmirr[ch-192];
5363 row = 9 - imirr[ch-192];
5367 col = jmirr[ch-2*192];
5368 row = 8 + imirr[ch-2*192];
5372 col = 24 + jmirr[ch-3*192];
5373 row = 8 + imirr[ch-3*192];
5377 col = 49 - jmirr[ch-4*192];
5378 row = 25 - imirr[ch-4*192];
5382 col = 25 - jmirr[ch-5*192];
5383 row = 25 - imirr[ch-5*192];
5387 col = 25 - jmirr[ch-6*192];
5388 row = 33 - imirr[ch-6*192];
5392 col = jmirr[ch-7*192];
5393 row = 32 + imirr[ch-7*192];
5397 col = 25 - jmirr[ch-8*192];
5398 row = 49 - imirr[ch-8*192];
5404 void StPmdGeom::chain26(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5406 Int_t zone = ch/192;
5410 col = 73 - jmirr[ch];
5411 row = 9 - imirr[ch];
5415 col = 49 - jmirr[ch-192];
5416 row = 9 - imirr[ch-192];
5420 col = 25 - jmirr[ch-2*192];
5421 row = 9 - imirr[ch-2*192];
5425 col = jmirr[ch-3*192];
5426 row = 8 + imirr[ch-3*192];
5430 col = 24 + jmirr[ch-4*192];
5431 row = 8 + imirr[ch-4*192];
5435 col = 48 + jmirr[ch-5*192];
5436 row = 8 + imirr[ch-5*192];
5440 col = 73 - jmirr[ch-6*192];
5441 row = 25 - imirr[ch-6*192];
5445 col = 49 - jmirr[ch-7*192];
5446 row = 25 - imirr[ch-7*192];
5450 col = 25 - jmirr[ch-8*192];
5451 row = 25 - imirr[ch-8*192];
5456 void StPmdGeom::chain27(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5458 Int_t zone = ch/192;
5462 col = 49 - jmirr[ch];
5463 row = 49 - 16 - imirr[ch];
5467 col = 24 + jmirr[ch-192];
5468 row = 32 + imirr[ch-192];
5472 col = 49 - jmirr[ch-2*192];
5473 row = 49- imirr[ch-2*192];
5477 col = 25-jnorm[ch-3*192];
5478 row = 25-inorm[ch-3*192];
5482 col = 25-jnorm[ch-4*192];
5483 row = 49-inorm[ch-4*192];
5487 col = 8+jnorm[ch-5*192];
5488 row = 24+inorm[ch-5*192];
5492 col = 8+jnorm[ch-6*192];
5493 row = inorm[ch-6*192];
5497 col = 9-jnorm[ch-7*192];
5498 row = 25-inorm[ch-7*192];
5502 col = 9-jnorm[ch-8*192];
5503 row = 49-inorm[ch-8*192];
5509 void StPmdGeom::chain28(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5511 Int_t zone = ch/192;
5515 col = 73 - jmirr[ch];
5516 row = 33 - imirr[ch];
5520 col = 49 - jmirr[ch-192];
5521 row = 33 - imirr[ch-192];
5525 col = 25 - jmirr[ch-2*192];
5526 row = 33 - imirr[ch-2*192];
5530 col = jmirr[ch-3*192];
5531 row = 32 + imirr[ch-3*192];
5535 col = 24 + jmirr[ch-4*192];
5536 row = 32 + imirr[ch-4*192];
5540 col = 48 + jmirr[ch-5*192];
5541 row = 32 + imirr[ch-5*192];
5545 col = 73 - jmirr[ch-6*192];
5546 row = 49 - imirr[ch-6*192];
5550 col = 49 - jmirr[ch-7*192];
5551 row = 49 - imirr[ch-7*192];
5555 col = 25 - jmirr[ch-8*192];
5556 row = 49 - imirr[ch-8*192];
5562 void StPmdGeom::chain29(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5564 Int_t zone = ch/192;
5568 col = 49 - jnorm[ch];
5569 row = 25 - inorm[ch];
5573 col = 49 - jnorm[ch-192];
5574 row = 49 - inorm[ch-192];
5578 col = 49 - jnorm[ch-2*192];
5579 row = 73 - inorm[ch-2*192];
5583 col = 32 + jnorm[ch-3*192];
5584 row = 48 + inorm[ch-3*192];
5588 col = 32 + jnorm[ch-4*192];
5589 row = 24 + inorm[ch-4*192];
5593 col = 32 + jnorm[ch-5*192];
5594 row = inorm[ch-5*192];
5598 col = 33 - jnorm[ch-6*192];
5599 row = 25 - inorm[ch-6*192];
5603 col = 33 - jnorm[ch-7*192];
5604 row = 49 - inorm[ch-7*192];
5608 col = 33 - jnorm[ch-8*192];
5609 row = 73 - inorm[ch-8*192];
5614 void StPmdGeom::chain30(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5616 Int_t zone = ch/192;
5620 col = 73 - jmirr[ch];
5621 row = 9 - imirr[ch];
5625 col = 49 - jmirr[ch-192];
5626 row = 9 - imirr[ch-192];
5630 col = 25 - jmirr[ch-2*192];
5631 row = 9 - imirr[ch-2*192];
5635 col = jmirr[ch-3*192];
5636 row = 8 + imirr[ch-3*192];
5640 col = 24 + jmirr[ch-4*192];
5641 row = 8 + imirr[ch-4*192];
5645 col = 48 + jmirr[ch-5*192];
5646 row = 8 + imirr[ch-5*192];
5651 col = 73 - jmirr[ch-6*192];
5652 row = 25 - imirr[ch-6*192];
5656 col = 49 - jmirr[ch-7*192];
5657 row = 25 - imirr[ch-7*192];
5661 col = 25 - jmirr[ch-8*192];
5662 row = 25 - imirr[ch-8*192];
5668 void StPmdGeom::chain31(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5670 Int_t zone = ch/192;
5674 col = 73 - jmirr[ch];
5675 row = 33 - imirr[ch];
5679 col = 49 - jmirr[ch-192];
5680 row = 33 - imirr[ch-192];
5684 col = 25 - jmirr[ch-2*192];
5685 row = 33 - imirr[ch-2*192];
5689 col = jmirr[ch-3*192];
5690 row = 32 + imirr[ch-3*192];
5694 col = 24 + jmirr[ch-4*192];
5695 row = 32 + imirr[ch-4*192];
5699 col = 48 + jmirr[ch-5*192];
5700 row = 32 + imirr[ch-5*192];
5704 col = 73 - jmirr[ch-6*192];
5705 row = 49 - imirr[ch-6*192];
5709 col = 49 - jmirr[ch-7*192];
5710 row = 49 - imirr[ch-7*192];
5714 col = 25 - jmirr[ch-8*192];
5715 row = 49 - imirr[ch-8*192];
5723 void StPmdGeom::chain32(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5725 Int_t zone = ch/192;
5730 row = 16 + imirr[ch];
5734 col = 24 + jmirr[ch-192];
5735 row = 16 + imirr[ch-192];
5739 col = 48 + jmirr[ch-2*192];
5740 row = 16 + imirr[ch-2*192];
5744 col = 73 - jmirr[ch-3*192];
5745 row = 17 - imirr[ch-3*192];
5749 col = 49 - jmirr[ch-4*192];
5750 row = 17 - imirr[ch-4*192];
5754 col = 25 - jmirr[ch-5*192];
5755 row = 17 - imirr[ch-5*192];
5759 col = jmirr[ch-6*192];
5760 row = imirr[ch-6*192];
5764 col = 24 + jmirr[ch-7*192];
5765 row = imirr[ch-7*192];
5769 col = 48 + jmirr[ch-8*192];
5770 row = imirr[ch-8*192];
5780 void StPmdGeom::chain33(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5782 Int_t zone = ch/192;
5786 col = 25 - jnorm[ch];
5787 row = 73 - inorm[ch];
5791 col = 8 + jnorm[ch-192];
5792 row = 48 + inorm[ch-192];
5796 col = 9 - jnorm[ch-2*192];
5797 row = 73 - inorm[ch-2*192];
5801 col = 73 - jmirr[ch-3*192];
5802 row = 57 - imirr[ch-3*192];
5806 col = 49 - jmirr[ch-4*192];
5807 row = 57 - imirr[ch-4*192];
5811 col = 24 + jmirr[ch-5*192];
5812 row = 56 + imirr[ch-5*192];
5816 col = 48 + jmirr[ch-6*192];
5817 row = 56 + imirr[ch-6*192];
5821 col = 73 - jmirr[ch-7*192];
5822 row = 73 - imirr[ch-7*192];
5826 col = 49 - jmirr[ch-8*192];
5827 row = 73 - imirr[ch-8*192];
5833 void StPmdGeom::chain34(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5835 Int_t zone = ch/192;
5840 row = 40 + imirr[ch];
5844 col = 24 + jmirr[ch-192];
5845 row = 40 + imirr[ch-192];
5849 col = 48 + jmirr[ch - 2*192];
5850 row = 40 + imirr[ch - 2*192];
5854 col = 73 - jmirr[ch - 3*192];
5855 row = 41 - imirr[ch - 3*192];
5859 col = 49 - jmirr[ch-4*192];
5860 row = 41 - imirr[ch-4*192];
5864 col = 25 - jmirr[ch-5*192];
5865 row = 41 - imirr[ch-5*192];
5869 col = jmirr[ch-6*192];
5870 row = 24 + imirr[ch-6*192];
5874 col = 24 + jmirr[ch-7*192];
5875 row = 24 + imirr[ch-7*192];
5879 col = 48 + jmirr[ch-8*192];
5880 row = 24 + imirr[ch-8*192];
5885 void StPmdGeom::chain35(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5887 Int_t zone = ch/192;
5892 row = 40 + imirr[ch];
5896 col = 25 - jmirr[ch-192];
5897 row = 41 - imirr[ch-192];
5901 col = jmirr[ch-2*192];
5902 row = 24 + imirr[ch-2*192];
5906 col = jmirr[ch-3*192];
5907 row = 16 + imirr[ch-3*192];
5911 col = 24 + jmirr[ch-4*192];
5912 row = 16 + imirr[ch-4*192];
5916 col = 49 - jmirr[ch-5*192];
5917 row = 17 - imirr[ch-5*192];
5921 col = 25 - jmirr[ch-6*192];
5922 row = 17 - imirr[ch-6*192];
5926 col = jmirr[ch-7*192];
5927 row = imirr[ch-7*192];
5931 col = 24 + jmirr[ch-8*192];
5932 row = imirr[ch-8*192];
5938 void StPmdGeom::chain36(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5940 Int_t zone = ch/192;
5944 col = 24 + jmirr[ch];
5945 row = 40 + imirr[ch];
5949 col = 49 - jmirr[ch-192];
5950 row = 41 - imirr[ch-192];
5954 col = 24 + jmirr[ch-2*192];
5955 row = 24 + imirr[ch-2*192];
5959 col = 48 + jmirr[ch-3*192];
5960 row = 16 + imirr[ch-3*192];
5964 col = 73 - jmirr[ch-4*192];
5965 row = 17 - imirr[ch-4*192];
5969 col = 48 + jmirr[ch-5*192];
5970 row = imirr[ch-5*192];
5974 col = jmirr[ch-6*192];
5975 row = 40 + imirr[ch-6*192];
5979 col = 25 - jmirr[ch-7*192];
5980 row = 41 - imirr[ch-7*192];
5984 col = jmirr[ch-8*192];
5985 row = 24 + imirr[ch-8*192];
5990 void StPmdGeom::chain37(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
5992 Int_t zone = ch/192;
5999 col = 24 + jmirr[ch];
6000 row = 40 + imirr[ch];
6004 col = 49 - jmirr[ch-192];
6005 row = 41 - imirr[ch-192];
6009 col = 24 + jmirr[ch-2*192];
6010 row = 24 + imirr[ch-2*192];
6014 col = jmirr[ch-3*192];
6015 row = 16 + imirr[ch-3*192];
6019 col = 24 + jmirr[ch-4*192];
6020 row = 16 + imirr[ch-4*192];
6024 col = 49 - jmirr[ch-5*192];
6025 row = 17 - imirr[ch-5*192];
6029 col = 25 - jmirr[ch-6*192];
6030 row = 17 - imirr[ch-6*192];
6034 col = jmirr[ch-7*192];
6035 row = imirr[ch-7*192];
6039 col = 24 + jmirr[ch-8*192];
6040 row = imirr[ch-8*192];
6055 col = 24 + jmirr[ch-192];
6056 row = imirr[ch-192];
6060 col = 49 - jmirr[ch-2*192];
6061 row = 17 - imirr[ch-2*192];
6065 col = 25 - jmirr[ch-3*192];
6066 row = 17 - imirr[ch-3*192];
6070 col = jmirr[ch-4*192];
6071 row = 16 + imirr[ch-4*192];
6075 col = 24 + jmirr[ch-5*192];
6076 row = 16 + imirr[ch-5*192];
6080 col = 24 + jmirr[ch-6*192];
6081 row = 24 + imirr[ch-6*192];
6085 col = 49 - jmirr[ch-7*192];
6086 row = 41 - imirr[ch-7*192];
6090 col = 24 + jmirr[ch-8*192];
6091 row = 40 + imirr[ch-8*192];
6098 void StPmdGeom::chain38(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6100 Int_t zone = ch/192;
6104 col = 49 - jnorm[ch];
6105 row = 25 - inorm[ch];
6109 col = 49 - jnorm[ch-192];
6110 row = 49 - inorm[ch-192];
6114 col = 49 - jnorm[ch-2*192];
6115 row = 73 - inorm[ch-2*192];
6119 col = 32 + jnorm[ch-3*192];
6120 row = 48 + inorm[ch-3*192];
6124 col = 32 + jnorm[ch-4*192];
6125 row = 24 + inorm[ch-4*192];
6129 col = 32 + jnorm[ch-5*192];
6130 row = inorm[ch-5*192];
6134 col = 33 - jnorm[ch-6*192];
6135 row = 25 - inorm[ch-6*192];
6139 col = 33 - jnorm[ch-7*192];
6140 row = 49 - inorm[ch-7*192];
6144 col = 33 - jnorm[ch-8*192];
6145 row = 73 - inorm[ch-8*192];
6151 void StPmdGeom::chain39(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6153 Int_t zone = ch/192;
6157 col = 49 - jnorm[ch];
6158 row = 25 - inorm[ch];
6162 col = 49 - jnorm[ch-192];
6163 row = 49 - inorm[ch-192];
6167 col = 32 + jnorm[ch-2*192];
6168 row = 24 + inorm[ch-2*192];
6172 col = 32 + jnorm[ch-3*192];
6173 row = inorm[ch-3*192];
6177 col = 33 - jnorm[ch-4*192];
6178 row = 25 - inorm[ch-4*192];
6182 col = 33 - jnorm[ch-5*192];
6183 row = 49 - inorm[ch-5*192];
6187 col = 25 - jnorm[ch-6*192];
6188 row = 49 - inorm[ch-6*192];
6192 col = 8 + jnorm[ch-7*192];
6193 row = 24 + inorm[ch-7*192];
6197 col = 9 - jnorm[ch-8*192];
6198 row = 49 - inorm[ch-8*192];
6203 void StPmdGeom::chain40(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6205 Int_t zone = ch/192;
6209 col = 25 - jnorm[ch];
6210 row = 25 - inorm[ch];
6214 col = 25 - jnorm[ch-192];
6215 row = 49 - inorm[ch-192];
6219 col = 25 - jnorm[ch-2*192];
6220 row = 73 - inorm[ch-2*192];
6224 col = 8 + jnorm[ch-3*192];
6225 row = 48 + inorm[ch-3*192];
6229 col = 8 + jnorm[ch-4*192];
6230 row = 24 + inorm[ch-4*192];
6234 col = 8 + jnorm[ch-5*192];
6235 row = inorm[ch-5*192];
6239 col = 9 - jnorm[ch-6*192];
6240 row = 25 - inorm[ch-6*192];
6244 col = 9 - jnorm[ch-7*192];
6245 row = 49 - inorm[ch-7*192];
6249 col = 9 - jnorm[ch-8*192];
6250 row = 73 - inorm[ch-8*192];
6256 void StPmdGeom::chain41(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6258 Int_t zone = ch/192;
6262 col = 25 - jnorm[ch];
6263 row = 25 - inorm[ch];
6267 col = 8 + jnorm[ch-192];
6268 row = inorm[ch-192];
6272 col = 9 - jnorm[ch-2*192];
6273 row = 25 - inorm[ch-2*192];
6277 col = 73 - jmirr[ch-3*192];
6278 row = 33 - imirr[ch-3*192];
6282 col = 49 - jmirr[ch-4*192];
6283 row = 33 - imirr[ch-4*192];
6287 col = 24 + jmirr[ch-5*192];
6288 row = 32 + imirr[ch-5*192];
6292 col = 48 + jmirr[ch-6*192];
6293 row = 32 + imirr[ch-6*192];
6297 col = 73 - jmirr[ch-7*192];
6298 row = 49 - imirr[ch-7*192];
6302 col = 49 - jmirr[ch-8*192];
6303 row = 49 - imirr[ch-8*192];
6308 void StPmdGeom::chain42(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6310 Int_t zone = ch/192;
6314 col = 73 - jnorm[ch];
6315 row = 25 - inorm[ch];
6319 col = 73 - jnorm[ch-192];
6320 row = 49 - inorm[ch-192];
6324 col = 73 - jnorm[ch-2*192];
6325 row = 73 - inorm[ch-2*192];
6329 col = 56 + jnorm[ch-3*192];
6330 row = 48 + inorm[ch-3*192];
6334 col = 56 + jnorm[ch-4*192];
6335 row = 24 + inorm[ch-4*192];
6339 col = 56 + jnorm[ch-5*192];
6340 row = inorm[ch-5*192];
6344 col = 57 - jnorm[ch-6*192];
6345 row = 25 - inorm[ch-6*192];
6349 col = 57 - jnorm[ch-7*192];
6350 row = 49 - inorm[ch-7*192];
6354 col = 57 - jnorm[ch-8*192];
6355 row = 73 - inorm[ch-8*192];
6360 void StPmdGeom::chain43(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6362 Int_t zone = ch/192;
6366 col = 73 - jmirr[ch];
6367 row = 9 - imirr[ch];
6371 col = 49 - jmirr[ch-192];
6372 row = 9 - imirr[ch-192];
6376 col = 25 - jmirr[ch-2*192];
6377 row = 9 - imirr[ch-2*192];
6381 col = jmirr[ch-3*192];
6382 row = 8 + imirr[ch-3*192];
6386 col = 24 + jmirr[ch-4*192];
6387 row = 8 + imirr[ch-4*192];
6391 col = 48 + jmirr[ch-5*192];
6392 row = 8 + imirr[ch-5*192];
6396 col = 73 - jmirr[ch-6*192];
6397 row = 25 - imirr[ch-6*192];
6401 col = 49 - jmirr[ch-7*192];
6402 row = 25 - imirr[ch-7*192];
6406 col = 25 - jmirr[ch-8*192];
6407 row = 25 - imirr[ch-8*192];
6412 void StPmdGeom::chain44(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6414 Int_t zone = ch/192;
6418 col = 49 - jnorm[ch];
6419 row = 25 - inorm[ch];
6423 col = 49 - jnorm[ch-192];
6424 row = 49 - inorm[ch-192];
6428 col = 49 - jnorm[ch-2*192];
6429 row = 73 - inorm[ch-2*192];
6433 col = 32 + jnorm[ch-3*192];
6434 row = 48 + inorm[ch-3*192];
6438 col = 32 + jnorm[ch-4*192];
6439 row = 24 + inorm[ch-4*192];
6443 col = 32 + jnorm[ch-5*192];
6444 row = inorm[ch-5*192];
6448 col =33 - jnorm[ch-6*192];
6449 row =25 - inorm[ch-6*192];
6453 col =33 - jnorm[ch-7*192];
6454 row =49 - inorm[ch-7*192];
6458 col =33 - jnorm[ch-8*192];
6459 row =73 - inorm[ch-8*192];
6464 void StPmdGeom::chain45(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6466 Int_t zone = ch/192;
6473 col = 25 - jnorm[ch];
6474 row = 25 - inorm[ch];
6478 col = 25 - jnorm[ch-192];
6479 row = 49 - inorm[ch-192];
6483 col = 8 + jnorm[ch-2*192];
6484 row = 24 + inorm[ch-2*192];
6488 col = 8 + jnorm[ch-3*192];
6489 row = inorm[ch-3*192];
6493 col = 9 - jnorm[ch-4*192];
6494 row = 25 - inorm[ch-4*192];
6498 col = 9 - jnorm[ch-5*192];
6499 row = 49 - inorm[ch-5*192];
6511 col = 25 - jmirr[ch];
6512 row = 33 - imirr[ch];
6516 col = jmirr[ch-192];
6517 row = 32 + imirr[ch-192];
6521 col = 25 - jmirr[ch-2*192];
6522 row = 49- imirr[ch-2*192];
6526 col = 25 - jnorm[ch-3*192];
6527 row = 25 - inorm[ch-3*192];
6531 col = 25 - jnorm[ch-4*192];
6532 row = 49 - inorm[ch-4*192];
6536 col = 8 + jnorm[ch-5*192];
6537 row = 24 + inorm[ch-5*192];
6541 col = 8 + jnorm[ch-6*192];
6542 row = inorm[ch-6*192];
6546 col = 9 - jnorm[ch-7*192];
6547 row = 25 - inorm[ch-7*192];
6551 col = 9 - jnorm[ch-8*192];
6552 row = 49 - inorm[ch-8*192];
6560 void StPmdGeom::chain46(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6562 Int_t zone = ch/192;
6569 col = 25 - jmirr[ch];
6570 row = 33 - imirr[ch];
6574 col = jmirr[ch-192];
6575 row = 32 + imirr[ch-192];
6579 col = 25 - jmirr[ch-2*192];
6580 row = 49- imirr[ch-2*192];
6593 row = 48 + inorm[ch];
6597 col = 17 - jnorm[ch-192];
6598 row = 73 - inorm[ch-192];
6602 col = 16 + jnorm[ch-2*192];
6603 row = 48 + inorm[ch-2*192];
6607 col = 24 + jnorm[ch-3*192];
6608 row = 48 + inorm[ch-3*192];
6612 col = 24 + jnorm[ch-4*192];
6613 row = 24 + inorm[ch-4*192];
6617 col = 41 - jnorm[ch-5*192];
6618 row = 49 - inorm[ch-5*192];
6622 col = 41 - jnorm[ch-6*192];
6623 row = 73 - inorm[ch-6*192];
6627 col = 40 + jnorm[ch-7*192];
6628 row = 48 + inorm[ch-7*192];
6632 col = 40 + jnorm[ch-8*192];
6633 row = 24 + inorm[ch-8*192];
6641 void StPmdGeom::chain47(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6643 Int_t zone = ch/192;
6650 col = 24 + jnorm[ch];
6651 row = 48 + inorm[ch];
6655 col = 24 + jnorm[ch-192];
6656 row = 24 + inorm[ch-192];
6660 col = 41 - jnorm[ch-2*192];
6661 row = 49 - inorm[ch-2*192];
6665 col = 41 - jnorm[ch-3*192];
6666 row = 73 - inorm[ch-3*192];
6670 col = 40 + jnorm[ch-4*192];
6671 row = 48 + inorm[ch-4*192];
6675 col = 40 + jnorm[ch-5*192];
6676 row = 24 + inorm[ch-5*192];
6680 col = 48 + jnorm[ch-6*192];
6681 row = inorm[ch-6*192];
6685 col = 65 - jnorm[ch-7*192];
6686 row = 25 - inorm[ch-7*192];
6690 col = 64 + jnorm[ch-8*192];
6691 row = inorm[ch-8*192];
6703 col = 48 + jnorm[ch];
6704 row = 48 + inorm[ch];
6708 col = 48 + jnorm[ch-192];
6709 row = 24 + inorm[ch-192];
6713 col = 48 + jnorm[ch-2*192];
6714 row = inorm[ch-2*192];
6718 col = 65 - jnorm[ch-3*192];
6719 row = 25 - inorm[ch-3*192];
6723 col = 65 - jnorm[ch-4*192];
6724 row = 49 - inorm[ch-4*192];
6728 col = 65 - jnorm[ch-5*192];
6729 row = 73 - inorm[ch-5*192];
6733 col = 64 + jnorm[ch-6*192];
6734 row = 48 + inorm[ch-6*192];
6738 col = 64 + jnorm[ch-7*192];
6739 row = 24 + inorm[ch-7*192];
6743 col = 64 + jnorm[ch-8*192];
6744 row = inorm[ch-8*192];
6751 void StPmdGeom::chain48(Int_t& ch,Int_t& supmod,Int_t& col,Int_t& row,Int_t year)
6753 Int_t zone = ch/192;
6760 col = 48 + jnorm[ch];
6761 row = 48 + inorm[ch];
6765 col = 65 - jnorm[ch-192];
6766 row = 73 - inorm[ch-192];
6770 col = 64 + jnorm[ch-2*192];
6771 row = 48 + inorm[ch-2*192];
6775 col = 72 + jnorm[ch-3*192];
6776 row = 48 + inorm[ch-3*192];
6780 col = 72 + jnorm[ch-4*192];
6781 row = 24 + inorm[ch-4*192];
6785 col = 89 - jnorm[ch-5*192];
6786 row = 49 - inorm[ch-5*192];
6790 col = 89 - jnorm[ch-6*192];
6791 row = 73 - inorm[ch-6*192];
6795 col = 88 + jnorm[ch-7*192];
6796 row = 48 + inorm[ch-7*192];
6800 col = 88 + jnorm[ch-8*192];
6801 row = 24 + inorm[ch-8*192];
6813 col = 72 + jnorm[ch];
6814 row = 48 + inorm[ch];
6818 col = 72 + jnorm[ch-192];
6819 row = 24 + inorm[ch-192];
6823 col = 72 + jnorm[ch-2*192];
6824 row = inorm[ch-2*192];
6828 col = 89 - jnorm[ch-3*192];
6829 row = 25 - inorm[ch-3*192];
6833 col = 89 - jnorm[ch-4*192];
6834 row = 49 - inorm[ch-4*192];
6838 col = 89 - jnorm[ch-5*192];
6839 row = 73 - inorm[ch-5*192];
6843 col = 88 + jnorm[ch-6*192];
6844 row = 48 + inorm[ch-6*192];
6848 col = 88 + jnorm[ch-7*192];
6849 row = 24 + inorm[ch-7*192];
6853 col = 88 + jnorm[ch-8*192];
6854 row = inorm[ch-8*192];
6864 readBoardDetail(runno);
6867 GetRunYear(runno,rn,year);
6868 cout<<
"runnumber = "<<rn<<
" year="<<year<<endl;
6873 sprintf(histname,
"CPVXY%d",runno);
6874 sprintf(gifname,
"CPVXY%d.gif",runno);
6876 sprintf(histname,
"PMDXY%d",runno);
6877 sprintf(gifname,
"PMDXY%d.gif",runno);
6879 TH2F * hpmdXY =
new TH2F(
"hpmdXY",histname,100,-135,135,100,-135,135);
6880 TCanvas *pmdC2 =
new TCanvas(
"pmdC2",
"PMDXY canvas",800,800);
6881 hpmdXY->SetStats(kFALSE);
6883 hpmdXY->Draw(
"pmdC2");
6885 Int_t sm=0,row=0,col=0,chmod=-1;
6887 for(Int_t chain=1;chain<49;chain++){
6891 if(chain==1 || chain==7 || chain==19 || chain==20 ||
6892 chain==23 || chain==24)
6895 if(year==10||year==11||year==12){
6896 if(chain==8||chain==12||chain==23||chain==24){bmax[chain]=36;}
6899 for (Int_t chain=firstchain;chain<=lastchain;chain++){
6902 for(Int_t chan = 0;chan<27*64;chan++){
6905 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod);
6907 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod,year);
6910 if(mapcheck==
kStOK && sm>0){
6911 Float_t xreal = 0, yreal =0, eta=0,phi=0;
6914 hpmdXY->Fill(xreal,yreal);
6918 pmdC2->Print(gifname,
"gif");
6923 readBoardDetail(runno);
6926 GetRunYear(runno,rn,year);
6927 cout<<
"runnumber = "<<rn<<
" year="<<year<<endl;
6932 sprintf(histname,
"CPVetaphi%d",runno);
6933 sprintf(gifname,
"CPVetaphi%d.gif",runno);
6935 sprintf(histname,
"PMDetaphi%d",runno);
6936 sprintf(gifname,
"PMDetaphi%d.gif",runno);
6938 TH2F * hpmdetaphi =
new TH2F(
"hpmdetaphi",histname,40,-4.0,-2.0,180,-1.0*TMath::Pi(),TMath::Pi());
6939 TCanvas *pmdC3 =
new TCanvas(
"pmdC3",
"PMDetaphi canvas",800,800);
6940 hpmdetaphi->SetStats(kFALSE);
6942 hpmdetaphi->Draw(
"pmdC3");
6944 Int_t sm,row,col,chmod;
6946 for(Int_t chain=1;chain<49;chain++){
6950 if(chain==1 || chain==7 || chain==19 || chain==20 ||
6951 chain==23 || chain==24)
6954 if(year==10||year==11||year==12){
6955 if(chain==8||chain==12||chain==23||chain==24){bmax[chain]=36;}
6958 for (Int_t chain=firstchain;chain<=lastchain;chain++){
6961 for(Int_t chan = 0;chan<27*64;chan++){
6964 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod);
6966 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod,year);
6969 if(mapcheck==
kStOK && sm>0){
6970 Float_t xreal = 0, yreal =0, eta=0,phi=0;
6973 hpmdetaphi->Fill(eta,phi);
6977 pmdC3->Print(gifname,
"gif");
6982 readBoardDetail(runno);
6985 GetRunYear(runno,rn,year);
6991 sprintf(histname,
"CPV%d",runno);
6992 sprintf(gifname,
"CPV%d.gif",runno);
6994 sprintf(histname,
"PMD%d",runno);
6995 sprintf(gifname,
"PMD%d.gif",runno);
6998 TH2F * hpmdxy =
new TH2F(
"hpmdxy",histname,100,-135,135,100,-135,135);
6999 TCanvas *pmdC =
new TCanvas(
"pmdC",
"PMD canvas",800,800);
7000 hpmdxy->SetStats(kFALSE);
7002 hpmdxy->Draw(
"pmdC");
7003 Int_t sm,row,col,chmod;
7004 Float_t xcon[5],ycon[5];
7007 for(Int_t chain=1;chain<49;chain++){
7011 if(chain==1 || chain==7 || chain==19 || chain==20 ||
7012 chain==23 || chain==24)
7015 if(year==10||year==11||year==12){
7016 if(chain==8||chain==12||chain==23||chain==24){bmax[chain]=36;}
7019 for (Int_t chain=firstchain;chain<=lastchain;chain++){
7021 Int_t workingboard = 0;
7022 Float_t xboard[27],yboard[27];
7023 Int_t workingchannel = 0;
7025 for(Int_t chan = 0;chan<27*64;chan++){
7028 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod);
7030 mapcheck = ChainMapping(chain,chan,sm,col,row,chmod,year);
7034 if(mapcheck==
kStOk && sm > 0){
7036 DrawRhombus(chain,chan,sm,row,col,icorner,xcon,ycon);
7038 xboard[workingboard]=0;
7039 yboard[workingboard]=0;
7040 for(Int_t i=0;i<4;i++){
7041 xboard[workingboard]=xboard[workingboard]+xcon[i];
7042 yboard[workingboard]=yboard[workingboard]+ycon[i];
7045 xboard[workingboard]=xboard[workingboard]/4;
7046 yboard[workingboard]=yboard[workingboard]/4;
7058 cout<<
"working channels are "<<workingchannel<<endl;
7059 cout<<
"working boards are "<<workingboard<<endl;
7063 Float_t xmboard[27];
7064 for(Int_t ib=0;ib<27;ib++){xmboard[ib]=-1*xboard[ib];}
7065 dchain =
new TPolyLine(workingboard,xmboard,yboard);
7067 dchain =
new TPolyLine(workingboard,xboard,yboard);
7069 dchain->SetLineWidth(2);
7070 dchain->SetLineColor(2);
7073 sprintf(chainnum,
"%d",chain);
7075 TLatex* chainno =
new TLatex(-xboard[0]+1,yboard[0]+1,chainnum);
7076 TMarker * startchain =
new TMarker(-xboard[0],yboard[0],20);
7077 startchain->SetMarkerColor(2);
7079 chainno->SetTextSize(0.04);
7082 TLatex* chainno =
new TLatex(xboard[0]+1,yboard[0]+1,chainnum);
7083 TMarker * startchain =
new TMarker(xboard[0],yboard[0],20);
7084 startchain->SetMarkerColor(2);
7086 chainno->SetTextSize(0.05);
7091 pmdC->Print(gifname,
"gif");
7095 void StPmdGeom::DrawRhombus(Int_t chain,Int_t chan,Int_t sm, Int_t row, Int_t col, Int_t& icorner,Float_t* xcon,Float_t* ycon)
7097 Float_t xreal,yreal,eta,phi;
7098 if(row%8==1 && col%8==1){
7100 xcon[0]=xreal;ycon[0]=yreal;
7101 xcon[4]=xreal;ycon[4]=yreal;
7104 if(row%8==1 && col%8==0){
7106 xcon[1]=xreal;ycon[1]=yreal;
7109 if(row%8==0 && col%8==0){
7111 xcon[2]=xreal;ycon[2]=yreal;
7114 if(row%8==0 && col%8==1){
7116 xcon[3]=xreal; ycon[3]=yreal;
7127 TPolyLine * rhombus;
7129 for(Int_t rh=0;rh<=5;rh++){xrhomb[rh]=-1*xcon[rh];}
7130 rhombus =
new TPolyLine(5,xrhomb,ycon);
7132 rhombus =
new TPolyLine(5,xcon,ycon);
7135 rhombus->SetLineWidth(1);
7136 rhombus->SetLineColor(1);
7150 void StPmdGeom::GetRunYear(Int_t runno,Int_t&rn,Int_t&year){
7154 year = Int_t(runno/1000000);
7155 Int_t rest = runno-year*1000000;
7156 rn = Int_t(rest/1000);
7161 Int_t StPmdGeom::GetNBoardsChain(Int_t chain){
7163 Int_t aliveboard = 0;
7164 for(Int_t i=0;i<36;i++){
7165 if (status[chain-1][i]==1) aliveboard++;
7172 void StPmdGeom::GetNBoardsSM(Int_t year , Int_t * aliveboard){
7176 for(Int_t i=0;i<24;i++){
7180 for(Int_t chain = 1;chain<=48;chain++){
7181 for(Int_t brd = 0;brd<27;brd++){
7182 channel = brd*64 + 10;
7183 Int_t supmod,col,row,chmod;
7186 mapcheck = ChainMapping(chain,channel,supmod,col,row,chmod);
7188 mapcheck = ChainMapping(chain,channel,supmod,col,row,chmod,year);
7190 if(mapcheck==
kStOk && supmod > 0) {
7191 aliveboard[supmod-1]++;
void drawPMDetaphi(Int_t, Int_t, Int_t)
virtual ~StPmdGeom()
A constructor.
void Sim2Detmap(Int_t &, Int_t &, Int_t &)
function for convering supermodule,row,col (from GEANT) to supermodule,row,col as in hardware...
void Cell_eta_phi(Float_t, Float_t, Float_t &, Float_t &)
function for calculating eta,phi from x, y
void DetCell_xy(Int_t, Float_t, Float_t, Float_t &, Float_t &, Float_t &, Float_t &)
function for converting supermodule,row,col to x,y,eta,phi after conversionfrom 17 to 12 supermodule ...
StPmdGeom()
A constructor.
void Cell_xy(Int_t, Int_t, Int_t, Float_t &, Float_t &, Float_t &, Float_t &)
function for converting supermodule,row,col to x,y position,eta and phi values of the cell ...
Int_t NModule(Int_t, Int_t, Int_t &)
A destructor.
void drawPMDXY(Int_t, Int_t, Int_t)
void drawPMD(Int_t, Int_t, Int_t)
void IntDetCell_xy(Int_t, Int_t, Int_t, Float_t &, Float_t &, Float_t &, Float_t &)
function for converting supermodule,row,col to x,y,eta,phi after conversionfrom 17 to 12 supermodule ...