]>
Commit | Line | Data |
---|---|---|
2aaaf0b7 | 1 | #ifndef ALIZDCV4_H |
2 | #define ALIZDCV4_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //////////////////////////////////////////////// | |
7 | // Manager and hits classes for set: ZDC // | |
8 | //////////////////////////////////////////////// | |
9 | ||
10 | #include "AliZDC.h" | |
11 | ||
12 | //____________________________________________________________________________ | |
13 | class AliZDCv4 : public AliZDC { | |
14 | ||
15 | public: | |
16 | AliZDCv4(); | |
17 | AliZDCv4(const char *name, const char *title); | |
18 | virtual ~AliZDCv4() {} | |
19 | virtual void CreateGeometry(); | |
20 | virtual void CreateBeamLine(); | |
21 | virtual void CreateZDC(); | |
22 | virtual void CreateMaterials(); | |
23 | virtual Int_t IsVersion() const {return 1;} | |
24 | virtual void AddAlignableVolumes() const; | |
25 | virtual void Init(); | |
26 | virtual void InitTables(); | |
27 | virtual void StepManager(); | |
28 | ||
29 | void SetVCollSideCAperture(Float_t aperture) | |
30 | {if(aperture<3.5) fVCollSideCAperture = aperture; | |
31 | else printf("\n\n AliZDCv4: WARNING! SideC TCTVB aperture set to max. value: 3.5 cm\n\n");} | |
32 | void SetVCollSideCApertureNeg(Float_t aperture) | |
33 | {if(aperture<3.5) fVCollSideCApertureNeg = aperture; | |
34 | else printf("\n\n AliZDCv4: WARNING! SideC TCTVB aperture set to max. value: -3.5 cm\n\n");} | |
35 | void SetVCollSideCCentre(Float_t centre) {fVCollSideCCentreY = centre;} | |
36 | ||
37 | virtual void SetTCDDAperturePos(Float_t aperture) | |
38 | {if(aperture<=2.2) fTCDDAperturePos = aperture; | |
39 | else printf("\n\n AliZDCv4: WARNING! TCDD pos. aperture set to max. value: 2.0 cm\n\n");} | |
40 | virtual void SetTCDDApertureNeg(Float_t aperture) | |
41 | {if(aperture<=2.4) fTCDDApertureNeg = aperture; | |
42 | else printf("\n\n AliZDCv4: WARNING! TCDD neg. aperture set to max. value: -2.2 cm\n\n");} | |
43 | ||
44 | ||
45 | virtual void SetTDIAperturePos(Float_t aperture) | |
46 | {if(aperture<=6.) fTDIAperturePos = aperture; | |
47 | else printf("\n\n AliZDCv4: WARNING! TDI pos. aperture set to max. value: 6.0 cm\n\n");} | |
48 | virtual void SetTDIApertureNeg(Float_t aperture) | |
49 | {if(aperture<=6.) fTDIApertureNeg = aperture; | |
50 | else printf("\n\n AliZDCv4: WARNING! TDI neg. aperture set to max. value: -6.0 cm\n\n");} | |
51 | ||
52 | void SetLumiLength(Float_t length) {fLumiLength = length;} | |
53 | ||
54 | void SetYZNC(Float_t yZNC) {fPosZNC[1] = yZNC;} | |
55 | void SetYZNA(Float_t yZNA) {fPosZNA[1] = yZNA;} | |
56 | ||
57 | void SetYZPC(Float_t yZPC) {fPosZPC[1] = yZPC;} | |
58 | void SetYZPA(Float_t yZPA) {fPosZPA[1] = yZPA;} | |
59 | ||
60 | ||
61 | protected: | |
62 | ||
63 | // Sensitive media | |
64 | Int_t fMedSensF1; // Sensitive medium F1 | |
65 | Int_t fMedSensF2; // Sensitive medium F2 | |
66 | Int_t fMedSensZP; // Sensitive medium for ZP | |
67 | Int_t fMedSensZN; // Sensitive medium for ZN | |
68 | Int_t fMedSensZEM; // Sensitive medium for EM ZDC | |
69 | Int_t fMedSensGR; // Other sensitive medium | |
70 | Int_t fMedSensPI; // Beam pipe and magnet coils | |
71 | Int_t fMedSensTDI; // Cu materials along beam pipe | |
72 | Int_t fMedSensVColl; // W jaws of vertical collimators | |
73 | Int_t fMedSensLumi; // luminometer medium | |
74 | ||
75 | // Parameters for light tables | |
76 | Int_t fNalfan; // Number of Alfa (neutrons) | |
77 | Int_t fNalfap; // Number of Alfa (protons) | |
78 | Int_t fNben; // Number of beta (neutrons) | |
79 | Int_t fNbep; // Number of beta (protons) | |
80 | Float_t fTablen[4][90][18]; // Neutrons light table | |
81 | Float_t fTablep[4][90][28]; // Protons light table | |
82 | ||
83 | // Parameters for hadronic calorimeters geometry | |
84 | // NB -> parameters used in CreateZDC() and in StepManager() | |
85 | // (other parameters are defined in CreateZDC()) | |
86 | Float_t fDimZN[3]; // Dimensions of proton detector | |
87 | Float_t fDimZP[3]; // Dimensions of proton detector | |
88 | Float_t fPosZNC[3]; // Position of neutron detector side C | |
89 | Float_t fPosZNA[3]; // Position of neutron detector side A | |
90 | Float_t fPosZPC[3]; // Position of proton detector side C | |
91 | Float_t fPosZPA[3]; // Position of proton detector side A | |
92 | Float_t fFibZN[3]; // Fibers for neutron detector | |
93 | Float_t fFibZP[3]; // Fibers for proton detector | |
94 | ||
95 | // Parameters for EM calorimeter geometry | |
96 | // NB -> parameters used in CreateZDC() and in StepManager() | |
97 | // (other parameters are defined in CreateZDC()) | |
98 | Float_t fPosZEM[3]; // Position of EM detector | |
99 | Float_t fZEMLength; // ZEM length | |
100 | ||
101 | // Parameters for proton accepancy studies | |
102 | Int_t fpLostITC, fpLostD1C, fpcVCollC, fpDetectedC, fnDetectedC; // Side C | |
103 | Int_t fpLostITA, fpLostD1A, fpLostTDI, fpcVCollA, fpDetectedA, fnDetectedA; // Side A | |
104 | ||
105 | // Apertures to describe beam line elements variable apertures | |
106 | ||
107 | // Vertical collimator | |
108 | Float_t fVCollSideCAperture; // Semi-aperture of TCTVB jaws pos. y dir. | |
109 | Float_t fVCollSideCApertureNeg; // Semi-aperture of TCTVB jaws neg. y dir (abs. value) | |
110 | Float_t fVCollSideCCentreY; // Centre of TCTVB jaw apertures | |
111 | ||
112 | // TCDD | |
113 | Float_t fTCDDAperturePos; // TCDD semi-aperture pos. y dir. | |
114 | Float_t fTCDDApertureNeg; // TCDD semi-aperture neg. y dir. (abs. value) | |
115 | ||
116 | // TDI | |
117 | Float_t fTDIAperturePos; // TDI semi-aperture pos. y dir. | |
118 | Float_t fTDIApertureNeg; // TDI semi-aperture neg. y dir. (abs. value) | |
119 | ||
183673e3 | 120 | Float_t fLumiLength; // Luminometer length |
2aaaf0b7 | 121 | |
183673e3 | 122 | ClassDef(AliZDCv4, 1) // Zero Degree Calorimeter version 1 |
2aaaf0b7 | 123 | }; |
124 | ||
125 | #endif |