New macro "MUONTracker" to make track reconstruction from reference tracks.
[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
a3448039 37
88cb7938 38============================================================
39 How to run MUONCheck macro
40============================================================
41To check the content of a root data file, the MUONCheck
42provides a ascii output on screen.
43
44To compile MUONCheck.C
2058bf30 45.includepath $ALICE_ROOT/STEER
46.includepath $ALICE_ROOT/MUON
47.L $ALICE_ROOT/MUON/MUONCheck.C++
bf17dbfd 48To Load
49gSystem->Load("$ALICE_ROOT/MUON/MUONCheck_C.so")
2058bf30 50
278a86d5 51To print Kine : (default file is galice.root )
2b32c661 52MUONkine() or MUONkine("galice.root",##) for the event number ##
88cb7938 53
54To print hits : (default file is galice.root if not MUONhits("toto.root""); )
2b32c661 55MUONhits() or MUONhits("galice.root",##) for the event number ##
88cb7938 56
57To print digits : (default file is galice.root)
2b32c661 58MUONdigits() or MUONdigits("galice.root",##) for the event number ##
88cb7938 59
60To print rawcluster : (default file is galice.root)
2b32c661 61MUONrecpoints() or MUONrecpoints("galice.root",##) for the event number ##
88cb7938 62
63To print trigger : (default file is galice.root)
2b32c661 64MUONTestTrigger() or MUONTestTrigger("galice.root",##) for the event number ##
65
66....
88cb7938 67
02d8f072 68
69============================================================
70 How to check the Geometry
71============================================================
72gAlice->Init("$ALICE_ROOT/MUON/Config_MUON_test.C");
73.L $ALICE/geant3/TGeant3/G3GUI.C
74G3GUI()
75
76
7985603c 77============================================================
78 How to run MUONdisplay
79============================================================
1eccde20 80First you need to perform a full simulation:
7985603c 81generation, digitalisation and clusterisation
82.L $ALICE_ROOT/MUON/MUONdisplay.C
83MUONdisplay(0,"galice.root")
84
02d8f072 85============================================================
86 Tracking parameters, cuts, energy loss and physics processes
87============================================================
88Tracking parameters in MUON are automatically defined by GEANT
89MUON takes the default values of CUTs and physics processes
90defined by the Config files, except for the gas mixture medium
91of the tracking chambers. The CUT's and physics processes of
92the gas mixture medium is then defined in the galice.cuts file
93in the data directory. In particular ILOSS parameter MUST be
94equal unity (1) in order simulate a realistic energy loss
95distribution (mean value and fluctuations) in the active gas.
a88eb0d0 96
97============================================================
98 Tracking of particle in the magnetic field
99============================================================
100GEANT has two ways for tracking charged particles in the
101magnetic field: HELIX et RKUTA.
102HELIX is faster and works well if the gradient of magnetic
103field is small.
104For MUON, HELIX is a not a good approximation and we must
105use RKUTA to get the optimal mass resolution of the
106spectrometer. The choice of HELIX or RKUTA is done in the
107config file when the magnetic field is defined:
108 AliMagFMaps* field = new AliMagFMaps("Maps","Maps", TRACKING, FACTOR, MAXB, AliMagFMaps::k4kG);
109 gAlice->SetField(field);
110TRACKING must be 1 for RKUTA and 2 for HELIX (the default value for aliroot is 2 (HELIX))
111FACTOR allows you to set the magnetic field to 0, just putting FACTOR=0. Default value is 1.
112MAXB is the maximum magnetic field which is 10.T
2b32c661 113
f4f795ed 114===========================================================
115 MUON cocktail for physics ..............
116===========================================================
117There is a MUON cocktail generator of the muon sources in the
118EVGEN directory. This class derives from AliGenCocktail.
119In the init of this class I have filled the cocktail with
120the muon sources: J/Psi, Upsilon, Open Charm, Open Beauty,
121Pion, Kaons. The code needs only the production cross section
122at 4pi (for the moment this values are in the code since I
123prefere them do not be modified), and the code calculates the
124rate of particles in the acceptance, making the scaling based
125on the number of collisions for the hard probes and on the
126number of participants for soft sources: Pions and Kaons.
127
128In the Genereate of this class all entries in the cocktail
129are called and we define a "primordial trigger" with requires
130a minimum number of muons above a Pt cut in the required acceptance.
131In order to normalized to the real number of simulated events,
132there are 2 data members in the class fNsuceeded adn fNGenerate
133which tell us what is the biais source.
134
135Enclose an example to use this generator:
136AliGenMUONCocktail * gener = new AliGenMUONCocktail();
137gener->SetPtRange(1.,100.); // Transverse momentum range
138gener->SetPhiRange(0.,360.); // Azimuthal angle range
139gener->SetYRange(-4.0,-2.4);
140gener->SetMuonPtCut(1.);
141gener->SetMuonThetaCut(171.,178.);
142gener->SetMuonMultiplicity(2);
143gener->SetNumberOfCollisions(1950.);
144gener->SetNumberOfParticipants(400.);
145gener->SetVertexSmear(kPerTrack);
146gener->SetOrigin(0,0,0); // Vertex position
147gener->SetSigma(0,0,0.0); // Sigma in (X,Y,Z) (cm) on IP position
148gener->Init();
149
2b32c661 150===========================================================
69be760c 151 csh Script for the full reconstruction with raw data generator
2b32c661 152===========================================================
2b32c661 153
9f532ceb 154
5473f16a 155aliroot -b << EOF
156AliSimulation MuonSim("YourConfig.C")
69be760c 157MuonSim.SetWriteRawData("MUON");
5473f16a 158MuonSim.Run(XXX)
2b32c661 159.q
160EOF
161
cac2eb58 162aliroot -b << EOF
163TPluginManager* pluginManager = gROOT->GetPluginManager();
164pluginManager->AddHandler("AliReconstructor", "MUON","AliMUONReconstructor", "MUON","AliMUONReconstructor()")
165AliReconstruction MuonRec("galice.root")
d59a4389 166MuonRec.SetRunTracking("")
5473f16a 167MuonRec.SetRunVertexFinder(kFALSE)
168MuonRec.SetRunLocalReconstruction("MUON")
169MuonRec.SetFillESD("MUON")
cac2eb58 170MuonRec.Run()
2b32c661 171.q
172EOF
173
2b32c661 174aliroot -b << EOF
175.includepath $ALICE_ROOT/STEER
176.includepath $ALICE_ROOT/MUON
5473f16a 177.L $ALICE_ROOT/MUON/MUONmassPlot_ESD.C++
2b32c661 178MUONmassPlot("galice.root",0,99999);
179.q
180EOF
a88eb0d0 181
b8dc484b 182
183============================================================
184 How to run MUONRecoCheck macro
185============================================================
186To check the muon reconstruction by comparing the reconstructed tracks
187with the reference tracks made of "AliTrackReference" for the hits and
188kinematic informations (TParticle) for the vertex.
189This macro can be used to check the track reconstruction e.g. efficiency,
190momentum resolution ... but also to make physics analysis whenever
191track identification is needed.
192
193To compile MUONRecoCheck.C
194.includepath $ALICE_ROOT/STEER
195.includepath $ALICE_ROOT/MUON
196.L $ALICE_ROOT/MUON/MUONRecoCheck.C+
197
198// To run MUONRecoCheck
199MUONRecoCheck(nEvent,"galice.root"); // nEvent = nb of events
200
29fc2c86 201
202============================================================
203 How to run MUONTracker macro
204============================================================
205To make the track reconstruction directly from AliTrackReference hits
206which are recorded in TrackRefs.root during the simulation.
207It can be used to check the reconstruction without clusterization.
208
209To compile MUONTracker.C
210.includepath $ALICE_ROOT/STEER
211.includepath $ALICE_ROOT/MUON
212.L $ALICE_ROOT/MUON/MUONTracker.C+
213
214// To run MUONTracker
215MUONTracker(iEventMin,iEventMax,"galice.root"); // iEventMin: first event
216 // iEventMax: last event
217
218
88cb7938 219===========================================================
220 Still working ..............
221===========================================================