ExtBesEmcGeometry Class Reference

#include <ExtBesEmcGeometry.h>

List of all members.

Public Member Functions

 ExtBesEmcGeometry ()
 ~ExtBesEmcGeometry ()
void ReadEMCParameters ()
void ComputeEMCParameters ()
void ModifyForCasing ()
void PrintEMCParameters ()
void SetVerboseLevel (G4int val)
void SetBSCRmin (G4double val)
void SetBSCDz (G4double val)
void SetBSCNbPhi (G4int val)
void SetBSCNbTheta (G4int val)
void SetBSCCrystalLength (G4double val)
void SetBSCYFront0 (G4double val)
void SetBSCYFront (G4double val)
void SetBSCPosition0 (G4double val)
void SetBSCPosition1 (G4double val)
void SetBSCAngleRotat (G4double val)
void SetCasingThickness (G4ThreeVector)
G4int GetVerboseLevel ()
G4double GetBSCRmin ()
G4double GetBSCDz ()
G4int GetBSCNbPhi ()
G4int GetBSCNbTheta ()
G4double GetBSCCryLength ()
G4double GetBSCYFront ()
G4double GetBSCYFront0 ()
G4double GetBSCPositon0 ()
G4double GetBSCPositon1 ()
G4double GetBSCAngleRotat ()
G4ThreeVector GetCasingThickness ()
G4double GetXPosition (G4int NbCrystal)
G4double GetYPosition (G4int NbCrystal)
G4double GetZPosition (G4int NbCrystal)
G4double GetThetaPosition (G4int NbCrystal)
G4double GetZHalfLength (G4int NbCrystal)
G4double GetThetaAxis (G4int NbCrystal)
G4double GetPhiAxis (G4int NbCrystal)
G4double GetYHalfLength1 (G4int NbCrystal)
G4double GetXHalfLength1 (G4int NbCrystal)
G4double GetXHalfLength2 (G4int NbCrystal)
G4double GetTanAlpha1 (G4int NbCrystal)
G4double GetYHalfLength2 (G4int NbCrystal)
G4double GetXHalfLength3 (G4int NbCrystal)
G4double GetXHalfLength4 (G4int NbCrystal)
G4double GetTanAlpha2 (G4int NbCrystal)
G4VPhysicalVolume * GetPhysiBSCCrystal (G4int NbCrystal)
G4double GetRearBoxLength (G4int NbCrystal)
G4double GetRearBoxDz (G4int NbCrystal)
G4double GetRearBoxPosX (G4int NbCrystal)
G4double GetRearBoxPosY (G4int NbCrystal)
G4double GetRearBoxPosZ (G4int NbCrystal)
G4double GetRearBoxPosTheta (G4int NbCrystal)

Private Attributes

G4int verboseLevel
G4double BSCCryLength
G4double BSCYFront0
G4double BSCYFront
G4double BSCYFront1
G4double BSCPosition0
G4double BSCPosition1
G4int BSCNbPhi
G4int BSCNbTheta
G4double BSCPhiRmin
G4double BSCPhiRmax
G4double BSCPhiDz
G4double BSCPhiSphi
G4double BSCPhiDphi
G4double BSCAngleRotat
G4double BSCRmin
G4double BSCRmax
G4double BSCDz
G4double BSCRmin1
G4double BSCRmax1
G4double BSCRmin2
G4double BSCRmax2
G4double BSCDz1
G4double zHalfLength [150]
G4double thetaAxis [150]
G4double phiAxis [150]
G4double yHalfLength1 [150]
G4double xHalfLength1 [150]
G4double xHalfLength2 [150]
G4double tanAlpha1 [150]
G4double yHalfLength2 [150]
G4double xHalfLength3 [150]
G4double xHalfLength4 [150]
G4double tanAlpha2 [150]
G4double thetaPosition [150]
G4double xPosition [150]
G4double yPosition [150]
G4double zPosition [150]
G4VPhysicalVolume * physiBSCCrystal [50]
G4double fTyvekThickness
G4double fAlThickness
G4double fMylarThickness
G4double rearBoxLength
G4double rearBoxDz
G4double rearBoxPosX [150]
G4double rearBoxPosY [150]
G4double rearBoxPosZ [150]
G4double rearCasingThickness
G4double orgGlassLengthX
G4double orgGlassLengthY
G4double orgGlassLengthZ
G4double PDLengthX
G4double PDLengthY
G4double PDLengthZ
G4double AlPlateDz
G4double PABoxDz
G4double PABoxThickness
G4double HangingPlateDz
G4double OCGirderRmin1 [22]
G4double OCGirderRmin2 [22]
G4double OCGirderDz [22]
G4double OCGirderAngle
G4double OCGirderPosZ [22]
G4double cableLength [22]
G4double cableDr
G4double cablePosX [22]
G4double cablePosY [22]
G4double cablePosZ [22]
G4double waterPipeDr
G4double waterPipeThickness
G4double SPBarThickness
G4double SPBarThickness1
G4double SPBarwidth
G4double SPBarDphi
G4double RFBarThickness
G4int RFBarHoleNb
G4double RFBarHoleDphi
G4double RFBarHoleDz
G4double EndRingDz
G4double EndRingDr
G4double EndRingRmin
G4double TaperRingThickness1
G4double TaperRingThickness2
G4double TaperRingThickness3
G4double TaperRingTheta
G4double TaperRingRmin1
G4double TaperRingRmin2
G4double TaperRingDr
G4double TaperRingDz
G4double TaperRingInnerLength
G4double TaperRingOuterLength
G4double TaperRingOuterLength1

Friends

class ExtBesEmcConstruction


Detailed Description

Definition at line 19 of file ExtBesEmcGeometry.h.


Constructor & Destructor Documentation

ExtBesEmcGeometry::ExtBesEmcGeometry (  ) 

Definition at line 16 of file ExtBesEmcGeometry.cxx.

References verboseLevel.

00017 {
00018   verboseLevel = 0;
00019 }

ExtBesEmcGeometry::~ExtBesEmcGeometry (  ) 

Definition at line 21 of file ExtBesEmcGeometry.cxx.

00022 {;}


Member Function Documentation

void ExtBesEmcGeometry::ComputeEMCParameters (  ) 

Definition at line 121 of file ExtBesEmcGeometry.cxx.

References BSCAngleRotat, BSCCryLength, BSCDz, BSCNbPhi, BSCNbTheta, BSCPhiDphi, BSCPhiDz, BSCPhiRmax, BSCPhiRmin, BSCPhiSphi, BSCPosition0, BSCPosition1, BSCRmax, BSCRmax1, BSCRmax2, BSCRmin, BSCYFront, BSCYFront0, BSCYFront1, cableDr, cableLength, cablePosX, cablePosY, cablePosZ, cos(), genRecEmupikp::i, OCGirderDz, OCGirderPosZ, OCGirderRmin1, OCGirderRmin2, phiAxis, ReadEMCParameters(), rearBoxDz, rearBoxLength, rearBoxPosX, rearBoxPosY, rearBoxPosZ, sin(), SPBarDphi, SPBarwidth, tan(), tanAlpha1, tanAlpha2, TaperRingDr, TaperRingDz, TaperRingOuterLength, TaperRingOuterLength1, TaperRingRmin1, TaperRingRmin2, TaperRingTheta, TaperRingThickness1, TaperRingThickness2, TaperRingThickness3, theta0, thetaAxis, thetaPosition, verboseLevel, xHalfLength1, xHalfLength2, xHalfLength3, xHalfLength4, xPosition, yHalfLength1, yHalfLength2, yPosition, zHalfLength, and zPosition.

