]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/READMEmapping
Added a commented out version with new digitizers.
[u/mrichter/AliRoot.git] / MUON / READMEmapping
1  $Id$
2
3
4  The mapping package
5  ====================
6  
7  See detailed description in ALICE-INT-2003-025.
8
9  Units used
10  ============
11  
12  Lengths are in centimeters.
13  
14  Test macros
15  ============
16    cd ../mapping/macro
17    root
18    root [0] .x testMacroName.C    
19                         - see available macros below   
20                    
21    A set of test macros be run at once by test_suite.pl scripts:
22      test_suite.pl      - run all test macros and compare results with
23                           the reference output
24      test_suite_ref.pl  - generates reference output
25                           !! this script will overwrite the refence output
26                              provided with the source;
27                              it should be used only by developers 
28
29    Macros included in the test suite:
30      testReadSector.C
31      testReadMotifType.C
32      testGraphics.C        
33      testSectorFind.C
34      testPlaneFind.C
35      testPrintLimits.C         
36      testExistingPads.C    
37      testPadDimensions.C    
38      testSectorPadIterators.C
39      testMotifTypeIterators.C     
40      testNeighboursPadIterator.C  
41      testAnyPadIterators.C  
42      testPadsUp.C
43      testPlaneAreaIterator.C
44      
45    Other macros (not included in the test suite):
46      testAllIndices.C
47      testUpdateGlobalIndices.C
48    
49
50   Data files format
51   =================
52
53   zones.dat:
54   -------------
55   Describes layout of zones, rows, row segments, subzones, motifs
56
57   SECTOR_DATA
58     number of zones  
59     number of rows  
60     direction of constant pad size (X or Y)
61     offset in X direction
62     offset in Y direction
63   
64   ZONE     
65     number of zone  
66     half legth of pad size in x  
67     half legth of pad size in y
68
69   SUBZONE  
70     motif id  
71     motif type_id       
72
73   ROW_SEGMENT  
74     x offset (in number of pads) 
75     y offset (in number of pads) 
76     row number 
77     nof motifs 
78     first motif position Id
79     step to the next motif position Id (+1 or -1)
80   
81   zones_special.dat:
82   ------------------
83   Describes layout of special row segments (with irregular motifs)
84
85   SECTOR_SPECIAL_DATA
86
87   MOTIF
88     zone id
89     motif id  
90     motif type_id       
91
92   ROW
93     row number
94   
95   PAD_ROWS
96     number of these pad rows in row   
97   
98   PAD_ROW_SEGMENT
99     mumber of pads in the rows segment  
100     motif id  
101     motif position id
102   
103   motifX.dat
104   ----------
105   Describes characteristics of the motif type X
106
107   In lines:
108     Berg number
109     Kapton number
110     Pad number
111     Gassi number
112
113   motifSpecialX.dat
114   ------------------
115   Describes characteristics of the special motif with motif Id X;
116   the special motif caontains pads of different size
117
118   In lines:
119     pad index i (in x)
120     pad index j (in y)
121     half legth of pad size in x  
122     half legth of pad size in y
123   
124   padPosX.dat
125   -----------
126   Maps pad numbers used in the motifX.dat files to
127   the local pad indices (i,j)
128
129   In lines:
130     Pad number
131     pad index i (in x)
132     pad index j (in y)
133   
134
135   *.pcb files
136   ============
137
138   Lines starting with # are comments.
139
140   SIZES PadSizeX PadSizeY SizeX SizeY (cm)
141
142   MOTIF motifType ix iy
143   MOTIF motifType ix iy
144   ...
145
146   where ix, iy are the local coordinates (in pad unit) of the
147   lower-left corner of the motif (0,0 is the lower-left corner
148   of the PCB).
149
150   PCB *MUST* be described in a rotating way, starting lower-left and 
151   then counter-clockwise, otherwise the manu-to-motif association 
152   (fixed in the slat definition files) will be wrong.
153
154   Note that for "full" PCBs, the SizeX and SizeY are redundant as they could be 
155   computed from the motif alone (but that serves as a cross-check that the motif 
156   pattern given is ok). That's not the case for short or rounded PCB though.
157
158   *.slat files
159   =============
160
161   A slat is defined by the list of its PCB, described starting 
162   from the beam and going outward.
163
164   One PCB per line, preceded by the keyword PCB
165   Other lines not matching this syntax are ignored.
166   After the PCB is the list of manu ids for this PCB.
167  
168   Example :
169
170   PCB X 1-3;24-20;42;44;53
171   PCB X 1-14
172   PCB Y 100-90
173   PCB Z 1;2;3;4;5;6;7;12;120
174
175   defines a slat with 4 PCBs : XXYZ
176
177   The manu to motif relationship is attached to the fact that we're counting 
178   counter-clockwise, starting on the lower-left of the PCB. (and the pcb files 
179   have to follow this convention to defined their motifs, otherwise all 
180   this won't work).
181
182   Note that the definition of the PCBs have to be in files with extension
183   .pcb (X.pcb, Y.pcb, Z.pcb)
184
185   
186   DetElemIdToBusPatch.dat
187   =======================
188   Lines starting with # are comments.
189   
190   Contains the detection element identifier with the associated buspatch numbers 
191   and the corresponding DDL identifier.
192   The link between buspatches and DE's is needed on the rawdata level to identify 
193   the type of quadrant/slat to get the corresponding mapping.
194   The DDL id is needed for the rawdata generation only.
195
196   To generate this file, the macro MUONGenerateBusPatch.C could be used.