]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Starting buspatch on NB plane for station 1 & 2, real DDL sharing for station 3 ...
authormartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 27 Feb 2007 09:23:54 +0000 (09:23 +0000)
committermartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 27 Feb 2007 09:23:54 +0000 (09:23 +0000)
MUON/MUONGenerateBusPatch.C
MUON/mapping/data/DetElemIdToBusPatch.dat

index e1f8507780448a05e18a1f44b5195fc4b61053c7..230ca98a9810c6770ef61c25df49e86382260126 100644 (file)
@@ -22,8 +22,9 @@ void MUONGenerateBusPatch()
   // the number of bus patches per slat (and also number of Translator and Bridge Boards).
   // Generates an output file DetElemIdToBusPatch.dat.out, preserve from overwriting
   // (Ch. Finck, July 05)
-  // (Nov. 05,  added DDL)
+  // (Nov. 05, added DDL)
   // (June 06, correction for St123)
+  // (Feb. 07, add 1st manu list for St12 (starting on NB !) and new ddl sharing for station 3)
 
 
   TString dirPath2 = gSystem->Getenv("ALICE_ROOT");
@@ -52,9 +53,19 @@ void MUONGenerateBusPatch()
                    300, 301, 302, 303,
                    400, 401, 402, 403};
 
-  Int_t idSt3swp1 = 5; // 1/4 chamber for DDL on horizontal
-  Int_t idSt3swp2 = 9; // 1/4 chamber for DDL on horizontal
-  Int_t idSt3swp3 = 14; // 1/4 chamber for DDL on horizontal
+  Char_t manuListSt1[] 
+      = " 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257";
+
+  Char_t manuListSt2[] 
+      = " 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269";
+
+  Int_t idCh5swp1 = 5; // 1/4 chamber for DDL on horizontal
+  Int_t idCh5swp2 = 10; // 1/4 chamber for DDL on horizontal
+  Int_t idCh5swp3 = 14; // 1/4 chamber for DDL on horizontal
+
+  Int_t idCh6swp1 = 5; // 1/4 chamber for DDL on horizontal
+  Int_t idCh6swp2 = 9; // 1/4 chamber for DDL on horizontal
+  Int_t idCh6swp3 = 14; // 1/4 chamber for DDL on horizontal
 
   Int_t idSt45swp1 = 7; // half chamber for DDL in vertical cutting twice the official numbering
   Int_t idSt45swp2 = 20;
@@ -62,8 +73,9 @@ void MUONGenerateBusPatch()
   Int_t iDDL = 0;
   // station 1 & 2
   nbBusPatch = 24;
+  Int_t nbHalfBusPatch =  nbBusPatch/2;
   cout << "#DE BusPatch DDL SlatName" << endl;
-  out << "#DE BusPatch DDL " << endl;
+  out << "#DE BusPatch DDL  1st manu in buspatch" << endl;
 
   for (Int_t j = 0; j < 16; j++) {
 
@@ -78,15 +90,26 @@ void MUONGenerateBusPatch()
       iDDL++;
       begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1);
     }
+   
     if (idDE % 100 == 3) {
       iDDL--;
       begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1) + nbBusPatch;
     }
+
     end[cursor]     = begin[cursor] + nbBusPatch - 1;
     begin[++cursor] = end[cursor] + 1;
 
-    cout << idDE << " " << begin[cursor-1]<<"-"<<end[cursor-1]  <<" " << iDDL-1 << endl;
-    out << idDE << " " << begin[cursor-1]<<"-"<<end[cursor-1] <<" " << iDDL-1  <<endl;
+    cout << idDE << " " << begin[cursor-1] + nbHalfBusPatch << "-" <<end[cursor-1] << ";" <<
+       begin[cursor-1] << "-" << end[cursor-1] - nbHalfBusPatch << " " << iDDL-1 << endl;
+
+    if (idDE < 300 )
+       out << idDE  << " " << begin[cursor-1] + nbHalfBusPatch << "-" <<end[cursor-1] << ";" <<
+           begin[cursor-1]     << "-" << end[cursor-1] - nbHalfBusPatch << " " << iDDL-1 <<
+           manuListSt1 << endl;
+    else
+       out << idDE  << " " << begin[cursor-1] + nbHalfBusPatch << "-" <<end[cursor-1] << ";" <<
+           begin[cursor-1]     << "-" << end[cursor-1] - nbHalfBusPatch << " " <<  iDDL-1 <<
+           manuListSt2  << endl;
     if (idDE % 100 == 3) iDDL++;
 
   }