00122 {
00123   ReadEMCParameters();
00124   
00125   // Compute derived parameters of the calorimeter
00126   G4double theta0;
00127   G4int i;
00128   //for debug
00129   //G4Exception("ExtBesEmcGeometry::ComputeEMCParameters() starting.......");
00130   //
00131   //support frame
00132   //
00133   const G4double delta=1.*mm; //for opening-cut girder
00134   TaperRingRmin1 = BSCRmax1-TaperRingThickness1;
00135   TaperRingRmin2 = TaperRingRmin1+TaperRingDz*tan(TaperRingTheta);
00136   TaperRingDr = TaperRingThickness2/cos(TaperRingTheta);
00137   TaperRingOuterLength1 = TaperRingOuterLength+TaperRingThickness3*tan(TaperRingTheta);
00138   
00139   BSCRmax2 = TaperRingRmin2+TaperRingDr-TaperRingThickness3*tan(TaperRingTheta);
00140   BSCRmax = BSCRmin+33.8*cm;
00141   BSCPhiDphi= 360.*deg/BSCNbPhi;
00142   BSCPhiSphi= -BSCPhiDphi/2.;
00143   BSCPhiDz  = BSCDz;
00144   BSCPhiRmax= BSCRmax-0.5*cm;
00145   BSCPhiRmin= BSCRmin/sin(90.*deg+BSCPhiDphi/2.)
00146     *sin(90.*deg+BSCPhiDphi/2.-BSCAngleRotat); //Rmin after rotate
00147   SPBarDphi=2*atan(SPBarwidth/(2*BSCRmax));
00148 
00149   //crystal No.1(from z=0 to big)
00150   zHalfLength[0] = BSCCryLength/2.;
00151   yHalfLength1[0]= BSCYFront0/2.;
00152   xHalfLength1[0]= BSCPhiRmin*tan(BSCPhiDphi)/2.;
00153   xHalfLength2[0]= xHalfLength1[0];
00154   G4double rminprojected=BSCRmin*cos(BSCAngleRotat);
00155   //  rminprojected=BSCRmin;//according to hardware design
00156   yHalfLength2[0]= yHalfLength1[0]
00157     +(BSCYFront0-BSCPosition0)/rminprojected*BSCCryLength/2.;
00158   xHalfLength3[0]= xHalfLength1[0]*(BSCPhiRmin+BSCCryLength)/BSCPhiRmin;
00159   xHalfLength4[0]= xHalfLength2[0]*(BSCPhiRmin+BSCCryLength)/BSCPhiRmin;
00160 
00161   thetaPosition[0]= 90.*deg;
00162   xPosition[0]    = BSCPhiRmin+BSCCryLength/2.;
00163   yPosition[0]    = 
00164     -(xHalfLength1[0]+xHalfLength3[0]+xHalfLength2[0]+xHalfLength4[0])/4.;
00165   zPosition[0]    = (yHalfLength1[0]+yHalfLength2[0])/2.;
00166   
00167   theta0= 90.*deg-atan((BSCYFront0-BSCPosition0)/rminprojected);
00168   if(verboseLevel>1)
00169     {
00170       G4cout << "------------------------------------>1"<< G4endl
00171              << "The direction of crystal is:"
00172              << theta0/deg <<"(deg)."<< G4endl;
00173     }
00174 
00175   rearBoxPosX[0] = xPosition[0]+BSCCryLength/2.+rearBoxDz/2.;
00176   rearBoxPosY[0] = -(xHalfLength3[0]+xHalfLength4[0])/2.;
00177   rearBoxPosZ[0] = yHalfLength2[0];
00178 
00179   OCGirderRmin1[0] = rearBoxPosX[0]+rearBoxDz/2.+delta;
00180   OCGirderRmin2[0] = rearBoxPosX[0]+rearBoxDz/2.+delta;
00181   OCGirderDz[0] = rearBoxLength;
00182   OCGirderPosZ[0] = rearBoxLength/2;
00183 
00184   cableLength[0] = BSCDz-rearBoxPosZ[0];
00185   cablePosX[0] = BSCPhiRmax-cableDr-2.*mm;
00186   cablePosY[0] = rearBoxPosY[0]-3*cableDr;
00187   cablePosZ[0] = BSCDz-cableLength[0]/2;
00188 
00189   //crystal No.2
00190   zHalfLength[1]= BSCCryLength/2.;
00191   yHalfLength1[1]= BSCYFront0/2.;
00192   G4double deltaR= BSCYFront0*cos(theta0);
00193   xHalfLength1[1]= xHalfLength1[0];
00194   xHalfLength2[1]= xHalfLength1[1]*(BSCPhiRmin+deltaR)/BSCPhiRmin;
00195   yHalfLength2[1]= yHalfLength1[1]
00196     +tan(theta0-atan(rminprojected/(BSCYFront0*(1.+1./sin(theta0))-
00197                                     BSCPosition1)))*BSCCryLength/2.;
00198   deltaR=deltaR+BSCCryLength*sin(theta0);
00199   xHalfLength4[1]= xHalfLength1[1]*(BSCPhiRmin+deltaR)/BSCPhiRmin;
00200   deltaR=deltaR-yHalfLength2[1]*2.*cos(theta0);
00201   xHalfLength3[1]= xHalfLength1[1]*(BSCPhiRmin+deltaR)/BSCPhiRmin;
00202 
00203   thetaPosition[1]= theta0;
00204   xPosition[1]    = BSCPhiRmin+BSCCryLength/2.*sin(theta0)
00205                   + (3.*yHalfLength1[1]-yHalfLength2[1])/2.*cos(theta0);
00206   yPosition[1]    = 
00207     -(xHalfLength1[1]+xHalfLength3[1]+xHalfLength2[1]+xHalfLength4[1])/4.;
00208   zPosition[1]    = yHalfLength1[0]*2.
00209     + (yHalfLength1[1]*2./tan(theta0)+BSCCryLength/2.)*cos(theta0)
00210     + (yHalfLength1[1]+yHalfLength2[1])/2.*sin(theta0);
00211 
00212   rearBoxPosX[1] = xPosition[1]+(BSCCryLength/2.+rearBoxDz/2.)*sin(theta0);
00213   rearBoxPosY[1] = -(xHalfLength3[1]+xHalfLength4[1])/2.;
00214   rearBoxPosZ[1] = zPosition[1]+(BSCCryLength/2.+rearBoxDz/2.)*cos(theta0);
00215 
00216   OCGirderRmin1[1] = rearBoxPosX[1]+rearBoxDz*sin(theta0)/2.+rearBoxLength*cos(theta0)/2+delta;
00217   OCGirderRmin2[1] = rearBoxPosX[1]+rearBoxDz*sin(theta0)/2.-rearBoxLength*cos(theta0)/2+delta;
00218   OCGirderDz[1] = rearBoxLength*sin(theta0);
00219   OCGirderPosZ[1] = rearBoxPosZ[1]+rearBoxDz*cos(theta0)/2.;
00220 
00221   cableLength[1] = BSCDz-rearBoxPosZ[1];
00222   cablePosX[1] = cablePosX[0];
00223   cablePosY[1] = cablePosY[0]+2*cableDr;
00224   cablePosZ[1] = BSCDz-cableLength[1]/2;
00225 
00226   theta0= theta0-atan((yHalfLength2[1]-yHalfLength1[1])*2./BSCCryLength);
00227 
00228   for(i=2;i<BSCNbTheta;i++)
00229     {
00230       if(verboseLevel>1)
00231         {
00232           G4cout << "------------------------------------>"<<i<< G4endl
00233                  << "The direction of crystal is:"
00234                  << theta0/deg <<"(deg)." << G4endl;
00235         }
00236       //crystal No.i+1
00237       zHalfLength[i]=zHalfLength[0];
00238       yHalfLength1[i]=BSCYFront/2.;
00239       if(i==BSCNbTheta-1)
00240         {yHalfLength1[i]=BSCYFront1/2.;} //the rightest crystal
00241       deltaR=yHalfLength1[i]*2.*cos(theta0);
00242       xHalfLength1[i]=xHalfLength1[0];
00243       xHalfLength2[i]=xHalfLength1[i]/BSCPhiRmin*(BSCPhiRmin+deltaR);
00244       yHalfLength2[i]=yHalfLength1[i]
00245         *(1.+BSCCryLength/(rminprojected/sin(theta0)
00246                            +yHalfLength1[i]*2./tan(theta0)));
00247       deltaR=deltaR+BSCCryLength*sin(theta0);
00248       xHalfLength4[i]=xHalfLength1[i]/BSCPhiRmin*(BSCPhiRmin+deltaR);
00249       deltaR=deltaR-yHalfLength2[i]*2.*cos(theta0);
00250       xHalfLength3[i]=xHalfLength1[i]/BSCPhiRmin*(BSCPhiRmin+deltaR);
00251 
00252       thetaPosition[i]=theta0;
00253       xPosition[i]=BSCPhiRmin+zHalfLength[i]*sin(theta0)
00254                   + (3.*yHalfLength1[i]-yHalfLength2[i])/2.*cos(theta0);
00255       yPosition[i]=
00256         -(xHalfLength1[i]+xHalfLength3[i]+xHalfLength2[i]+xHalfLength4[i])/4.;
00257       zPosition[i]=BSCPosition1+rminprojected/tan(theta0)
00258         +(2.*yHalfLength1[i]/tan(theta0)+zHalfLength[i])*cos(theta0)
00259         +(yHalfLength1[i]+yHalfLength2[i])/2.*sin(theta0);
00260 
00261       rearBoxPosX[i] = xPosition[i]+(BSCCryLength/2.+rearBoxDz/2.)*sin(theta0);
00262       rearBoxPosY[i] = -(xHalfLength3[i]+xHalfLength4[i])/2.;
00263       rearBoxPosZ[i] = zPosition[i]+(BSCCryLength/2.+rearBoxDz/2.)*cos(theta0);
00264       
00265       OCGirderRmin1[i] = rearBoxPosX[i]+rearBoxDz*sin(theta0)/2.+rearBoxLength*cos(theta0)/2+delta;
00266       OCGirderRmin2[i] = rearBoxPosX[i]+rearBoxDz*sin(theta0)/2.-rearBoxLength*cos(theta0)/2+delta;
00267       OCGirderDz[i] = rearBoxLength*sin(theta0);
00268       OCGirderPosZ[i] = rearBoxPosZ[i]+rearBoxDz*cos(theta0)/2.;
00269 
00270      G4int xCable,yCable;
00271       xCable = i/4;
00272       yCable = i-4*(G4int)(i/4);
00273       cableLength[i] = BSCDz-(rearBoxPosZ[i]+rearBoxDz/2.*cos(theta0));
00274       cablePosX[i] = cablePosX[0]-xCable*2*cableDr;
00275       cablePosY[i] = cablePosY[0]+yCable*2*cableDr;
00276       cablePosZ[i] = BSCDz-cableLength[i]/2;
00277 
00278       theta0=theta0-atan(2.*yHalfLength1[i]/(rminprojected/sin(theta0)
00279                                              +2.*yHalfLength1[i]/tan(theta0)));
00280       
00281     }
00282   thetaPosition[BSCNbTheta]=theta0;
00283     if(verboseLevel>1)
00284     {
00285       G4cout << "------------------------------------>"<<i<< G4endl
00286              << "The direction of crystal is:"
00287              << theta0/deg <<"(deg)." << G4endl;
00288     }
00289    
00290   G4double oop;
00291   for(i=0;i<BSCNbTheta;i++)
00292     {
00293       oop=sqrt((yHalfLength2[i]-yHalfLength1[i])*(yHalfLength2[i]
00294                                                   -yHalfLength1[i])
00295                +(xHalfLength3[i]+xHalfLength4[i]-xHalfLength1[i]
00296                  -xHalfLength2[i])*(xHalfLength3[i]+xHalfLength4[i]
00297                                     -xHalfLength1[i]-xHalfLength2[i])/4);
00298       thetaAxis[i]=atan(oop/BSCCryLength);
00299       phiAxis[i]  =180.*deg+atan((yHalfLength2[i]-yHalfLength1[i])
00300                          /(xHalfLength3[i]+xHalfLength4[i]
00301                            -xHalfLength1[i]-xHalfLength2[i])*2.);
00302       tanAlpha2[i]=-(xHalfLength4[i]-xHalfLength3[i])/yHalfLength2[i]/2.;
00303       tanAlpha1[i]=-(xHalfLength2[i]-xHalfLength1[i])/yHalfLength1[i]/2.;
00304       //G4cout <<thetaAxis[i]<<",  "
00305       //     <<phiAxis[i]<<",  "
00306       //     <<tanAlpha1[i]<<",  "
00307       //     <<tanAlpha2[i]<<G4endl;
00308     }
00309     
00310 }

