]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/READMEmapping.txt
6189e6e3977f7e37106459f35f6ad10240b95bbb
[u/mrichter/AliRoot.git] / MUON / READMEmapping.txt
1 // $Id$
2
3 /*! 
4
5 \page README_mapping Mapping
6  
7
8 See the detailed description of the mapping package in ALICE-INT-2003-025.
9 Since that time the mapping has been extended for slat and trigger
10 chamber segmentations an later on also to hold the description of the
11 top level connections of detection elements, including information
12 about DDLs, bus patches and also trigger configuration.
13
14 \section mapping_s1  Graphical User Interface
15   
16 To use the GUI to plot DE segmentation run:
17
18 <pre>
19 new AliMpDEVisu();
20 </pre>
21
22 or
23
24 <pre>
25 new AliMpDEVisu(w, h);
26 </pre>
27
28 if you want to change the size of the GUI window.
29 Typical value are:
30 <pre>
31   w = 1200, h = 600 for PC
32   w = 1000, h = 550 for laptop
33 </pre>
34
35 The GUI allows:
36 - drawing motif of a slat/quadrant
37 - search of a given manu (motif) number
38 - draw the channel number for a given manu number by clicking of the motif in canvas
39 - write down in log message informations about the given detection element
40   * DE Id, DE name, 
41   * number of buspatches, manus, manu serials
42 - option to save log message onto disc
43
44 \section mapping_s2 Test macros
45
46 A set of tests macros have been written during the development
47 of the mapping classes. To run these macros:
48
49 <pre>
50    cd ../mapping/macro
51    root
52    root [0] .x testMacroName.C    
53 </pre>
54                    
55
56 \section mapping_s3  Data files format
57
58 \subsection mapping_s3_sub1  zones.dat
59
60 Describes layout of zones, rows, row segments, subzones, motifs
61
62 <pre>
63   SECTOR_DATA
64     number of zones  
65     number of rows  
66     direction of constant pad size (X or Y)
67     offset in X direction
68     offset in Y direction
69   
70   ZONE     
71     number of zone  
72     half legth of pad size in x  
73     half legth of pad size in y
74
75   SUBZONE  
76     motif id  
77     motif type_id       
78
79   ROW_SEGMENT  
80     x offset (in number of pads) 
81     y offset (in number of pads) 
82     row number 
83     nof motifs 
84     first motif position Id
85     step to the next motif position Id (+1 or -1)
86 </pre>
87   
88
89 \subsection mapping_s3_sub2  zones_special.dat
90
91 Describes layout of special row segments (with irregular motifs)
92
93 <pre>
94   SECTOR_SPECIAL_DATA
95
96   MOTIF
97     zone id
98     motif id  
99     motif type_id       
100
101   ROW
102     row number
103   
104   PAD_ROWS
105     number of these pad rows in row   
106   
107   PAD_ROW_SEGMENT
108     mumber of pads in the rows segment  
109     motif id  
110     motif position id
111   
112   motifX.dat
113   ----------
114   Describes characteristics of the motif type X
115
116   In lines:
117     Berg number
118     Kapton number
119     Pad number
120     Gassi number
121 </pre>
122
123
124 \subsection mapping_s3_sub3  motifSpecialX.dat
125
126 Describes characteristics of the special motif with motif Id X;
127 the special motif caontains pads of different size
128
129 <pre>
130   In lines:
131     pad index i (in x)
132     pad index j (in y)
133     half legth of pad size in x  
134     half legth of pad size in y
135 </pre>
136   
137 \subsection mapping_s3_sub4  padPosX.dat
138
139 Maps pad numbers used in the motifX.dat files to
140 the local pad indices (i,j)
141
142 <pre>
143   In lines:
144     Pad number
145     pad index i (in x)
146     pad index j (in y)
147 </pre>
148   
149
150 \subsection mapping_s3_sub5  *.pcb files
151
152 Lines starting with # are comments.
153
154 <pre>
155   SIZES PadSizeX PadSizeY SizeX SizeY (cm)
156
157   MOTIF motifType ix iy
158   MOTIF motifType ix iy
159   ...
160 </pre>
161
162 where ix, iy are the local coordinates (in pad unit) of the
163 lower-left corner of the motif (0,0 is the lower-left corner
164 of the PCB).
165
166 PCB *MUST* be described in a rotating way, starting lower-left and 
167 then counter-clockwise, otherwise the manu-to-motif association 
168 (fixed in the slat definition files) will be wrong.
169
170 Note that for "full" PCBs, the SizeX and SizeY are redundant as they could be 
171 computed from the motif alone (but that serves as a cross-check that the motif 
172 pattern given is ok). That's not the case for short or rounded PCB though.
173
174
175 \subsection mapping_s3_sub6  *.slat files
176
177 A slat is defined by the list of its PCB, described starting 
178 from the beam and going outward.
179
180 One PCB per line, preceded by the keyword PCB
181 Other lines not matching this syntax are ignored.
182 After the PCB is the list of manu ids for this PCB.
183
184 Example :
185
186 <pre>
187   PCB X 1-3;24-20;42;44;53
188   PCB X 1-14
189   PCB Y 100-90
190   PCB Z 1;2;3;4;5;6;7;12;120
191 </pre>
192
193 defines a slat with 4 PCBs : XXYZ
194
195 The manu to motif relationship is attached to the fact that we're counting 
196 counter-clockwise, starting on the lower-left of the PCB. (and the pcb files 
197 have to follow this convention to defined their motifs, otherwise all 
198 this won't work).
199
200 Note that the definition of the PCBs have to be in files with extension
201 .pcb (X.pcb, Y.pcb, Z.pcb)
202
203   
204 \subsection mapping_s3_sub7  DetElemIdToBusPatch.dat
205
206 Lines starting with # are comments.
207
208 Contains the detection element identifier with the associated buspatch numbers 
209 and the corresponding DDL identifier.
210 The link between buspatches and DE's is needed on the rawdata level to identify 
211 the type of quadrant/slat to get the corresponding mapping.
212 The DDL id is needed for the rawdata generation only.
213
214 To generate this file, the macro MUONGenerateBusPatch.C could be used.
215
216
217 \subsection mapping_s3_sub7  BusPatchSpecial.dat
218
219 Lines starting with # are comments.
220
221 Contains the list of bus patches which manu readout is
222 not in the standard order. The format:
223
224 <pre>
225 KEYWORD  DDLs  BusPatches [ManuIDs}
226          where KEYWORD = REVERT or EXPLICIT
227 </pre>
228
229 - For the bus patches following the REVERT keyword,
230   the manus are just reordered in a reverted order.
231 - For the bus patches following the EXPLICIT keyword,
232 the manus filled with a standard procedure (using the DetElemIdToBusPatch.dat
233 file) are replaced with the list of manus in this file.
234
235
236 \subsection mapping_s3_sub9  crate.dat
237   
238 Muon trigger electronics configuration file (decoded in class 
239 AliMUONTriggerCrateStore) directly copy/paste from the ALICE PRR 
240 ALICE-EN-2003-010. Gives local board number, name, 
241 crate name it belongs to, slot number, and internal switches 
242 (used in the algorithm).
243
244
245 \section mapping_s4  Units used
246  
247 Lengths are in centimeters.
248  
249 This chapter is defined in the READMEmapping.txt file.
250
251 */
252