@@ -111,6 +134,10 @@ void MUONGenerateBusPatch()
   Int_t nbBusSt45Tot = 0;
   Int_t nbBusSt45Swap = 0;
 
+  Int_t nbBus500 = 4; // number of buspatch in DE 500
+  Int_t nbDDL500 = 11; // DDL number for DE 500
+  Int_t offsetBus500 = 13; // number of buspatches in DDL 11 before DE 500
+
   // reads from file
   while ( in.getline(line,80) ) {
 
@@ -150,10 +177,11 @@ void MUONGenerateBusPatch()
     // station 3
     // for buspatch length reasons, one ddl connects one 1/4 of two chambers
     // really messy isn't it ? 
+    // much more with the new DDL sharing for station 3
 
     if (idDE < 700 ) {
 
-      if (idDE == 500) {
+      if (idDE == 501) {
        iDDL++;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1);
        nbBusSt3Tot1 = 0; 
@@ -164,10 +192,21 @@ void MUONGenerateBusPatch()
        out  << "# Chamber " << idDE/100 << endl;
       }
 
+      // taking into account that idDE = 500 is connected to ddl = 11;
+      if (idDE == 500) {
+       cout << idDE << " " << AliMpBusPatch::GetGlobalBusID(offsetBus500, nbDDL500)<<"-"
+            << AliMpBusPatch::GetGlobalBusID(offsetBus500, nbDDL500) + nbBus500 -1
+            << " " << nbDDL500 << " " <<nameSlat <<endl;
+
+               out << idDE << " " << AliMpBusPatch::GetGlobalBusID(offsetBus500, nbDDL500)<<"-"
+           << AliMpBusPatch::GetGlobalBusID(offsetBus500, nbDDL500) + nbBus500 -1
+            << " " << nbDDL500 <<endl;
+       continue;
+      }
       nbBusSt3Tot1 +=  nbBusPatch;
 
       // second 1/4 for chamber 5
-      if (idDE == 500+idSt3swp1) {
+      if (idDE == 500+idCh5swp1) {
        iDDLSt3Swap1 =  iDDL++;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1);
        nbBusSt3Swap1 = nbBusSt3Tot1 - nbBusPatch;
@@ -181,7 +220,7 @@ void MUONGenerateBusPatch()
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(nbBusSt3Swap1, iDDL-1);
       }
       // third 1/4 for chamber 5
-      if (idDE == 500+idSt3swp2) {
+      if (idDE == 500+idCh5swp2) {
        iDDL = iDDLSt3Swap1+1;
        iDDLSt3Swap2 =  iDDL++;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1);
@@ -192,13 +231,13 @@ void MUONGenerateBusPatch()
       nbBusSt3Tot2 +=  nbBusPatch;
 
       // second 1/4 chamber 6
-     if (idDE == 600 +idSt3swp1) {
+     if (idDE == 600 +idCh6swp1) {
        iDDL = iDDLSt3Swap2;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(nbBusSt3Swap2, iDDL-1);
       }
     
      // fourth 1/4 chamber 5
-     if (idDE == 500+idSt3swp3) {
+     if (idDE == 500+idCh5swp3) {
        iDDL = iDDLSt3Swap2+1;
        iDDLSt3Swap3 =  iDDL++;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(0, iDDL-1);
@@ -213,7 +252,7 @@ void MUONGenerateBusPatch()
      if (idDE == 600)
        nbBusSt3Swap4 = nbBusSt3Tot4;
 
-     if (idDE == 600 +idSt3swp2) {
+     if (idDE == 600 +idCh6swp2) {
        iDDL = iDDLSt3Swap3;
        begin[cursor] = AliMpBusPatch::GetGlobalBusID(nbBusSt3Swap3, iDDL-1);
        nbBusSt3Tot4 +=  nbBusPatch;
@@ -221,9 +260,9 @@ void MUONGenerateBusPatch()
       nbBusSt3Tot4 +=  nbBusPatch;
 
      // fourth 1/4 chamber 6
-    if (idDE == 600 +idSt3swp3) {
+    if (idDE == 600 +idCh6swp3) {
        iDDL = iDDLSt3Swap3+1;
-       begin[cursor] = AliMpBusPatch::GetGlobalBusID(nbBusSt3Swap4, iDDL-1);
+       begin[cursor] = AliMpBusPatch::GetGlobalBusID(nbBusSt3Swap4 + nbBus500, iDDL-1);
       }
 
       end[cursor]     = begin[cursor] + nbBusPatch - 1;
index 9fd9c146572baf3be9af79da4bdf6eb39954906f..01ea2988094e18a81954866c8d023b5867ba58ba 100644 (file)
@@ -1,62 +1,62 @@
 #DE BusPatch DDL  1st manu in buspatch
 # Chamber 1
-100 0-23    0 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-101 100-123 1 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-102 124-147 1 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-103 24-47   0 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+100 12-23;0-11 0 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+101 112-123;100-111 1 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+102 136-147;124-135 1 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+103 36-47;24-35 0 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
 # Chamber 2
-200 200-223 2 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-201 300-323 3 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-202 324-347 3 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
-203 224-247 2 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+200 212-223;200-211 2 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+201 312-323;300-311 3 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+202 336-347;324-335 3 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
+203 236-247;224-235 2 1,27,53,79,105,131,157,183,201,214,224,232,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1249,1257
 # Chamber 3
-300 400-423 4 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-301 500-523 5 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-302 524-547 5 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-303 424-447 4 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+300 412-423;400-411 4 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+301 512-523;500-511 5 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+302 536-547;524-535 5 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+303 436-447;424-435 4 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
 # Chamber 4
-400 600-623 6 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-401 700-723 7 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-402 724-747 7 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
-403 624-647 6 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+400 612-623;600-611 6 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+401 712-723;700-711 7 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+402 736-747;724-735 7 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
+403 636-647;624-635 6 1,27,53,79,105,131,157,183,201,214,226,246,1025,1051,1077,1103,1129,1155,1181,1207,1225,1238,1251,1269
 # Chamber 5
-500 800-803 8
-501 804-808 8
-502 809-812 8
-503 813-814 8
-504 815-816 8
+500 1113-1116 11
+501 800-804 8
+502 805-808 8
+503 809-810 8
+504 811-812 8
 505 900-901 9
 506 902-903 9
 507 904-907 9
 508 908-912 9
-509 1000-1003 10
-510 1004-1008 10
-511 1009-1012 10
-512 1013-1014 10
-513 1015-1016 10
+509 913-916 9
+510 1000-1004 10
+511 1005-1008 10
+512 1009-1010 10
+513 1011-1012 10
 514 1100-1101 11
 515 1102-1103 11
 516 1104-1107 11
 517 1108-1112 11
 # Chamber 6
-600 817-820 8
-601 821-825 8
-602 826-829 8
-603 830-831 8
-604 832-833 8
-605 913-914 9
-606 915-916 9
-607 917-920 9
-608 921-925 9
-609 1017-1020 10
-610 1021-1025 10
-611 1026-1029 10
-612 1030-1031 10
-613 1032-1033 10
-614 1113-1114 11
-615 1115-1116 11
-616 1117-1120 11
-617 1121-1125 11
+600 813-816 8
+601 817-821 8
+602 822-825 8
+603 826-827 8
+604 828-829 8
+605 917-918 9
+606 919-920 9
+607 921-924 9
+608 925-929 9
+609 1013-1016 10
+610 1017-1021 10
+611 1022-1025 10
+612 1026-1027 10
+613 1028-1029 10
+614 1117-1118 11
+615 1119-1120 11
+616 1121-1124 11
+617 1125-1129 11
 # Chamber 7
 700 1200-1203 12
 701 1204-1208 12