G4double ExtBesEmcGeometry::GetBSCAngleRotat (  )  [inline]

Definition at line 60 of file ExtBesEmcGeometry.h.

References BSCAngleRotat.

00060 {return BSCAngleRotat;};

G4double ExtBesEmcGeometry::GetBSCCryLength (  )  [inline]

Definition at line 55 of file ExtBesEmcGeometry.h.

References BSCCryLength.

00055 {return BSCCryLength;};

G4double ExtBesEmcGeometry::GetBSCDz (  )  [inline]

Definition at line 52 of file ExtBesEmcGeometry.h.

References BSCDz.

00052 {return BSCDz;};

G4int ExtBesEmcGeometry::GetBSCNbPhi (  )  [inline]

Definition at line 53 of file ExtBesEmcGeometry.h.

References BSCNbPhi.

00053 {return BSCNbPhi;};

G4int ExtBesEmcGeometry::GetBSCNbTheta (  )  [inline]

Definition at line 54 of file ExtBesEmcGeometry.h.

References BSCNbTheta.

Referenced by ExtBesCrystalParameterisation::ComputeMaterial().

00054 {return BSCNbTheta;};

G4double ExtBesEmcGeometry::GetBSCPositon0 (  )  [inline]

Definition at line 58 of file ExtBesEmcGeometry.h.

References BSCPosition0.

00058 {return BSCPosition0;};

G4double ExtBesEmcGeometry::GetBSCPositon1 (  )  [inline]

Definition at line 59 of file ExtBesEmcGeometry.h.

References BSCPosition1.

00059 {return BSCPosition1;};

G4double ExtBesEmcGeometry::GetBSCRmin (  )  [inline]

Definition at line 51 of file ExtBesEmcGeometry.h.

References BSCRmin.

00051 {return BSCRmin;};

G4double ExtBesEmcGeometry::GetBSCYFront (  )  [inline]

Definition at line 56 of file ExtBesEmcGeometry.h.

References BSCYFront.

00056 {return BSCYFront;};

G4double ExtBesEmcGeometry::GetBSCYFront0 (  )  [inline]

Definition at line 57 of file ExtBesEmcGeometry.h.

References BSCYFront0.

00057 {return BSCYFront0;};

G4ThreeVector ExtBesEmcGeometry::GetCasingThickness (  )  [inline]

Definition at line 62 of file ExtBesEmcGeometry.h.

References fAlThickness, fMylarThickness, and fTyvekThickness.

00062 {return G4ThreeVector(fTyvekThickness,fAlThickness,fMylarThickness);};

G4double ExtBesEmcGeometry::GetPhiAxis ( G4int  NbCrystal  ) 

Definition at line 642 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and phiAxis.

00643 {
00644   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00645     {
00646       return phiAxis[NbCrystal];
00647     }
00648   else
00649     {
00650       return 0.;
00651     }
00652 }

G4VPhysicalVolume * ExtBesEmcGeometry::GetPhysiBSCCrystal ( G4int  NbCrystal  ) 

Definition at line 750 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and physiBSCCrystal.

Referenced by ExtBesCrystalParameterisation::ComputeIDAndSide().

00751 {
00752   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00753     {
00754       return physiBSCCrystal[NbCrystal];
00755     }
00756   else
00757     {
00758       return NULL;
00759     }
00760 }

G4double ExtBesEmcGeometry::GetRearBoxDz ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetRearBoxLength ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetRearBoxPosTheta ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetRearBoxPosX ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetRearBoxPosY ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetRearBoxPosZ ( G4int  NbCrystal  ) 

G4double ExtBesEmcGeometry::GetTanAlpha1 ( G4int  NbCrystal  ) 

Definition at line 690 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and tanAlpha1.

00691 {
00692   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00693     {
00694       return tanAlpha1[NbCrystal];
00695     }
00696   else
00697     {
00698       return 0.;
00699     }
00700 }

G4double ExtBesEmcGeometry::GetTanAlpha2 ( G4int  NbCrystal  ) 

Definition at line 738 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and tanAlpha2.

00739 {
00740   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00741     {
00742       return tanAlpha2[NbCrystal];
00743     }
00744   else
00745     {
00746       return 0.;
00747     }
00748 }

G4double ExtBesEmcGeometry::GetThetaAxis ( G4int  NbCrystal  ) 

Definition at line 630 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and thetaAxis.

00631 {
00632   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00633     {
00634       return thetaAxis[NbCrystal];
00635     }
00636   else
00637     {
00638       return 0.;
00639     }
00640 }

G4double ExtBesEmcGeometry::GetThetaPosition ( G4int  NbCrystal  ) 

Definition at line 606 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and thetaPosition.

00607 {
00608   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00609     {
00610       return thetaPosition[NbCrystal];
00611     }
00612   else
00613     {
00614       return 0.;
00615     }
00616 }

G4int ExtBesEmcGeometry::GetVerboseLevel (  )  [inline]

Definition at line 49 of file ExtBesEmcGeometry.h.

References verboseLevel.

00049 {return verboseLevel;};

G4double ExtBesEmcGeometry::GetXHalfLength1 ( G4int  NbCrystal  ) 

Definition at line 666 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and xHalfLength1.

00667 {
00668   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00669     {
00670       return xHalfLength1[NbCrystal];
00671     }
00672   else
00673     {
00674       return 0.;
00675     }
00676 }

G4double ExtBesEmcGeometry::GetXHalfLength2 ( G4int  NbCrystal  ) 

Definition at line 678 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and xHalfLength2.

00679 {
00680   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00681     {
00682       return xHalfLength2[NbCrystal];
00683     }
00684   else
00685     {
00686       return 0.;
00687     }
00688 }

G4double ExtBesEmcGeometry::GetXHalfLength3 ( G4int  NbCrystal  ) 

