Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / FMD / README
CommitLineData
53a08a19 1 README file for ALICE Forward Multiplicity Detector Off-line Code
2 =================================================================
3
4Introduction:
5-------------
6
7This file contains a short overview of the FMD code. It is by no
8means authoritative - only the code is good for that. However, I'll
9try to explain things a bit here.
10
11Structure:
12----------
13
14There are 4 libraries build for the FMD. These are
15
16* libFMDbase:
17 This contains the basic stuff, like data classes and managers.
18
19* libFMDsim:
20 This contains code used by the simulation only. That includes the
21 detector class AliFMD and it's derivatives. It also contains the
22 code for building the geometry, as well as the digitisers and raw
23 data writer.
24
25* libFMDrec:
26 Code needed for the reconstruction. This include the reconstruction
27 code itself, as well as a raw data reader.
28
29* libFMDutil:
30 This is a special library that contains various utility classes for
31 the FMD expert/developer/tester. It includes code to read all data
32 produced by the FMD, a simple event display, and code to make fake
33 calibration and alignment data. This library is _not_ loaded by
34 aliroot automatically. The user has to load it herself:
35
36 gSystem->Load("libFMDutil.so");
37
38The content of these libraries is detailed more below.
39
40libFMDbase:
41-----------
42
43This currently (18th or March 2006) contains the classes
44
45 AliFMDBaseDigit
46 AliFMDDigit
47 AliFMDSDigit
48 Base class for digits, real digits, and summable digits. The
49 are all data classes that holds the ADC value(s) for a single
50 strip.
51
52 AliFMDBoolMap:
53 A map of booleans, one for each strip.
54
55 AliFMDUShortMap:
56 A map of unsigned short integers, one for each strip.
57
58 AliFMDDetector
59 AliFMD1
60 AliFMD2
61 AliFMD3:
62 3 classes that holds the parameters for each of the 3
63 FMD sub-detectors. These derive from AliFMDDetector, and are
64 managed by AliFMDGeometry. Each of these also contains the
65 translation from sensor reference frame to global reference
66 frame.
67
68 AliFMDRing:
69 Parameters for the FMD rings (inner and outer type). These are
70 managed by AliFMDGeometry.
71
72 AliFMDGeometry:
73 Manager of FMD geometry data. All code queries this manager
74 for geometry parameters, so that the data is always consistent.
75
76 AliFMDParameters:
77 Manager of FMD parameters, like calibration parameters. This
78 class fetches data from CDB if necessary. All code queries
79 this manager for parameters, so that the data is always
80 consistent.
81
82 AliFMDCalibPedestal
83 AliFMDCalibGain
84 AliFMDCalibSampleRate
85 AliFMDAltroMapping:
86 Containers of calibration parameters. These correspond to the
87 pedestal and its width, the gain of each strip, the
88 oversampling rate used in read-out, and the map from hardware
89 address to detector.
90
91
92libFMDsim:
93----------
94
95This currently (18th or March 2006) contains the classes
96
97 AliFMDEdepMap
98 Cache of energy deposited and total number of hits for each
99 strip. The digitiser AliFMDDigitizer uses this to store
100 simulation data before making digits.
101
102 AliFMDHit
103 A hit in the FMD active elements, as described by the
104 simulation back-end during transport.
105
106 AliFMD
107 AliFMDv0
108 AliFMDv1
109 Simulation drivers for the FMD. AliFMD is the base
110 class. AliFMDv0 corresponds to a simulation where no hits are
111 created, but the material distribution is right. AliFMDv1 is
112 like AliFMDv0, except that hits are produced.
113
114 AliFMDGeometryBuilder
115 Build the FMD geometry in terms of TGeo objects. The
116 information for building the geometry is retrieved from
117 AliFMDGeometry.
118
119 AliFMDBaseDigitizer
120 AliFMDDigitizer
121 AliFMDSDigitizer
122 Base class for the digitisers. AliFMDDigitizer makes `real'
123 digits (AliFMDDigit) from hits, and AliFMDSDigitizer makes
124 summable digits from hits.
125
126 AliFMDRawWriter
127 Writes a pseudo raw data file from the digits created by the
128 digitisers. It uses the AliFMDAltroMapping from
129 AliFMDParameters to make the mapping from detector coordinates
130 to hardware addresses.
131
132libFMDrec:
133----------
134
135This currently (18th or March 2006) contains the classes
136
137 AliFMDReconstructor
138 Reconstruct (in a naiive way) the charged particle
139 multiplicity in the FMD strips. This also writes an
140 AliESDFMD object to the ESD files (that class is in libESD).
141
142 AliFMDRecPoint
143 Reconstructed point in the FMD. These objects are made
144 AliFMDReconstructor.
145
146 AliFMDRawStream
147 AliFMDRawReader
148 Classes to read raw data files.
149
150libFMDutil:
151-----------
152
153This currently (18th or March 2006) contains the classes
154
155 AliFMDInput
156 AliFMDInputHits
157 AliFMDInputDigits
158 AliFMDInputSDigits
159 AliFMDInputRecPoints
160 Base class, and concrete classes to read in FMD generated
161 data. These provide a simple and unified way of getting the
162 data. Hooks are defined to process hits, tracks, digits, and
163 reconstructed points, as well as geometry and ESD data. See
164 for example the scripts `DrawHits.C', `DrawHitsDigits.C',
165 `DrawHitsRecs.C', `DrawDigitsRecs.C' in the `scripts'
166 sub-directory.
167
168 AliFMDDisplay
169 Simple event display for FMD data, including hits, digits,
170 reconstructed points and ESD data.
171
172 AliFMDCalibFaker
173 AliFMDAlignFaker
174 Classes to write fake (or dummy) calibration and alignment
175 data. These derive from TTask. The usage of these classes
176 is simple:
177
178 AliFMDCalibFaker f;
179 f.Set... // Set parameters if needed
180 f.Exec();
181
182Authors:
183--------
184
185 Alla Maevskaya <Alla.Maevskaia@cern.ch>
186 Christian Holm Christensen <cholm@nbi.dk>
187
188----------------------------------------------------------------------
189Local Variables:
190 mode: text
191End:
192
193 LocalWords: libFMDbase libFMDsim AliFMD libFMDutil aliroot gSystem naiive ESD
194 LocalWords: CDB AliFMDGeometry AliFMDDetector AliFMDUShortMap AliFMDBoolMap
195 LocalWords: AliFMDBaseDigit AliFMDDigit AliFMDSDigit AliFMDRing AliFMDEdepMap
196 LocalWords: AliFMDParameters AliFMDCalibPedestal AliFMDCalibGain AliFMDHit
197 LocalWords: AliFMDCalibSampleRate AliFMDAltroMapping AliFMDv AliFMDDigitizer
198 LocalWords: AliFMDGeometryBuilder AliFMDBaseDigitizer AliFMDSDigitizer TGeo
199 LocalWords: AliFMDRawWriter libFMDrec AliESDFMD AliFMDReconstructor libESD
200 LocalWords: AliFMDRecPoint AliFMDRawStream AliFMDRawReader AliFMDInput TTask
201 LocalWords: AliFMDInputHits AliFMDInputDigits AliFMDInputSDigits Maevskaya
202 LocalWords: AliFMDInputRecPoints AliFMDDisplay AliFMDCalibFaker Holm booleans
203 LocalWords: AliFMDAlignFaker