Line data Source code
1 : #ifndef ALIEMCALSPACEFRAME_H
2 : #define ALIEMCALSPACEFRAME_H
3 : /* Copyright(c) 2008, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 :
7 : /////////////////////////////////////////////////
8 : // class for EMCAL Space Frame //
9 : // Author: Ryan M. Ward //
10 : // California Polytechnic State Univeristy //
11 : // rmward@calpoly.edu //
12 : /////////////////////////////////////////////////
13 :
14 : #include <TNamed.h>
15 :
16 : class AliEMCALSpaceFrame : public TNamed
17 : {
18 :
19 : public:
20 :
21 : AliEMCALSpaceFrame();
22 0 : virtual ~AliEMCALSpaceFrame() {}
23 :
24 : AliEMCALSpaceFrame(const AliEMCALSpaceFrame& calFrame);
25 : AliEMCALSpaceFrame & operator = (const AliEMCALSpaceFrame & /*rvalue*/) {
26 0 : Fatal("operator =", "not implemented");
27 0 : return *this;
28 : }
29 :
30 : //This method assembles the Geometries and places them into the
31 : //Alice master volume
32 : void CreateGeometry();
33 :
34 : protected:
35 :
36 : private:
37 :
38 : //space frame parameters from "SINGLE FRAME ASSEMBLY 27D624H.pdf"
39 : //provided by Lawrence Berkeley Labs, USA
40 : Int_t fNumCross; // Total number of cross beams including end pieces
41 : Int_t fNumSubSets; // Total Number of Cross Beam sections in each Half Section
42 : Double_t fTotalHalfWidth; // Half the width of each Half Section
43 : Double_t fBeginPhi; // Begining Phi of Cal Frame
44 : Double_t fEndPhi; // Ending Phi of Cal Frame
45 : Double_t fTotalPhi; // Total Phi range of Cal Frame
46 : Double_t fBeginRadius; // Begining Radius of Cal Frame
47 : Double_t fHalfFrameTrans; // z-direction translation for each half frame
48 : //flange and rib dimensions
49 : Double_t fFlangeHeight; // Ending Radius of Flange (Flange is a TGeoTubeSeg)
50 : Double_t fFlangeWidth; // Thickness of Flange in z-direction
51 : Double_t fRibHeight; // Ending Radius of Rib
52 : Double_t fRibWidth; // Thickness of Rib in z-direction
53 : //cross beam sections - Cross beams come in two sections- top and bottom
54 : Double_t fCrossBottomWidth; // Width along z direction
55 : Double_t fCrossTopWidth; // Width along z direction
56 : Double_t fCrossBottomHeight; // Tangental thickness relative to CalFrame arc
57 : Double_t fCrossBottomRadThick; // Radial thickness relative to center of geometry
58 : Double_t fCrossBeamArcLength; // For calulating placement of
59 : Double_t fCrossBottomStartRadius; // Radial position relative to center of geometry
60 : Double_t fCrossTopHeight; // Tangental thickness relative to the center of geometry
61 : Double_t fCrossTopRadThick; // Radial thickness relative to CalFrame arc
62 : Double_t fCrossTopStart; // Radial position relative to center of geometry
63 : Double_t fEndRadius; // Ending Radius of Mother Volume
64 : Double_t fEndBeamRadThick; // Radial Thickness of the End Beams
65 : Double_t fEndBeamBeginRadius; // Starting Radius for End Beams
66 :
67 80 : ClassDef(AliEMCALSpaceFrame,1) //Class for EMCAL Space Frame
68 : };
69 :
70 : #endif //ALIEMCALSPACEFRAME_H
|