Definition at line 714 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and xHalfLength3.

00715 {
00716   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00717     {
00718       return xHalfLength3[NbCrystal];
00719     }
00720   else
00721     {
00722       return 0.;
00723     }
00724 }

G4double ExtBesEmcGeometry::GetXHalfLength4 ( G4int  NbCrystal  ) 

Definition at line 726 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and xHalfLength4.

00727 {
00728   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00729     {
00730       return xHalfLength4[NbCrystal];
00731     }
00732   else
00733     {
00734       return 0.;
00735     }
00736 }

G4double ExtBesEmcGeometry::GetXPosition ( G4int  NbCrystal  ) 

Definition at line 570 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and xPosition.

00571 {
00572   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00573     {
00574       return xPosition[NbCrystal];
00575     }
00576   else
00577     {
00578       return 0.;
00579     }
00580 }

G4double ExtBesEmcGeometry::GetYHalfLength1 ( G4int  NbCrystal  ) 

Definition at line 654 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and yHalfLength1.

00655 {
00656   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00657     {
00658       return yHalfLength1[NbCrystal];
00659     }
00660   else
00661     {
00662       return 0.;
00663     }
00664 }

G4double ExtBesEmcGeometry::GetYHalfLength2 ( G4int  NbCrystal  ) 

Definition at line 702 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and yHalfLength2.

00703 {
00704   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00705     {
00706       return yHalfLength2[NbCrystal];
00707     }
00708   else
00709     {
00710       return 0.;
00711     }
00712 }

G4double ExtBesEmcGeometry::GetYPosition ( G4int  NbCrystal  ) 

Definition at line 582 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and yPosition.

00583 {
00584   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00585     {
00586       return yPosition[NbCrystal];
00587     }
00588   else
00589     {
00590       return 0.;
00591     }
00592 }

G4double ExtBesEmcGeometry::GetZHalfLength ( G4int  NbCrystal  ) 

Definition at line 618 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and zHalfLength.

00619 {
00620   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00621     {
00622       return zHalfLength[NbCrystal];
00623     }
00624   else
00625     {
00626       return 0.;
00627     }
00628 }

G4double ExtBesEmcGeometry::GetZPosition ( G4int  NbCrystal  ) 

Definition at line 594 of file ExtBesEmcGeometry.cxx.

References BSCNbTheta, and zPosition.

00595 {
00596   if(NbCrystal>=0&&NbCrystal<BSCNbTheta*6)
00597     {
00598       return zPosition[NbCrystal];
00599     }
00600   else
00601     {
00602       return 0.;
00603     }
00604 }

void ExtBesEmcGeometry::ModifyForCasing (  ) 

Definition at line 312 of file ExtBesEmcGeometry.cxx.

References BSCAngleRotat, BSCCryLength, BSCNbTheta, BSCPhiRmin, BSCPosition1, BSCRmin, cos(), fAlThickness, fMylarThickness, fTyvekThickness, genRecEmupikp::i, phiAxis, sin(), tan(), tanAlpha1, tanAlpha2, thetaAxis, thetaPosition, verboseLevel, xHalfLength1, xHalfLength2, xHalfLength3, xHalfLength4, xPosition, yHalfLength1, yHalfLength2, yPosition, zHalfLength, and zPosition.

