]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | #ifndef TRD_H |
2 | #define TRD_H | |
3 | //////////////////////////////////////////////// | |
d3f347ff | 4 | // Manager and hits classes for set: TRD // |
fe4da5cc | 5 | //////////////////////////////////////////////// |
6 | ||
7 | #include "AliDetector.h" | |
8 | #include "AliHit.h" | |
9 | ||
10 | class AliTRD : public AliDetector { | |
11 | ||
d3f347ff | 12 | protected: |
13 | ||
14 | Int_t fGasMix; // Gas mixture. 0: Xe/Isobutane 1: Xe/CO2 | |
15 | Int_t fSensSelect; // Switch to select only parts of the detector | |
16 | Int_t fSensPlane; // Sensitive detector plane | |
17 | Int_t fSensChamber; // Sensitive detector chamber | |
18 | Int_t fSensSector; // Sensitive detector sector | |
19 | ||
fe4da5cc | 20 | public: |
21 | AliTRD(); | |
22 | AliTRD(const char *name, const char *title); | |
23 | virtual ~AliTRD() {} | |
24 | virtual void AddHit(Int_t, Int_t*, Float_t*); | |
25 | virtual void BuildGeometry(); | |
fe4da5cc | 26 | virtual void CreateMaterials(); |
27 | Int_t DistancetoPrimitive(Int_t px, Int_t py); | |
28 | virtual void Init(); | |
29 | virtual Int_t IsVersion() const =0; | |
30 | virtual void StepManager()=0; | |
d3f347ff | 31 | virtual void SetGasMix(Int_t imix = 0); |
32 | virtual void SetSensPlane(Int_t iplane = 0); | |
33 | virtual void SetSensChamber(Int_t ichamber = 0); | |
34 | virtual void SetSensSector(Int_t isector = 0); | |
35 | ||
36 | ClassDef(AliTRD,1) // Transition Radiation Detector base class | |
fe4da5cc | 37 | }; |
38 | ||
d3f347ff | 39 | //////////////////////////////////////////////// |
40 | // Geometry parameter | |
41 | //////////////////////////////////////////////// | |
42 | ||
43 | const Int_t nsect = 18; // Number of sectors in the full detector | |
44 | const Int_t nmodul = 6; // Number of modules in each sector | |
45 | const Int_t ncham = 6; // Number of different chambers | |
46 | const Int_t narmsec = 5; // Number of sectors in one arm (geometry 1) | |
47 | ||
48 | const Float_t rmin = 294.0; // r-dimensions of the TRD-frame | |
49 | const Float_t rmax = 368.0; | |
50 | ||
51 | const Float_t zmax1 = 378.35; // z-dimensions of the TRD-frame | |
52 | const Float_t zmax2 = 302.0; | |
53 | ||
54 | const Float_t zleni = 110.0; // z-dimension of the inner chamber | |
55 | const Float_t zlenn = 156.0; // z-dimension of the neighbouring chambers | |
56 | const Float_t zleno = 156.0; // z-dimension of the outer chambers | |
57 | ||
58 | const Float_t widpl1 = 99.6; // rphi-dimension of the innermost plane | |
59 | ||
60 | const Float_t alframe = 1.0; // Thickness of the aluminium of the support frame | |
fe4da5cc | 61 | |
d3f347ff | 62 | const Float_t ccframe = 1.0; // Thickness of the carbon chamber frame |
63 | ||
64 | // Thicknesses of the the material layers | |
65 | const Float_t sethick = 0.02; // Radiator seal | |
66 | const Float_t rathick = 4.2; // Radiator | |
67 | const Float_t pethick = 0.20; // PE-layer in the radiator | |
68 | const Float_t mythick = 0.005; // Mylar-layer | |
69 | const Float_t xethick = 3.5; // Gas mixture | |
70 | const Float_t cuthick = 0.001; // Pad plane | |
71 | const Float_t suthick = 0.06; // HEXCEL+G10 support structure (= 0.31% X0) | |
72 | const Float_t fethick = 0.0044; // FEE + signal lines (= 0.31% X0) | |
73 | const Float_t cothick = 0.02; // PE of the cooling device | |
74 | const Float_t wathick = 0.01; // Cooling water | |
75 | ||
76 | // Position of the material layers | |
77 | const Float_t sezpos = -5.657; // Radiator seal | |
78 | const Float_t razpos = -3.557; // Radiator | |
79 | const Float_t pezpos = 0.0; // PE-layer in the radiator | |
80 | const Float_t myzpos = -1.4545; // Mylar-layer | |
81 | const Float_t xezpos = 0.298; // Gas mixture | |
82 | const Float_t cuzpos = 2.047; // Pad plane | |
83 | const Float_t suzpos = 3.046; // HEXCEL+G10 support structure | |
84 | const Float_t fezpos = 4.0482; // FEE + signal lines | |
85 | const Float_t cozpos = 4.1504; // PE of the cooling devices | |
86 | const Float_t wazpos = 4.3004; // Cooling water | |
87 | ||
88 | //////////////////////////////////////////////// | |
89 | // Parameter for the energy loss calculation | |
90 | //////////////////////////////////////////////// | |
91 | ||
92 | const Float_t kPoti = 12.1; // First ionization potential (eV) | |
93 | const Float_t kEend = 50000.0; // Maximum energy (50 keV); | |
94 | ||
fe4da5cc | 95 | //_____________________________________________________________________________ |
96 | class AliTRDhit : public AliHit { | |
97 | ||
98 | public: | |
99 | Int_t fSector; // TRD sector number | |
100 | Int_t fChamber; // TRD chamber number | |
101 | Int_t fPlane; // TRD plane number | |
102 | Float_t fQ; // Charge created by a hit (geometry 2) | |
103 | ||
104 | public: | |
105 | AliTRDhit() {} | |
106 | AliTRDhit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits); | |
107 | virtual ~AliTRDhit() {} | |
108 | ||
109 | ClassDef(AliTRDhit,1) // Hits for Transition Radiation Detector | |
110 | }; | |
111 | ||
112 | #endif |