3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ////////////////////////////////////////////////////////////////////////////
10 // Manager and hits classes for set: TRD version 1 //
12 ////////////////////////////////////////////////////////////////////////////
14 // Energy spectrum of the delta-rays
15 Double_t Ermilova(Double_t *x, Double_t *par);
16 Double_t IntSpecGeant(Double_t *x, Double_t *par);
26 //_____________________________________________________________________________
27 class AliTRDv1 : public AliTRD {
32 AliTRDv1(const char *name, const char *title);
36 virtual Int_t IsVersion() const { return 1; }
38 virtual void AddAlignableVolumes() const;
39 virtual void CreateGeometry();
40 virtual void CreateMaterials();
41 virtual void CreateTRhit(Int_t det);
43 virtual void StepManager();
44 void StepManagerErmilova();
45 void StepManagerGeant();
46 void StepManagerFixedStep();
47 void SelectStepManager(Int_t t);
49 void SetStepSize(Double_t s) { fStepSize = s; }
50 void SetTR(Bool_t) { fTRon = kTRUE; }
52 Bool_t GetTR() const { return fTRon; }
53 AliTRDsimTR *GetTRDsim() const { return fTR; }
57 void *StepManagerEntity();
59 Bool_t fTRon; // Switch for TR simulation
60 AliTRDsimTR *fTR; // TR simulator
62 Int_t fTypeOfStepManager; // Type of Step Manager.
63 Double_t fStepSize; // Used for the fixed step size
66 AliTRDv1(const AliTRDv1 &trd);
67 AliTRDv1 &operator=(const AliTRDv1 &trd);
69 Double_t BetheBloch(Double_t bg);
70 Double_t BetheBlochGeant(Double_t bg);
72 TF1 *fDeltaE; // Energy distribution of the delta-electrons (Ermilova)
73 TF1 *fDeltaG; // Energy distribution of the
75 Float_t fTrackLength0; // Save the track length at chamber entrance
76 Int_t fPrimaryTrackPid; // Save the id of the primary track
78 ClassDef(AliTRDv1,6) // Transition Radiation Detector version 1 (slow simulator)