00313 {
00314   // Compute the sizes of the naked crystals and the casing
00315   // Casing size
00316   // BSCNbTheta---->2*BSCNbTheta-1 : before crystal
00317   // 2*BSCNbTheta-->3*BSCNbTheta-1 : a side of crystal
00318   // 3*BSCNbTheta-->4*BSCNbTheta-1 : b side of crystal
00319   // 4*BSCNbTheta-->5*BSCNbTheta-1 : c side of crystal
00320   // 5*BSCNbTheta-->6*BSCNbTheta-1 : d side of crystal
00321   //                         d
00322   //                    ----------
00323   //                   |          |
00324   //                   |          |  
00325   //               c   |          |    a
00326   //                   |          |
00327   //                   |          |
00328   //                   |         / 
00329   //                   |     /
00330   //                   | / 
00331   //                         b   
00332   G4double totalThickness=fTyvekThickness+fAlThickness+fMylarThickness;//
00333   G4double delta=0.,angle1=0.*deg,angle2=0.*deg;
00334   G4double oop; //the distance of the centers of the two parallel plane
00335 
00336   G4double rminprojected=BSCRmin*cos(BSCAngleRotat);
00337   rminprojected=BSCRmin;//accord with hardware design
00338 
00339   G4int i;
00340   for(i=0;i<BSCNbTheta;i++)
00341     {
00342       zHalfLength[BSCNbTheta+i]=totalThickness/2.;
00343       yHalfLength1[BSCNbTheta+i]=yHalfLength1[i];
00344       yHalfLength2[BSCNbTheta+i]=yHalfLength1[i]
00345         +(yHalfLength2[i]-yHalfLength1[i])*totalThickness/BSCCryLength;
00346       xHalfLength1[BSCNbTheta+i]=xHalfLength1[i];
00347       xHalfLength2[BSCNbTheta+i]=xHalfLength2[i];
00348       xHalfLength1[BSCNbTheta*2+i]=xHalfLength3[BSCNbTheta+i]=
00349         xHalfLength1[i]*(BSCCryLength-totalThickness)/BSCCryLength
00350         +xHalfLength3[i]*totalThickness/BSCCryLength;
00351       xHalfLength2[BSCNbTheta*4+i]=xHalfLength4[BSCNbTheta+i]=
00352         xHalfLength2[i]*(BSCCryLength-totalThickness)/BSCCryLength
00353         +xHalfLength4[i]*totalThickness/BSCCryLength;
00354       
00355       zHalfLength[BSCNbTheta*5+i]=zHalfLength[BSCNbTheta*4+i]=
00356       zHalfLength[BSCNbTheta*3+i]=zHalfLength[BSCNbTheta*2+i]=
00357         zHalfLength[i]-totalThickness/2.;
00358       
00359       yHalfLength2[BSCNbTheta*2+i]=yHalfLength1[BSCNbTheta*2+i]=
00360         totalThickness/cos(thetaPosition[i+1]-thetaPosition[i])/2.;
00361       xHalfLength3[BSCNbTheta*2+i]=xHalfLength3[i];
00362       xHalfLength4[BSCNbTheta*2+i]=xHalfLength3[i]
00363         +(xHalfLength4[i]-xHalfLength3[i])*yHalfLength2[BSCNbTheta*2+i]
00364         /yHalfLength2[i];
00365       xHalfLength2[BSCNbTheta*2+i]=xHalfLength3[BSCNbTheta+i]
00366         +(xHalfLength4[BSCNbTheta+i]-xHalfLength3[BSCNbTheta+i])
00367         *yHalfLength1[BSCNbTheta*2+i]/yHalfLength2[BSCNbTheta*1+i];
00368       
00369       yHalfLength2[BSCNbTheta*4+i]=yHalfLength1[BSCNbTheta*4+i]=
00370         totalThickness/2.;
00371       xHalfLength4[BSCNbTheta*4+i]=xHalfLength4[i];
00372       xHalfLength3[BSCNbTheta*4+i]=xHalfLength4[i]
00373         -(xHalfLength4[i]-xHalfLength3[i])*yHalfLength2[BSCNbTheta*4+i]
00374         /yHalfLength2[i];
00375       xHalfLength1[BSCNbTheta*4+i]=xHalfLength4[BSCNbTheta+i]
00376         -(xHalfLength4[BSCNbTheta+i]-xHalfLength3[BSCNbTheta+i])
00377         *yHalfLength1[BSCNbTheta*4+i]/yHalfLength2[BSCNbTheta*1+i];
00378       
00379       delta=totalThickness/2.+yHalfLength1[BSCNbTheta*2+i];
00380       angle1=atan(yHalfLength2[i]/(xHalfLength4[i]-xHalfLength3[i]));
00381       angle2=atan(2.*(xHalfLength4[i]-xHalfLength2[i])*sin(angle1)
00382                   /BSCCryLength);
00383       
00384       yHalfLength1[BSCNbTheta*5+i]=yHalfLength1[BSCNbTheta*3+i]=
00385         yHalfLength1[i]-delta;
00386       yHalfLength2[BSCNbTheta*5+i]=yHalfLength2[BSCNbTheta*3+i]=
00387         yHalfLength2[i]-delta;
00388       xHalfLength4[BSCNbTheta*3+i]=xHalfLength3[BSCNbTheta*3+i]=
00389       xHalfLength2[BSCNbTheta*3+i]=xHalfLength1[BSCNbTheta*3+i]=
00390         totalThickness/cos(angle2)/sin(angle1)/2.;
00391       xHalfLength4[BSCNbTheta*5+i]=xHalfLength3[BSCNbTheta*5+i]=
00392       xHalfLength2[BSCNbTheta*5+i]=xHalfLength1[BSCNbTheta*5+i]=
00393         totalThickness/2.;
00394       
00395       zHalfLength[i]=zHalfLength[i]-totalThickness/2.;
00396       yHalfLength1[i]=yHalfLength1[i]-delta;
00397       yHalfLength2[i]=yHalfLength2[i]-delta;
00398       delta=totalThickness*(1.+1./cos(angle2)/sin(angle1))/2.;
00399       xHalfLength1[i]=xHalfLength1[i]-delta;
00400       xHalfLength2[i]=xHalfLength2[i]-delta;
00401       xHalfLength3[i]=xHalfLength3[i]-delta;
00402       xHalfLength4[i]=xHalfLength4[i]-delta;
00403 
00404       oop=sqrt((yHalfLength2[i]-yHalfLength1[i])*(yHalfLength2[i]
00405                                                   -yHalfLength1[i])
00406                +(xHalfLength3[i]+xHalfLength4[i]-xHalfLength1[i]
00407                  -xHalfLength2[i])*(xHalfLength3[i]+xHalfLength4[i]
00408                                     -xHalfLength1[i]-xHalfLength2[i])/4);
00409       thetaAxis[i]=atan(oop/BSCCryLength);
00410       // -phi  --->180+phi 
00411       phiAxis[i]  =180.*deg+atan((yHalfLength2[i]-yHalfLength1[i])
00412                                  /(xHalfLength3[i]+xHalfLength4[i]
00413                                    -xHalfLength1[i]-xHalfLength2[i])*2.);
00414 
00415       oop=sqrt((yHalfLength2[BSCNbTheta+i]-yHalfLength1[BSCNbTheta+i])
00416                *(yHalfLength2[BSCNbTheta+i]-yHalfLength1[BSCNbTheta+i])
00417                +(xHalfLength3[BSCNbTheta+i]+xHalfLength4[BSCNbTheta+i]
00418                  -xHalfLength1[BSCNbTheta+i]-xHalfLength2[BSCNbTheta+i])
00419                *(xHalfLength3[BSCNbTheta+i]+xHalfLength4[BSCNbTheta+i]
00420                  -xHalfLength1[BSCNbTheta+i]-xHalfLength2[BSCNbTheta+i])/4);
00421       thetaAxis[BSCNbTheta+i]=atan(oop/totalThickness);
00422       phiAxis  [BSCNbTheta+i]=
00423         -atan((yHalfLength2[BSCNbTheta+i]-yHalfLength1[BSCNbTheta+i])
00424               /(xHalfLength3[BSCNbTheta+i]+xHalfLength4[BSCNbTheta+i]
00425                 -xHalfLength1[BSCNbTheta+i]-xHalfLength2[BSCNbTheta+i])*2.);
00426 
00427       oop=sqrt((yHalfLength2[i]-yHalfLength1[i])*(yHalfLength2[i]
00428                                                   -yHalfLength1[i])*4
00429                +(xHalfLength3[BSCNbTheta*2+i]+xHalfLength4[BSCNbTheta*2+i]
00430                  -xHalfLength1[BSCNbTheta*2+i]-xHalfLength2[BSCNbTheta*2+i])
00431                *(xHalfLength3[BSCNbTheta*2+i]+xHalfLength4[BSCNbTheta*2+i]
00432                  -xHalfLength1[BSCNbTheta*2+i]-xHalfLength2[BSCNbTheta*2+i])
00433                /4);
00434       thetaAxis[BSCNbTheta*2+i]=atan(oop/(zHalfLength[BSCNbTheta*2+i]*2));
00435       phiAxis  [BSCNbTheta*2+i]=
00436         -atan((yHalfLength2[i]-yHalfLength1[i])
00437               /(xHalfLength3[BSCNbTheta*2+i]+xHalfLength4[BSCNbTheta*2+i]
00438                 -xHalfLength1[BSCNbTheta*2+i]-xHalfLength2[BSCNbTheta*2+i])*4);
00439 
00440       oop=sqrt((yHalfLength2[i]-yHalfLength1[i])*(yHalfLength2[i]
00441                                                   -yHalfLength1[i])*4
00442                +(xHalfLength4[i]-xHalfLength2[i])
00443                *(xHalfLength4[i]-xHalfLength2[i])*4);
00444       thetaAxis[BSCNbTheta*3+i]=atan(oop/(zHalfLength[BSCNbTheta*3+i]*2));
00445       phiAxis  [BSCNbTheta*3+i]=-atan((yHalfLength2[i]-yHalfLength1[i])
00446                                       /(xHalfLength4[i]-xHalfLength2[i]));
00447       
00448       thetaAxis[BSCNbTheta*4+i]=
00449         atan((xHalfLength4[BSCNbTheta*4+i]+xHalfLength3[BSCNbTheta*4+i]
00450               -xHalfLength2[BSCNbTheta*4+i]-xHalfLength1[BSCNbTheta*4+i])/2.
00451              /(zHalfLength[BSCNbTheta*4+i]*2));
00452       phiAxis  [BSCNbTheta*4+i]=0;
00453 
00454       thetaAxis[BSCNbTheta*5+i]=atan((xHalfLength3[BSCNbTheta*5+i]
00455                                       -xHalfLength1[BSCNbTheta*5+i])
00456                                      /(zHalfLength[BSCNbTheta*5+i]*2));
00457       phiAxis  [BSCNbTheta*5+i]=-90.*deg;
00458       
00459       tanAlpha2[BSCNbTheta+i]=tanAlpha1[BSCNbTheta+i]=tanAlpha1[i]=
00460         -(xHalfLength2[i]-xHalfLength1[i])/yHalfLength1[i]/2.;
00461       tanAlpha1[BSCNbTheta*2+i]=(xHalfLength2[BSCNbTheta*2+i]
00462                                  -xHalfLength1[BSCNbTheta*2+i])
00463         /yHalfLength1[BSCNbTheta*2+i]/2.;
00464       tanAlpha1[BSCNbTheta*3+i]=tanAlpha1[i]*2.;
00465       tanAlpha1[BSCNbTheta*4+i]=(xHalfLength2[BSCNbTheta*4+i]
00466                                  -xHalfLength1[BSCNbTheta*4+i])
00467         /yHalfLength1[BSCNbTheta*4+i]/2.;
00468       tanAlpha1[BSCNbTheta*5+i]=(xHalfLength2[BSCNbTheta*5+i]
00469                                  -xHalfLength1[BSCNbTheta*5+i])
00470         /yHalfLength1[BSCNbTheta*5+i]/2.;
00471       
00472       tanAlpha2[i]=-(xHalfLength4[i]-xHalfLength3[i])/yHalfLength2[i]/2.;
00473       //tanAlpha2[BSCNbTheta+i]=(xHalfLength4[BSCNbTheta+i]-xHalfLength3[BSCNbTheta+i])/yHalfLength2[BSCNbTheta+i]/2.;
00474       tanAlpha2[BSCNbTheta*2+i]=(xHalfLength4[BSCNbTheta*2+i]
00475                                  -xHalfLength3[BSCNbTheta*2+i])
00476         /yHalfLength2[BSCNbTheta*2+i]/2.;
00477       tanAlpha2[BSCNbTheta*3+i]=tanAlpha2[i]*2.;
00478       tanAlpha2[BSCNbTheta*4+i]=(xHalfLength4[BSCNbTheta*4+i]
00479                                  -xHalfLength3[BSCNbTheta*4+i])
00480         /yHalfLength2[BSCNbTheta*4+i]/2.;
00481       tanAlpha2[BSCNbTheta*5+i]=(xHalfLength4[BSCNbTheta*5+i]
00482                                  -xHalfLength3[BSCNbTheta*5+i])
00483         /yHalfLength2[BSCNbTheta*5+i]/2.;
00484 
00485       zPosition[BSCNbTheta*5+i]=zPosition[BSCNbTheta*3+i]=zPosition[i]=
00486         zPosition[i]+totalThickness/2.*cos(thetaPosition[i])
00487         -yHalfLength1[BSCNbTheta*2+i]*sin(thetaPosition[i]);
00488       zPosition[i]=totalThickness/2.;//for the newest method
00489       xPosition[BSCNbTheta*5+i]=xPosition[BSCNbTheta*3+i]=xPosition[i]=
00490         xPosition[i]+totalThickness/2.*sin(thetaPosition[i])
00491         +totalThickness*(1./cos(thetaPosition[i+1]-thetaPosition[i])-1)/2.
00492         *cos(thetaPosition[i]);
00493       xPosition[i]=totalThickness*(1.-1./cos(angle2)/sin(angle1))/2.;
00494                                                    //for the newest method
00495       yPosition[i]=yPosition[i]
00496         +totalThickness*(1.-1./cos(angle2)/sin(angle1))/2.;
00497       yPosition[i]=yHalfLength1[BSCNbTheta*2+i]-totalThickness/2.;//for the newest method
00498       yPosition[BSCNbTheta*3+i]=yPosition[i]*2.+xHalfLength1[BSCNbTheta*3+i];
00499       yPosition[BSCNbTheta*5+i]=xHalfLength1[BSCNbTheta*5+i];
00500 
00501       xPosition[BSCNbTheta+i]=BSCPhiRmin
00502         +zHalfLength[BSCNbTheta+i]*sin(thetaPosition[i])
00503         +(3.*yHalfLength1[BSCNbTheta+i]-yHalfLength2[BSCNbTheta+i])/2.
00504         *cos(thetaPosition[i]);
00505       yPosition[BSCNbTheta+i]=(xHalfLength1[BSCNbTheta+i]
00506                                +xHalfLength3[BSCNbTheta+i]
00507                                +xHalfLength2[BSCNbTheta+i]
00508                                +xHalfLength4[BSCNbTheta+i])/4.;
00509       zPosition[BSCNbTheta+i]=BSCPosition1+rminprojected/tan(thetaPosition[i])
00510         +(2.*yHalfLength1[BSCNbTheta+i]/tan(thetaPosition[i])
00511           +zHalfLength[BSCNbTheta+i])*cos(thetaPosition[i])
00512         +(yHalfLength1[BSCNbTheta+i]+yHalfLength2[BSCNbTheta+i])/2.
00513         *sin(thetaPosition[i]);
00514 
00515       xPosition[BSCNbTheta*2+i]=xPosition[i]
00516         +((yHalfLength1[i]+yHalfLength2[i])/2.+yHalfLength1[BSCNbTheta*2+i])
00517         *cos(thetaPosition[i]);
00518       zPosition[BSCNbTheta*2+i]=zPosition[i]
00519         -((yHalfLength1[i]+yHalfLength2[i])/2.+yHalfLength1[BSCNbTheta*2+i])
00520         *sin(thetaPosition[i]);
00521       yPosition[BSCNbTheta*2+i]=(xHalfLength1[BSCNbTheta*2+i]
00522                                  +xHalfLength3[BSCNbTheta*2+i]
00523                                  +xHalfLength2[BSCNbTheta*2+i]
00524                                  +xHalfLength4[BSCNbTheta*2+i])/4.;
00525 
00526       xPosition[BSCNbTheta*4+i]=xPosition[i]
00527         -((yHalfLength1[i]+yHalfLength2[i])/2.+yHalfLength1[BSCNbTheta*4+i])
00528         *cos(thetaPosition[i]);
00529       zPosition[BSCNbTheta*4+i]=zPosition[i]
00530         -((yHalfLength1[i]+yHalfLength2[i])/2.+yHalfLength1[BSCNbTheta*4+i])
00531         *sin(thetaPosition[i]);
00532       yPosition[BSCNbTheta*4+i]=(xHalfLength1[BSCNbTheta*4+i]
00533                                  +xHalfLength3[BSCNbTheta*4+i]
00534                                  +xHalfLength2[BSCNbTheta*4+i]
00535                                  +xHalfLength4[BSCNbTheta*4+i])/4.;
00536 
00537     }
00538 
00539   if(verboseLevel>1)
00540     for(i=0;i<BSCNbTheta*6;i++)
00541       {
00542         G4cout << "The sizes of the " << i+1 << " crystal are:" << G4endl
00543                << "zHalfLength =" << zHalfLength[i]/cm  << "(cm)," << G4endl
00544                << "thetaAxis   =" << thetaAxis[i]/deg   << "(deg),"<< G4endl
00545                << "phiAxis     =" << phiAxis[i]/deg     << "(deg),"<< G4endl
00546                << "yHalfLength1=" << yHalfLength1[i]/cm << "(cm)," << G4endl
00547                << "xHalfLength1=" << xHalfLength1[i]/cm << "(cm)," << G4endl
00548                << "xHalfLength2=" << xHalfLength2[i]/cm << "(cm)," << G4endl
00549                << "tanAlpha1   =" << tanAlpha1[i]                  << G4endl
00550                << "yHalfLength2=" << yHalfLength2[i]/cm << "(cm)," << G4endl
00551                << "xHalfLength3=" << xHalfLength3[i]/cm << "(cm)," << G4endl
00552                << "xHalfLength4=" << xHalfLength4[i]/cm << "(cm)," << G4endl
00553                << "tanAlpha2   =" << tanAlpha2[i]       << "."     << G4endl
00554                << "The position of the " << i+1 << " crystal is:" << G4endl
00555                << "(" << xPosition[i]/cm << ","
00556                << yPosition[i]/cm << ","
00557                << zPosition[i]/cm << ")cm" << G4endl;
00558       }
00559   
00560 }

