]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONv1.h
test commit
[u/mrichter/AliRoot.git] / MUON / AliMUONv1.h
... / ...
CommitLineData
1#ifndef ALIMUONV1_H
2#define ALIMUONV1_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7// Revision of includes 07/05/2004
8
9/// \ingroup sim
10/// \class AliMUONv1
11/// \brief AliDetector class for MUON subsystem which implements
12/// functions for simulation
13
14#include "AliMUON.h"
15
16#include <TLorentzVector.h>
17
18class TF1;
19class TF2;
20class TGeoCombiTrans;
21class TString;
22class TGeoHMatrix;
23
24class AliMUONv1 : public AliMUON
25{
26 public:
27 AliMUONv1();
28 AliMUONv1(const char *name, const char* title = "default");
29 virtual ~AliMUONv1();
30 virtual void CreateGeometry();
31 virtual void CreateMaterials();
32 virtual void UpdateInternalGeometry();
33 virtual void AddAlignableVolumes() const;
34 virtual void Init();
35
36 /// Return the version number of this detector
37 virtual Int_t IsVersion() const {return 1;}
38
39 virtual void StepManager();
40
41 /// Set option to take into account angle effect
42 void SetAngleEffect(Bool_t Opt)
43 { fAngleEffect = Opt; }
44
45 /// Set option to take into account magnetic field effect
46 void SetMagEffect(Bool_t Opt)
47 { fMagEffect = Opt; }
48
49 /// Set max step max in active gas
50 void SetStepMaxInActiveGas(Float_t StepMax)
51 {fStepMaxInActiveGas = StepMax; }
52
53 protected:
54 /// Not implemented
55 AliMUONv1(const AliMUONv1& right);
56 /// Not implemented
57 AliMUONv1& operator = (const AliMUONv1& right);
58
59 virtual Int_t GetGeomModuleId(Int_t volId) const;
60 TString CurrentVolumePath() const;
61
62 Bool_t fAngleEffect; ///< Angle Effect along wires, Default is true
63 Bool_t fMagEffect; ///< Magnetic Field Effect along wires, Default is true
64 Float_t fStepMaxInActiveGas; ///< Step max in active gas default 0.6cm
65
66 // StepManager
67 Float_t * fStepSum; //!< Sum of track steps per chamber
68 Float_t * fDestepSum; //!< Sum of energy deposits per chamber
69
70 TLorentzVector fTrackMomentum; ///< Momentum of the particle entering in the active gas of chamber
71 TLorentzVector fTrackPosition; ///< Position of the particle exiting the active gas of chamber
72 TF1 * fElossRatio; ///< Ratio of particle mean eloss with respect MIP's
73 TF1 * fAngleEffect10; ///< Angle effect in tracking chambers at theta =10 degres as a function of ElossRatio (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) (in micrometers)
74 TF1 * fAngleEffectNorma;///< Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis)
75 TF2 * fMagAngleEffectNorma;///< Magnetic field effect: Normalisation from theta=16 degres to theta between -20 and 20 (Lamia Benhabib jun 2006 Master Thesis)
76
77 ClassDef(AliMUONv1,6) // MUON Detector class Version 1
78};
79#endif
80
81
82
83
84
85
86