10#ifndef BesEmcGeometry_h
11#define BesEmcGeometry_h 1
13#include "G4ThreeVector.hh"
17class G4VPhysicalVolume;
36 inline void SetBSCRmin( G4double val ) { BSCRmin = val; };
37 inline void SetBSCDz( G4double val ) { BSCDz = val; };
66 return G4ThreeVector( fTyvekThickness, fAlThickness, fMylarThickness );
96 G4double BSCCryLength;
97 G4double BSCCryLength1;
101 G4double BSCPosition0;
102 G4double BSCPosition1;
112 G4double BSCAngleRotat;
123 G4double zHalfLength[150];
124 G4double thetaAxis[150];
125 G4double phiAxis[150];
126 G4double yHalfLength1[150];
127 G4double xHalfLength1[150];
128 G4double xHalfLength2[150];
129 G4double tanAlpha1[150];
130 G4double yHalfLength2[150];
131 G4double xHalfLength3[150];
132 G4double xHalfLength4[150];
133 G4double tanAlpha2[150];
134 G4double thetaPosition[150];
135 G4double xPosition[150];
136 G4double yPosition[150];
137 G4double zPosition[150];
139 G4VPhysicalVolume* physiBSCCrystal[50];
141 G4double fTyvekThickness;
142 G4double fAlThickness;
143 G4double fMylarThickness;
147 G4double rearBoxLength;
149 G4double rearBoxPosX[150];
150 G4double rearBoxPosY[150];
151 G4double rearBoxPosZ[150];
154 G4double rearCasingThickness;
157 G4double orgGlassLengthX;
158 G4double orgGlassLengthY;
159 G4double orgGlassLengthZ;
171 G4double PABoxThickness;
174 G4double HangingPlateDz;
176 G4double OCGirderRmin1[22];
177 G4double OCGirderRmin2[22];
178 G4double OCGirderDz[22];
179 G4double OCGirderAngle;
180 G4double OCGirderPosZ[22];
183 G4double cableLength[22];
185 G4double cablePosX[22];
186 G4double cablePosY[22];
187 G4double cablePosZ[22];
190 G4double waterPipeDr;
191 G4double waterPipeThickness;
195 G4double SPBarThickness;
196 G4double SPBarThickness1;
199 G4double RFBarThickness;
201 G4double RFBarHoleDphi;
202 G4double RFBarHoleDz;
207 G4double EndRingRmin;
210 G4double TaperRingThickness1;
211 G4double TaperRingThickness2;
212 G4double TaperRingThickness3;
213 G4double TaperRingTheta;
214 G4double TaperRingRmin1;
215 G4double TaperRingRmin2;
216 G4double TaperRingDr;
217 G4double TaperRingDz;
218 G4double TaperRingInnerLength;
219 G4double TaperRingOuterLength;
220 G4double TaperRingOuterLength1;
G4double GetRearBoxPosY(G4int NbCrystal)
void ComputeEMCParameters()
void SetBSCRmin(G4double val)
G4double GetBSCCryLength()
G4double GetThetaPosition(G4int NbCrystal)
void SetBSCNbPhi(G4int val)
G4double GetRearBoxPosTheta(G4int NbCrystal)
void SetBSCCrystalLength1(G4double val)
G4double GetYPosition(G4int NbCrystal)
G4double GetZHalfLength(G4int NbCrystal)
G4double GetBSCPositon0()
void SetBSCAngleRotat(G4double val)
G4double GetBSCCryLength1()
G4double GetBSCAngleRotat()
G4ThreeVector GetCasingThickness()
G4double GetXHalfLength2(G4int NbCrystal)
G4double GetTanAlpha2(G4int NbCrystal)
void SetBSCNbTheta(G4int val)
G4double GetTanAlpha1(G4int NbCrystal)
void SetBSCYFront0(G4double val)
G4double GetYHalfLength1(G4int NbCrystal)
void SetVerboseLevel(G4int val)
G4double GetThetaAxis(G4int NbCrystal)
G4double GetXHalfLength4(G4int NbCrystal)
G4double GetYHalfLength2(G4int NbCrystal)
G4VPhysicalVolume * GetPhysiBSCCrystal(G4int NbCrystal)
G4double GetRearBoxLength(G4int NbCrystal)
G4double GetRearBoxPosZ(G4int NbCrystal)
void SetBSCYFront(G4double val)
void SetBSCPosition0(G4double val)
G4double GetXPosition(G4int NbCrystal)
G4double GetZPosition(G4int NbCrystal)
void SetBSCDz(G4double val)
G4double GetRearBoxDz(G4int NbCrystal)
friend class EmcGdmlWriter
void SetBSCPosition1(G4double val)
void SetCasingThickness(G4ThreeVector)
G4double GetXHalfLength1(G4int NbCrystal)
G4double GetPhiAxis(G4int NbCrystal)
void PrintEMCParameters()
G4double GetXHalfLength3(G4int NbCrystal)
void SetBSCCrystalLength(G4double val)
friend class BesEmcConstruction
G4double GetRearBoxPosX(G4int NbCrystal)
G4double GetBSCPositon1()