void ExtBesEmcGeometry::PrintEMCParameters (  ) 

Definition at line 115 of file ExtBesEmcGeometry.cxx.

00116 {
00117   // Print EMC parameters
00118   ;
00119 }

void ExtBesEmcGeometry::ReadEMCParameters (  ) 

Definition at line 24 of file ExtBesEmcGeometry.cxx.

References AlPlateDz, BSCAngleRotat, BSCCryLength, BSCDz, BSCDz1, BSCNbPhi, BSCNbTheta, BSCPosition0, BSCPosition1, BSCRmax1, BSCRmin, BSCRmin1, BSCRmin2, BSCYFront, BSCYFront0, BSCYFront1, cableDr, EndRingDr, EndRingDz, EndRingRmin, fAlThickness, fMylarThickness, fTyvekThickness, ExtBesEmcParameter::GetAlPlateDz(), ExtBesEmcParameter::GetAlThickness(), ExtBesEmcParameter::GetBSCAngleRotat(), ExtBesEmcParameter::GetBSCDz(), ExtBesEmcParameter::GetBSCDz1(), ExtBesEmcParameter::GetBSCNbPhi(), ExtBesEmcParameter::GetBSCNbTheta(), ExtBesEmcParameter::GetBSCPosition0(), ExtBesEmcParameter::GetBSCPosition1(), ExtBesEmcParameter::GetBSCRmax1(), ExtBesEmcParameter::GetBSCRmin(), ExtBesEmcParameter::GetBSCRmin1(), ExtBesEmcParameter::GetBSCRmin2(), ExtBesEmcParameter::GetBSCYFront(), ExtBesEmcParameter::GetBSCYFront0(), ExtBesEmcParameter::GetBSCYFront1(), ExtBesEmcParameter::GetCableDr(), ExtBesEmcParameter::GetCrystalLength(), ExtBesEmcParameter::GetEndRingDr(), ExtBesEmcParameter::GetEndRingDz(), ExtBesEmcParameter::GetEndRingRmin(), ExtBesEmcParameter::GetHangingPlateDz(), ExtBesEmcParameter::GetInstance(), ExtBesEmcParameter::GetMylarThickness(), ExtBesEmcParameter::GetOCGirderAngle(), ExtBesEmcParameter::GetOrgGlassLengthX(), ExtBesEmcParameter::GetOrgGlassLengthY(), ExtBesEmcParameter::GetOrgGlassLengthZ(), ExtBesEmcParameter::GetPABoxDz(), ExtBesEmcParameter::GetPABoxThickness(), ExtBesEmcParameter::GetPDLengthX(), ExtBesEmcParameter::GetPDLengthY(), ExtBesEmcParameter::GetPDLengthZ(), ExtBesEmcParameter::GetRearBoxDz(), ExtBesEmcParameter::GetRearBoxLength(), ExtBesEmcParameter::GetRearCasingThickness(), ExtBesEmcParameter::GetSPBarThickness(), ExtBesEmcParameter::GetSPBarThickness1(), ExtBesEmcParameter::GetSPBarwidth(), ExtBesEmcParameter::GetTaperRingDz(), ExtBesEmcParameter::GetTaperRingInnerLength(), ExtBesEmcParameter::GetTaperRingOuterLength(), ExtBesEmcParameter::GetTaperRingTheta(), ExtBesEmcParameter::GetTaperRingThickness1(), ExtBesEmcParameter::GetTaperRingThickness2(), ExtBesEmcParameter::GetTaperRingThickness3(), ExtBesEmcParameter::GetTyvekThickness(), ExtBesEmcParameter::GetWaterPipeDr(), ExtBesEmcParameter::GetWaterPipeThickness(), HangingPlateDz, genRecEmupikp::i, OCGirderAngle, orgGlassLengthX, orgGlassLengthY, orgGlassLengthZ, PABoxDz, PABoxThickness, PDLengthX, PDLengthY, PDLengthZ, phiAxis, rearBoxDz, rearBoxLength, rearCasingThickness, SPBarThickness, SPBarThickness1, SPBarwidth, tanAlpha1, tanAlpha2, TaperRingDz, TaperRingInnerLength, TaperRingOuterLength, TaperRingTheta, TaperRingThickness1, TaperRingThickness2, TaperRingThickness3, thetaAxis, thetaPosition, waterPipeDr, waterPipeThickness, xHalfLength1, xHalfLength2, xHalfLength3, xHalfLength4, xPosition, yHalfLength1, yHalfLength2, yPosition, zHalfLength, and zPosition.

