]>
Commit | Line | Data |
---|---|---|
50837721 | 1 | /************************************************************************** |
2 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
3 | * * | |
4 | * Author: The ALICE Off-line Project. * | |
5 | * Contributors are mentioned in the code where appropriate. * | |
6 | * * | |
7 | * Permission to use, copy, modify and distribute this software and its * | |
8 | * documentation strictly for non-commercial purposes is hereby granted * | |
9 | * without fee, provided that the above copyright notice appears in all * | |
10 | * copies and that both the copyright notice and this permission notice * | |
11 | * appear in the supporting documentation. The authors make no claims * | |
12 | * about the suitability of this software for any purpose. It is * | |
13 | * provided "as is" without express or implied warranty. * | |
14 | **************************************************************************/ | |
15 | ||
16 | /* $Id$ */ | |
17 | ||
88cb7938 | 18 | ========================================================== |
19 | Please add to this README file all information concerning | |
20 | config files, simulation, digitalization, clusterization, | |
21 | reconstruction and macro analysis | |
22 | ||
23 | ========================================================== | |
7985603c | 24 | How to run a MUON generation |
88cb7938 | 25 | ========================================================== |
26 | aliroot | |
27 | root [0] gAlice->Run(10,"$ALICE_ROOT/MUON/Config_MUON_test.C"); | |
28 | ||
29 | 1 single muon of 7 GeV/c in the MUON spectrometer | |
30 | acceptance will be simulated using geant3. | |
31 | Hit information will be store in the root file in the | |
32 | execution directory. | |
88cb7938 | 33 | If you want to change the option or to define a new directory |
34 | for hits, you have to do the following before: | |
35 | root [0] gAlice->SetConfigFunction("Config( \"/home/martinez/aliroot/work_NewIO/test/\" , \"box\" );"); | |
36 | ||
37 | ============================================================ | |
9f532ceb | 38 | How to run MUON Hits to SDigits |
39 | ============================================================ | |
3b1e853d | 40 | AliRunDigitizer * manager = new AliRunDigitizer(1,1); |
41 | manager->SetInputStream(0,"galice.root"); | |
42 | AliMUONDigitizer * dMUON = new AliMUONSDigitizerv1(manager); | |
43 | manager->AddDigitizer(dMUON); | |
44 | manager->Exec("deb"); | |
9f532ceb | 45 | |
46 | ||
47 | ============================================================ | |
48 | How to run MUON Digitalization from SDigits | |
49 | ============================================================ | |
50 | To process the digitalization of hits the AliRunDigitizer | |
51 | framework is used: | |
52 | ||
53 | AliRunDigitizer * manager = new AliRunDigitizer(1,1); | |
54 | manager->SetInputStream(0,"galice.root"); | |
55 | AliMUONDigitizerv2* dMUON = new AliMUONDigitizerv2(manager) | |
56 | manager->AddDigitizer(dMUON); | |
57 | manager->Exec("deb"); | |
58 | ||
59 | ||
60 | ============================================================ | |
61 | How to run MUON Digitalization from Hits | |
88cb7938 | 62 | ============================================================ |
63 | To process the digitalization of hits the AliRunDigitizer | |
64 | framework is used: | |
65 | ||
2058bf30 | 66 | AliRunDigitizer * manager = new AliRunDigitizer(1,1); |
67 | manager->SetInputStream(0,"galice.root"); | |
e6dd99fc | 68 | AliMUONDigitizerv1* dMUON = new AliMUONDigitizerv1(manager) |
2058bf30 | 69 | manager->AddDigitizer(dMUON); |
70 | manager->Exec("deb"); | |
88cb7938 | 71 | |
72 | ============================================================ | |
73 | How to run MUON RecPoint clusterization | |
74 | ============================================================ | |
75 | aliroot -b << EOF | |
278a86d5 | 76 | .includepath $ALICE_ROOT/STEER |
77 | .includepath $ALICE_ROOT/MUON | |
78 | .L $ALICE_ROOT/MUON/MUONrawclusters.C++ | |
bf17dbfd | 79 | MUONrawclusters("galice.root",0,9999); |
80 | to Load | |
81 | gSystem->Load("$ALICE_ROOT/MUON/MUONrawclusters_C.so") | |
88cb7938 | 82 | |
88cb7938 | 83 | ============================================================ |
84 | How to run MUON Trigger | |
85 | ============================================================ | |
ba9436c6 | 86 | .includepath $ALICE_ROOT/STEER |
87 | .includepath $ALICE_ROOT/MUON | |
88 | .L $ALICE_ROOT/MUON/MUONtrigger.C++ | |
bf17dbfd | 89 | MUONtrigger("galice.root",0,9999); |
50837721 | 90 | To Load |
91 | gSystem->Load("$ALICE_ROOT/MUON/MUONtrigger_C.so") | |
2b32c661 | 92 | |
88cb7938 | 93 | ============================================================ |
dcd2690d | 94 | How to run MUON Tracking reconstruction (old output) |
fb76e306 | 95 | =========================================================== |
2058bf30 | 96 | .includepath $ALICE_ROOT/STEER |
97 | .includepath $ALICE_ROOT/MUON | |
98 | .L $ALICE_ROOT/MUON/MUONrecoNtuple.C++ | |
50837721 | 99 | MUONrecoNtuple(0,9999,0,"galice.root") |
100 | To Load | |
101 | gSystem->Load("$ALICE_ROOT/MUON/MUONrecoNtuple_C.so") | |
88cb7938 | 102 | First event and last event are given by hand, but this will change. |
103 | ||
dcd2690d | 104 | =========================================================== |
105 | How to run MUON Tracking reconstruction (new output) | |
106 | =========================================================== | |
107 | .includepath $ALICE_ROOT/STEER | |
108 | .includepath $ALICE_ROOT/MUON | |
109 | .L $ALICE_ROOT/MUON/MUONTracker.C++ | |
bf17dbfd | 110 | MUONTracker("galice.root",0,9999); |
50837721 | 111 | To Load |
112 | gSystem->Load("$ALICE_ROOT/MUON/MUONTracker_C.so") | |
dcd2690d | 113 | Output in MUON.Tracks.root using the new IO |
114 | as a TClonesArray of AliMUONTrack | |
115 | ||
374ebd7d | 116 | Note1.In the actual version (dec-03) the following data |
117 | members of ALiMUONTrack: fgFitter, fEventReconstructor, | |
118 | and fTrackHitsPtr are not saved in the MUON.Track.root file | |
119 | ||
9f532ceb | 120 | |
a3448039 | 121 | =========================================================== |
122 | How to run MUON Trigger Track reconstruction (new output) | |
123 | =========================================================== | |
124 | .includepath $ALICE_ROOT/STEER | |
125 | .includepath $ALICE_ROOT/MUON | |
126 | .L $ALICE_ROOT/MUON/MUONTriggerTracker.C++ | |
127 | MUONTriggerTracker("galice.root",0,10); | |
128 | To Load | |
129 | gSystem->Load("$ALICE_ROOT/MUON/MUONTriggerTracker_C.so") | |
130 | Output in MUON.Tracks.root using the new IO | |
131 | as a TClonesArray of AliMUONTriggerTrack | |
132 | ||
9f532ceb | 133 | ========================================================== |
134 | How to run full MUON reconstruction | |
135 | (clusterisation + trigger + tracking) | |
136 | =========================================================== | |
137 | .includepath $ALICE_ROOT/STEER | |
138 | .includepath $ALICE_ROOT/MUON | |
139 | .L $ALICE_ROOT/MUON/MUONChallengeTest.C++ | |
140 | MUONRecoTest("galice.root"); | |
141 | ||
a3448039 | 142 | |
88cb7938 | 143 | ============================================================ |
144 | How to run MUONCheck macro | |
145 | ============================================================ | |
146 | To check the content of a root data file, the MUONCheck | |
147 | provides a ascii output on screen. | |
148 | ||
149 | To compile MUONCheck.C | |
2058bf30 | 150 | .includepath $ALICE_ROOT/STEER |
151 | .includepath $ALICE_ROOT/MUON | |
152 | .L $ALICE_ROOT/MUON/MUONCheck.C++ | |
bf17dbfd | 153 | To Load |
154 | gSystem->Load("$ALICE_ROOT/MUON/MUONCheck_C.so") | |
2058bf30 | 155 | |
278a86d5 | 156 | To print Kine : (default file is galice.root ) |
2b32c661 | 157 | MUONkine() or MUONkine("galice.root",##) for the event number ## |
88cb7938 | 158 | |
159 | To print hits : (default file is galice.root if not MUONhits("toto.root""); ) | |
2b32c661 | 160 | MUONhits() or MUONhits("galice.root",##) for the event number ## |
88cb7938 | 161 | |
162 | To print digits : (default file is galice.root) | |
2b32c661 | 163 | MUONdigits() or MUONdigits("galice.root",##) for the event number ## |
88cb7938 | 164 | |
165 | To print rawcluster : (default file is galice.root) | |
2b32c661 | 166 | MUONrecpoints() or MUONrecpoints("galice.root",##) for the event number ## |
88cb7938 | 167 | |
168 | To print trigger : (default file is galice.root) | |
2b32c661 | 169 | MUONTestTrigger() or MUONTestTrigger("galice.root",##) for the event number ## |
170 | ||
171 | .... | |
88cb7938 | 172 | |
02d8f072 | 173 | |
174 | ============================================================ | |
175 | How to check the Geometry | |
176 | ============================================================ | |
177 | gAlice->Init("$ALICE_ROOT/MUON/Config_MUON_test.C"); | |
178 | .L $ALICE/geant3/TGeant3/G3GUI.C | |
179 | G3GUI() | |
180 | ||
181 | ||
7985603c | 182 | ============================================================ |
183 | How to run MUONdisplay | |
184 | ============================================================ | |
1eccde20 | 185 | First you need to perform a full simulation: |
7985603c | 186 | generation, digitalisation and clusterisation |
187 | .L $ALICE_ROOT/MUON/MUONdisplay.C | |
188 | MUONdisplay(0,"galice.root") | |
189 | ||
02d8f072 | 190 | ============================================================ |
191 | Tracking parameters, cuts, energy loss and physics processes | |
192 | ============================================================ | |
193 | Tracking parameters in MUON are automatically defined by GEANT | |
194 | MUON takes the default values of CUTs and physics processes | |
195 | defined by the Config files, except for the gas mixture medium | |
196 | of the tracking chambers. The CUT's and physics processes of | |
197 | the gas mixture medium is then defined in the galice.cuts file | |
198 | in the data directory. In particular ILOSS parameter MUST be | |
199 | equal unity (1) in order simulate a realistic energy loss | |
200 | distribution (mean value and fluctuations) in the active gas. | |
a88eb0d0 | 201 | |
202 | ============================================================ | |
203 | Tracking of particle in the magnetic field | |
204 | ============================================================ | |
205 | GEANT has two ways for tracking charged particles in the | |
206 | magnetic field: HELIX et RKUTA. | |
207 | HELIX is faster and works well if the gradient of magnetic | |
208 | field is small. | |
209 | For MUON, HELIX is a not a good approximation and we must | |
210 | use RKUTA to get the optimal mass resolution of the | |
211 | spectrometer. The choice of HELIX or RKUTA is done in the | |
212 | config file when the magnetic field is defined: | |
213 | AliMagFMaps* field = new AliMagFMaps("Maps","Maps", TRACKING, FACTOR, MAXB, AliMagFMaps::k4kG); | |
214 | gAlice->SetField(field); | |
215 | TRACKING must be 1 for RKUTA and 2 for HELIX (the default value for aliroot is 2 (HELIX)) | |
216 | FACTOR allows you to set the magnetic field to 0, just putting FACTOR=0. Default value is 1. | |
217 | MAXB is the maximum magnetic field which is 10.T | |
2b32c661 | 218 | |
f4f795ed | 219 | =========================================================== |
220 | MUON cocktail for physics .............. | |
221 | =========================================================== | |
222 | There is a MUON cocktail generator of the muon sources in the | |
223 | EVGEN directory. This class derives from AliGenCocktail. | |
224 | In the init of this class I have filled the cocktail with | |
225 | the muon sources: J/Psi, Upsilon, Open Charm, Open Beauty, | |
226 | Pion, Kaons. The code needs only the production cross section | |
227 | at 4pi (for the moment this values are in the code since I | |
228 | prefere them do not be modified), and the code calculates the | |
229 | rate of particles in the acceptance, making the scaling based | |
230 | on the number of collisions for the hard probes and on the | |
231 | number of participants for soft sources: Pions and Kaons. | |
232 | ||
233 | In the Genereate of this class all entries in the cocktail | |
234 | are called and we define a "primordial trigger" with requires | |
235 | a minimum number of muons above a Pt cut in the required acceptance. | |
236 | In order to normalized to the real number of simulated events, | |
237 | there are 2 data members in the class fNsuceeded adn fNGenerate | |
238 | which tell us what is the biais source. | |
239 | ||
240 | Enclose an example to use this generator: | |
241 | AliGenMUONCocktail * gener = new AliGenMUONCocktail(); | |
242 | gener->SetPtRange(1.,100.); // Transverse momentum range | |
243 | gener->SetPhiRange(0.,360.); // Azimuthal angle range | |
244 | gener->SetYRange(-4.0,-2.4); | |
245 | gener->SetMuonPtCut(1.); | |
246 | gener->SetMuonThetaCut(171.,178.); | |
247 | gener->SetMuonMultiplicity(2); | |
248 | gener->SetNumberOfCollisions(1950.); | |
249 | gener->SetNumberOfParticipants(400.); | |
250 | gener->SetVertexSmear(kPerTrack); | |
251 | gener->SetOrigin(0,0,0); // Vertex position | |
252 | gener->SetSigma(0,0,0.0); // Sigma in (X,Y,Z) (cm) on IP position | |
253 | gener->Init(); | |
254 | ||
2b32c661 | 255 | =========================================================== |
69be760c | 256 | csh Script for the full reconstruction with raw data generator |
2b32c661 | 257 | =========================================================== |
2b32c661 | 258 | |
9f532ceb | 259 | |
5473f16a | 260 | aliroot -b << EOF |
261 | AliSimulation MuonSim("YourConfig.C") | |
69be760c | 262 | MuonSim.SetWriteRawData("MUON"); |
5473f16a | 263 | MuonSim.Run(XXX) |
2b32c661 | 264 | .q |
265 | EOF | |
266 | ||
cac2eb58 | 267 | aliroot -b << EOF |
268 | TPluginManager* pluginManager = gROOT->GetPluginManager(); | |
269 | pluginManager->AddHandler("AliReconstructor", "MUON","AliMUONReconstructor", "MUON","AliMUONReconstructor()") | |
270 | AliReconstruction MuonRec("galice.root") | |
5473f16a | 271 | MuonRec.SetRunVertexFinder(kFALSE) |
272 | MuonRec.SetRunLocalReconstruction("MUON") | |
273 | MuonRec.SetFillESD("MUON") | |
cac2eb58 | 274 | MuonRec.Run() |
2b32c661 | 275 | .q |
276 | EOF | |
277 | ||
2b32c661 | 278 | aliroot -b << EOF |
279 | .includepath $ALICE_ROOT/STEER | |
280 | .includepath $ALICE_ROOT/MUON | |
5473f16a | 281 | .L $ALICE_ROOT/MUON/MUONmassPlot_ESD.C++ |
2b32c661 | 282 | MUONmassPlot("galice.root",0,99999); |
283 | .q | |
284 | EOF | |
a88eb0d0 | 285 | |
88cb7938 | 286 | =========================================================== |
287 | Still working .............. | |
288 | =========================================================== |