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