Referenced by ComputeEMCParameters().

00025 {
00026   // Read EMC parameters from database
00027   ExtBesEmcParameter& emcPara=ExtBesEmcParameter::GetInstance();
00028   //BesEmcParameter emcPara;
00029   //emcPara.ReadData();
00030     
00031   TaperRingDz = emcPara.GetTaperRingDz();
00032   TaperRingThickness1 = emcPara.GetTaperRingThickness1();
00033   TaperRingThickness2 = emcPara.GetTaperRingThickness2();
00034   TaperRingThickness3 = emcPara.GetTaperRingThickness3();
00035   TaperRingTheta = emcPara.GetTaperRingTheta()*deg;
00036   TaperRingInnerLength = emcPara.GetTaperRingInnerLength();
00037   TaperRingOuterLength = emcPara.GetTaperRingOuterLength();
00038  
00039   BSCRmin           = emcPara.GetBSCRmin();
00040   BSCDz             = emcPara.GetBSCDz()-TaperRingThickness3;
00041 
00042   BSCRmin1          = emcPara.GetBSCRmin1();
00043   BSCRmax1          = emcPara.GetBSCRmax1();
00044   BSCRmin2          = emcPara.GetBSCRmin2();
00045   //BSCRmax2          = emcPara.GetBSCRmax2();
00046   BSCDz1            = emcPara.GetBSCDz1()-TaperRingThickness3;
00047   
00048   BSCAngleRotat     = emcPara.GetBSCAngleRotat()*deg;
00049   BSCNbPhi          = emcPara.GetBSCNbPhi();
00050   BSCNbTheta        = emcPara.GetBSCNbTheta();
00051   
00052   BSCCryLength      = emcPara.GetCrystalLength();
00053   BSCYFront0        = emcPara.GetBSCYFront0();
00054   BSCYFront         = emcPara.GetBSCYFront();
00055   BSCYFront1        = emcPara.GetBSCYFront1();
00056   BSCPosition0      = emcPara.GetBSCPosition0();
00057   BSCPosition1      = emcPara.GetBSCPosition1();
00058 
00059   fTyvekThickness   = emcPara.GetTyvekThickness();
00060   fAlThickness      = emcPara.GetAlThickness();
00061   fMylarThickness   = emcPara.GetMylarThickness();
00062   
00063   rearBoxLength     = emcPara.GetRearBoxLength();
00064   rearBoxDz         = emcPara.GetRearBoxDz();
00065   
00066   HangingPlateDz    = emcPara.GetHangingPlateDz();
00067   OCGirderAngle     = emcPara.GetOCGirderAngle()*deg;
00068 
00069   rearCasingThickness = emcPara.GetRearCasingThickness();
00070 
00071   orgGlassLengthX   = emcPara.GetOrgGlassLengthX();
00072   orgGlassLengthY   = emcPara.GetOrgGlassLengthY();
00073   orgGlassLengthZ   = emcPara.GetOrgGlassLengthZ();
00074 
00075   PDLengthX         = emcPara.GetPDLengthX();
00076   PDLengthY         = emcPara.GetPDLengthY();
00077   PDLengthZ         = emcPara.GetPDLengthZ();
00078 
00079   AlPlateDz         = emcPara.GetAlPlateDz();
00080   PABoxDz           = emcPara.GetPABoxDz();
00081   PABoxThickness    = emcPara.GetPABoxThickness();
00082 
00083   cableDr           = emcPara.GetCableDr();
00084   waterPipeDr       = emcPara.GetWaterPipeDr();
00085   waterPipeThickness= emcPara.GetWaterPipeThickness();
00086 
00087   SPBarThickness    = emcPara.GetSPBarThickness();
00088   SPBarThickness1   = emcPara.GetSPBarThickness1();
00089   SPBarwidth        = emcPara.GetSPBarwidth();
00090 
00091   EndRingDz         = emcPara.GetEndRingDz();
00092   EndRingDr         = emcPara.GetEndRingDr();
00093   EndRingRmin       = emcPara.GetEndRingRmin();
00094   
00095   for(G4int i=0;i<BSCNbTheta*6;i++)
00096   {
00097     zHalfLength[i]  =0;
00098     thetaAxis[i]    =0;
00099     phiAxis  [i]    =0;
00100     yHalfLength1[i] =0; 
00101     xHalfLength1[i] =0;
00102     xHalfLength2[i] =0;
00103     tanAlpha1[i]    =0;
00104     yHalfLength2[i] =0;
00105     xHalfLength3[i] =0; 
00106     xHalfLength4[i] =0;
00107     tanAlpha2[i]    =0;
00108     thetaPosition[i]=0;
00109     xPosition[i]    =0;
00110     yPosition[i]    =0;
00111     zPosition[i]    =0;
00112   }     
00113 }

void ExtBesEmcGeometry::SetBSCAngleRotat ( G4double  val  )  [inline]

Definition at line 44 of file ExtBesEmcGeometry.h.

References BSCAngleRotat.

00044 {BSCAngleRotat=val;};

void ExtBesEmcGeometry::SetBSCCrystalLength ( G4double  val  )  [inline]

Definition at line 39 of file ExtBesEmcGeometry.h.

References BSCCryLength.

00039 {BSCCryLength=val;};

void ExtBesEmcGeometry::SetBSCDz ( G4double  val  )  [inline]

Definition at line 36 of file ExtBesEmcGeometry.h.

References BSCDz.

00036 { BSCDz=val;};

void ExtBesEmcGeometry::SetBSCNbPhi ( G4int  val  )  [inline]

Definition at line 37 of file ExtBesEmcGeometry.h.

References BSCNbPhi.

00037 {BSCNbPhi=val;};

void ExtBesEmcGeometry::SetBSCNbTheta ( G4int  val  )  [inline]

Definition at line 38 of file ExtBesEmcGeometry.h.

References BSCNbTheta.

00038 {BSCNbTheta=val;};

void ExtBesEmcGeometry::SetBSCPosition0 ( G4double  val  )  [inline]

Definition at line 42 of file ExtBesEmcGeometry.h.

References BSCPosition0.

00042 {BSCPosition0=val;};

void ExtBesEmcGeometry::SetBSCPosition1 ( G4double  val  )  [inline]

Definition at line 43 of file ExtBesEmcGeometry.h.

References BSCPosition1.

00043 {BSCPosition1=val;};

void ExtBesEmcGeometry::SetBSCRmin ( G4double  val  )  [inline]

Definition at line 35 of file ExtBesEmcGeometry.h.

References BSCRmin.

00035 { BSCRmin=val;};

void ExtBesEmcGeometry::SetBSCYFront ( G4double  val  )  [inline]

Definition at line 41 of file ExtBesEmcGeometry.h.

References BSCYFront.

00041 {BSCYFront=val;};

void ExtBesEmcGeometry::SetBSCYFront0 ( G4double  val  )  [inline]

Definition at line 40 of file ExtBesEmcGeometry.h.

References BSCYFront0.

00040 {BSCYFront0=val;};

void ExtBesEmcGeometry::SetCasingThickness ( G4ThreeVector   ) 

Definition at line 562 of file ExtBesEmcGeometry.cxx.

References fAlThickness, fMylarThickness, and fTyvekThickness.

00563 {
00564   // change Gap thickness and recompute the calorimeter parameters
00565   fTyvekThickness = val('X');
00566   fAlThickness    = val('Y');
00567   fMylarThickness = val('Z');
00568 }

void ExtBesEmcGeometry::SetVerboseLevel ( G4int  val  )  [inline]

Definition at line 33 of file ExtBesEmcGeometry.h.

References verboseLevel.

00033 { verboseLevel=val;}


Friends And Related Function Documentation

friend class ExtBesEmcConstruction [friend]

Definition at line 24 of file ExtBesEmcGeometry.h.


Member Data Documentation

G4double ExtBesEmcGeometry::AlPlateDz [private]

Definition at line 161 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::BSCAngleRotat [private]

Definition at line 106 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCAngleRotat(), ModifyForCasing(), ReadEMCParameters(), and SetBSCAngleRotat().

G4double ExtBesEmcGeometry::BSCCryLength [private]

