X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONv1.h;h=0538b0ad6fef9969f4bde385ba40ec6f9a3311b5;hb=af8c78852563106db395e9175ecf4a122ed8598c;hp=9a4c5fa4d946fdc8e08e34ab8f7a9c872d79fd09;hpb=6b82c1f0f43ff565411e813e660f73718f3895da;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONv1.h b/MUON/AliMUONv1.h index 9a4c5fa4d94..0538b0ad6fe 100644 --- a/MUON/AliMUONv1.h +++ b/MUON/AliMUONv1.h @@ -4,67 +4,76 @@ * See cxx source for full Copyright notice */ /* $Id$ */ +// Revision of includes 07/05/2004 -///////////////////////////////////////////////////////// -// Manager and hits classes for set:MUON version 1 // -///////////////////////////////////////////////////////// +/// \ingroup sim +/// \class AliMUONv1 +/// \brief AliDetector class for MUON subsystem which implements +/// functions for simulation -#include "TLorentzVector.h" - #include "AliMUON.h" +#include + class TF1; +class TF2; class TGeoCombiTrans; - class TString; class TGeoHMatrix; -class AliMUONv1 : public AliMUON { -public: +class AliMUONv1 : public AliMUON +{ + public: AliMUONv1(); - AliMUONv1(const char *name, const char *title); + AliMUONv1(const char *name, const char* title = "default"); virtual ~AliMUONv1(); virtual void CreateGeometry(); virtual void CreateMaterials(); + virtual void AddAlignableVolumes() const; virtual void Init(); + + /// Return the version number of this detector virtual Int_t IsVersion() const {return 1;} + virtual void StepManager(); - void StepManagerOld(); - void SetStepManagerVersionOld(Bool_t Opt) - { fStepManagerVersionOld = Opt; } + + /// Set option to take into account angle effect void SetAngleEffect(Bool_t Opt) { fAngleEffect = Opt; } + + /// Set option to take into account magnetic field effect + void SetMagEffect(Bool_t Opt) + { fMagEffect = Opt; } + + /// Set max step max in active gas void SetStepMaxInActiveGas(Float_t StepMax) {fStepMaxInActiveGas = StepMax; } -protected: + + protected: + /// Not implemented AliMUONv1(const AliMUONv1& right); + /// Not implemented AliMUONv1& operator = (const AliMUONv1& right); - Bool_t fStepManagerVersionOld; // Version of StepManager, Default is false - Bool_t fAngleEffect; // Angle Effect along wires, Default is true - Float_t fStepMaxInActiveGas; // Step max in active gas default 0.6cm - virtual Int_t GetChamberId(Int_t volId) const; + virtual Int_t GetGeomModuleId(Int_t volId) const; + TString CurrentVolumePath() const; + + Bool_t fAngleEffect; ///< Angle Effect along wires, Default is true + Bool_t fMagEffect; ///< Magnetic Field Effect along wires, Default is true + Float_t fStepMaxInActiveGas; ///< Step max in active gas default 0.6cm // StepManager - Float_t * fStepSum; //! - Float_t * fDestepSum; //! + Float_t * fStepSum; //!< Sum of track steps per chamber + Float_t * fDestepSum; //!< Sum of energy deposits per chamber - TLorentzVector fTrackMomentum; // Momentum of the particle entering in the active gas of chamber - TLorentzVector fTrackPosition; // Position of the particle exiting the active gas of chamber - TF1 * fElossRatio; // Ratio of particle mean eloss with respect MIP's - 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) - TF1 * fAngleEffectNorma;// Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) - TGeoCombiTrans* fGlobalTransformation; // global transformation - // applied to the whole geometry -private: - // method - void PlaceVolume(const TString& name, const TString& mName, Int_t copyNo, - const TGeoHMatrix& matrix, Int_t npar, Double_t* param, - const char* only) const; - - ClassDef(AliMUONv1,1) // MUON Detector class Version 1 - - + TLorentzVector fTrackMomentum; ///< Momentum of the particle entering in the active gas of chamber + TLorentzVector fTrackPosition; ///< Position of the particle exiting the active gas of chamber + TF1 * fElossRatio; ///< Ratio of particle mean eloss with respect MIP's + 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) + TF1 * fAngleEffectNorma;///< Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) + TF2 * fMagAngleEffectNorma;///< Magnetic field effect: Normalisation from theta=16 degres to theta between -20 and 20 (Lamia Benhabib jun 2006 Master Thesis) + + ClassDef(AliMUONv1,6) // MUON Detector class Version 1 }; #endif