Definition at line 91 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCCryLength(), ModifyForCasing(), ReadEMCParameters(), and SetBSCCrystalLength().

G4double ExtBesEmcGeometry::BSCDz [private]

Definition at line 109 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCDz(), ReadEMCParameters(), and SetBSCDz().

G4double ExtBesEmcGeometry::BSCDz1 [private]

Definition at line 115 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4int ExtBesEmcGeometry::BSCNbPhi [private]

Definition at line 98 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCNbPhi(), ReadEMCParameters(), and SetBSCNbPhi().

G4int ExtBesEmcGeometry::BSCNbTheta [private]

Definition at line 99 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCNbTheta(), GetPhiAxis(), GetPhysiBSCCrystal(), GetTanAlpha1(), GetTanAlpha2(), GetThetaAxis(), GetThetaPosition(), GetXHalfLength1(), GetXHalfLength2(), GetXHalfLength3(), GetXHalfLength4(), GetXPosition(), GetYHalfLength1(), GetYHalfLength2(), GetYPosition(), GetZHalfLength(), GetZPosition(), ModifyForCasing(), ReadEMCParameters(), and SetBSCNbTheta().

G4double ExtBesEmcGeometry::BSCPhiDphi [private]

Definition at line 105 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCPhiDz [private]

Definition at line 103 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCPhiRmax [private]

Definition at line 102 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCPhiRmin [private]

Definition at line 101 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ModifyForCasing().

G4double ExtBesEmcGeometry::BSCPhiSphi [private]

Definition at line 104 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCPosition0 [private]

Definition at line 95 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCPositon0(), ReadEMCParameters(), and SetBSCPosition0().

G4double ExtBesEmcGeometry::BSCPosition1 [private]

Definition at line 96 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCPositon1(), ModifyForCasing(), ReadEMCParameters(), and SetBSCPosition1().

G4double ExtBesEmcGeometry::BSCRmax [private]

Definition at line 108 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCRmax1 [private]

Definition at line 112 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::BSCRmax2 [private]

Definition at line 114 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::BSCRmin [private]

Definition at line 107 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCRmin(), ModifyForCasing(), ReadEMCParameters(), and SetBSCRmin().

G4double ExtBesEmcGeometry::BSCRmin1 [private]

Definition at line 111 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::BSCRmin2 [private]

Definition at line 113 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::BSCYFront [private]

Definition at line 93 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCYFront(), ReadEMCParameters(), and SetBSCYFront().

G4double ExtBesEmcGeometry::BSCYFront0 [private]

Definition at line 92 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetBSCYFront0(), ReadEMCParameters(), and SetBSCYFront0().

G4double ExtBesEmcGeometry::BSCYFront1 [private]

Definition at line 94 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::cableDr [private]

Definition at line 178 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::cableLength[22] [private]

Definition at line 177 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::cablePosX[22] [private]

Definition at line 179 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::cablePosY[22] [private]

Definition at line 180 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::cablePosZ[22] [private]

Definition at line 181 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::EndRingDr [private]

Definition at line 200 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::EndRingDz [private]

Definition at line 199 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::EndRingRmin [private]

Definition at line 201 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::fAlThickness [private]

Definition at line 136 of file ExtBesEmcGeometry.h.

Referenced by GetCasingThickness(), ModifyForCasing(), ReadEMCParameters(), and SetCasingThickness().

G4double ExtBesEmcGeometry::fMylarThickness [private]

Definition at line 137 of file ExtBesEmcGeometry.h.

Referenced by GetCasingThickness(), ModifyForCasing(), ReadEMCParameters(), and SetCasingThickness().

G4double ExtBesEmcGeometry::fTyvekThickness [private]

Definition at line 135 of file ExtBesEmcGeometry.h.

Referenced by GetCasingThickness(), ModifyForCasing(), ReadEMCParameters(), and SetCasingThickness().

G4double ExtBesEmcGeometry::HangingPlateDz [private]

Definition at line 168 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::OCGirderAngle [private]

Definition at line 173 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::OCGirderDz[22] [private]

Definition at line 172 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::OCGirderPosZ[22] [private]

Definition at line 174 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::OCGirderRmin1[22] [private]

Definition at line 170 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::OCGirderRmin2[22] [private]

Definition at line 171 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::orgGlassLengthX [private]

Definition at line 151 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::orgGlassLengthY [private]

Definition at line 152 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::orgGlassLengthZ [private]

Definition at line 153 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::PABoxDz [private]

Definition at line 164 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::PABoxThickness [private]

Definition at line 165 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::PDLengthX [private]

Definition at line 156 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::PDLengthY [private]

Definition at line 157 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::PDLengthZ [private]

Definition at line 158 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::phiAxis[150] [private]

Definition at line 119 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetPhiAxis(), ModifyForCasing(), and ReadEMCParameters().

G4VPhysicalVolume* ExtBesEmcGeometry::physiBSCCrystal[50] [private]

Definition at line 133 of file ExtBesEmcGeometry.h.

Referenced by GetPhysiBSCCrystal().

G4double ExtBesEmcGeometry::rearBoxDz [private]

Definition at line 142 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::rearBoxLength [private]

Definition at line 141 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::rearBoxPosX[150] [private]

Definition at line 143 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::rearBoxPosY[150] [private]

Definition at line 144 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::rearBoxPosZ[150] [private]

Definition at line 145 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::rearCasingThickness [private]

Definition at line 148 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::RFBarHoleDphi [private]

Definition at line 195 of file ExtBesEmcGeometry.h.

G4double ExtBesEmcGeometry::RFBarHoleDz [private]

Definition at line 196 of file ExtBesEmcGeometry.h.

G4int ExtBesEmcGeometry::RFBarHoleNb [private]

Definition at line 194 of file ExtBesEmcGeometry.h.

G4double ExtBesEmcGeometry::RFBarThickness [private]

Definition at line 193 of file ExtBesEmcGeometry.h.

G4double ExtBesEmcGeometry::SPBarDphi [private]

Definition at line 192 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::SPBarThickness [private]

Definition at line 189 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::SPBarThickness1 [private]

Definition at line 190 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::SPBarwidth [private]

Definition at line 191 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::tanAlpha1[150] [private]

Definition at line 123 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetTanAlpha1(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::tanAlpha2[150] [private]

Definition at line 127 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetTanAlpha2(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingDr [private]

Definition at line 210 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::TaperRingDz [private]

Definition at line 211 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingInnerLength [private]

Definition at line 212 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingOuterLength [private]

Definition at line 213 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingOuterLength1 [private]

Definition at line 214 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::TaperRingRmin1 [private]

Definition at line 208 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::TaperRingRmin2 [private]

Definition at line 209 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters().

G4double ExtBesEmcGeometry::TaperRingTheta [private]

Definition at line 207 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingThickness1 [private]

Definition at line 204 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingThickness2 [private]

Definition at line 205 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::TaperRingThickness3 [private]

Definition at line 206 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::thetaAxis[150] [private]

Definition at line 118 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetThetaAxis(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::thetaPosition[150] [private]

Definition at line 128 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetThetaPosition(), ModifyForCasing(), and ReadEMCParameters().

G4int ExtBesEmcGeometry::verboseLevel [private]

Definition at line 89 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), ExtBesEmcGeometry(), GetVerboseLevel(), ModifyForCasing(), and SetVerboseLevel().

G4double ExtBesEmcGeometry::waterPipeDr [private]

Definition at line 184 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::waterPipeThickness [private]

Definition at line 185 of file ExtBesEmcGeometry.h.

Referenced by ReadEMCParameters().

G4double ExtBesEmcGeometry::xHalfLength1[150] [private]

Definition at line 121 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetXHalfLength1(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::xHalfLength2[150] [private]

Definition at line 122 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetXHalfLength2(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::xHalfLength3[150] [private]

Definition at line 125 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetXHalfLength3(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::xHalfLength4[150] [private]

Definition at line 126 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetXHalfLength4(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::xPosition[150] [private]

Definition at line 129 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetXPosition(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::yHalfLength1[150] [private]

Definition at line 120 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetYHalfLength1(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::yHalfLength2[150] [private]

Definition at line 124 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetYHalfLength2(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::yPosition[150] [private]

Definition at line 130 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetYPosition(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::zHalfLength[150] [private]

Definition at line 117 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetZHalfLength(), ModifyForCasing(), and ReadEMCParameters().

G4double ExtBesEmcGeometry::zPosition[150] [private]

Definition at line 131 of file ExtBesEmcGeometry.h.

Referenced by ComputeEMCParameters(), GetZPosition(), ModifyForCasing(), and ReadEMCParameters().


Generated on Tue Nov 29 23:19:33 2016 for BOSS_7.0.2 by  doxygen 1.4.7