ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

//_________________________________________________________________________
// Geometry class  for PHOS : EMCA (Electromagnetic Calorimeter)  
// Its data members provide geometry parametrization of EMCA
// which can be changed in the constructor only.
// Author   : Yves Schutz (SUBATECH)
// Modified : Yuri Kharlov (IHEP, Protvino)
// 13 September 2000
// Modified : Dmitri Peressounko (RRC "Kurchatov Institute")
// 6 August 2001

// --- AliRoot header files ---

#include "AliPHOSEMCAGeometry.h"

ClassImp(AliPHOSEMCAGeometry)

//____________________________________________________________________________
AliPHOSEMCAGeometry::AliPHOSEMCAGeometry():
                     fAirGapLed(0.f),
                     fStripWallWidthOut(0.f),
                     fStripWallWidthIn(0.f),
                     fTyvecThickness(0.f),
                     fInnerThermoWidthX(0.f),
                     fInnerThermoWidthY(0.f),
                     fInnerThermoWidthZ(0.f),
                     fAirGapWidthX(0.f),
                     fAirGapWidthY(0.f),
                     fAirGapWidthZ(0.f),
                     fCoolerWidthX(0.f),
                     fCoolerWidthY(0.f),
                     fCoolerWidthZ(0.f),
                     fAlCoverThickness(0.f),
                     fOuterThermoWidthXUp(0.f),
                     fOuterThermoWidthXLow(0.f),
                     fOuterThermoWidthY(0.f),
                     fOuterThermoWidthZ(0.f),
                     fAlFrontCoverX(0.f),
                     fAlFrontCoverZ(0.f),
                     fFiberGlassSup2X(0.f),
                     fFiberGlassSup1X(0.f),
                     fFrameHeight(0.f),
                     fFrameThickness(0.f),
                     fAirSpaceFeeX(0.f),
                     fAirSpaceFeeZ(0.f),
                     fAirSpaceFeeY(0.f),
                     fWarmUpperThickness(0.f),
                     fWarmBottomThickness(0.f),
                     fWarmAlCoverWidthX(0.f),
                     fWarmAlCoverWidthY(0.f),
                     fWarmAlCoverWidthZ(0.f),
                     fFiberGlassSup1Y(0.f),
                     fFiberGlassSup2Y(0.f),
                     fTSupportDist(0.f),
                     fTSupport1Thickness(0.f),
                     fTSupport2Thickness(0.f),
                     fTSupport1Width(0.f),
                     fTSupport2Width(0.f),
                     fIPtoOuterCoverDistance(0.f),
                     fIPtoCrystalSurface(0.f),
                     fSupportPlateThickness(0.f),
                     fNCellsXInStrip(0),
                     fNCellsZInStrip(0),
                     fNStripX(0),
                     fNStripZ(0),
                     fNTSupports(0),
                     fNPhi(0),
                     fNZ(0)
{


  // Initializes the EMC parameters
  // Coordinate system chosen: x across beam, z along beam, y out of beam.
  // Reference point for all volumes incide module is 
  // center of module in x,z on the upper surface of support beam

  //Distance from IP to surface of the crystals
  fIPtoCrystalSurface     = 460.0 ;    


  //CRYSTAL

  fCrystalHalfSize[0] =  2.2 /2 ;  //Half-Sizes of crystall
  fCrystalHalfSize[1] = 18.0 /2 ;
  fCrystalHalfSize[2] =  2.2 /2 ;

  //APD + preamplifier

  //fPinDiodeSize[0] = 1.71 ;   //Values of ame PIN diode  
  //fPinDiodeSize[1] = 0.0280 ; // OHO 0.0280 is the depth of active layer
  //fPinDiodeSize[2] = 1.61 ;    
 
  fPinDiodeHalfSize[0] = 0.5000 /2 ;    // APD 5 mm side
  fPinDiodeHalfSize[1] = 0.0100 /2 ;    // APD bulk thickness
  fPinDiodeHalfSize[2] = 0.5000 /2 ;    // APD 5 mm side 

  fPreampHalfSize[0] = 1.5 / 2 ;       // Preamplifier
  fPreampHalfSize[1] = 0.5 / 2 ;
  fPreampHalfSize[2] = 1.5 / 2 ;

  //Strip unit (8x2 crystals)

  fNCellsXInStrip =  8 ;       //Number of crystals in strip unit along x-axis
  fNCellsZInStrip =  2 ;       //Number of crystals in strip unit along z-axis
  fNStripX        =  8 ;       //Number of strip units across along x-axis
  fNStripZ        = 28 ;       //Number of strips along z-axis

  fStripWallWidthOut = 0.01 ;  // Side to another strip  
  fStripWallWidthIn  = 0.02 ;  // Side betveen crystals in one strip

  fTyvecThickness = 0.0175 ;     //Thickness of the tyvec

  fAirGapLed = 1.5 - 2 * fPreampHalfSize[1] - 2 * fPinDiodeHalfSize[1] ; // Air gap before crystalls for LED system
                                           // Note, that Cell in Strip 1.5 longer then crystall

  //---Now calculate thechnical sizes for GEANT implementation

  fWrappedHalfSize[0] = (2*fTyvecThickness + 2*fCrystalHalfSize[0])/2 ;   //This will be size of crystall
  fWrappedHalfSize[1] = fCrystalHalfSize[1] ;                             //wrapped into tyvec
  fWrappedHalfSize[2] = (2*fTyvecThickness + 2*fCrystalHalfSize[2])/2 ;   //

  fAirCellHalfSize[0] = fWrappedHalfSize[0] + 0.01;
  fAirCellHalfSize[1] = (fAirGapLed + 2*fPreampHalfSize[1] + 
                       2*fPinDiodeHalfSize[1] + 2*fWrappedHalfSize[1])/2 ;  //in strip
  fAirCellHalfSize[2] = fWrappedHalfSize[2] + 0.01;

  //  fSupportPlateHalfSize[0] = ( (fNCellsXInStrip-1)*fStripWallWidthIn + 2*fStripWallWidthOut + 
  //			       fNCellsXInStrip * (2*fTyvecThickness + 2*fCrystalHalfSize[0]) )/2 ;
  fSupportPlateHalfSize[0] = 18.04  /2 ;
  fSupportPlateHalfSize[1] =   6.0  /2 ;
//  fSupportPlateHalfSize[2] = ( (fNCellsZInStrip-1)*fStripWallWidthIn + 2*fStripWallWidthOut +
//			       fNCellsZInStrip * (2*fTyvecThickness + 2*fCrystalHalfSize[2]) )/2;
  fSupportPlateHalfSize[2] =  4.51  /2 ;
  fSupportPlateThickness = 0.3 ;  
  fSupportPlateInHalfSize[0] = fSupportPlateHalfSize[0] ;                         //Half-sizes of the air
  fSupportPlateInHalfSize[1] = fSupportPlateHalfSize[1]-fSupportPlateThickness ;  //box in the support plate
  fSupportPlateInHalfSize[2] = fSupportPlateHalfSize[2]-fSupportPlateThickness/2 ;

  fStripHalfSize[0]= fSupportPlateHalfSize[0] ;  
  fStripHalfSize[1]= ( 2*fSupportPlateHalfSize[1] + 2*fAirCellHalfSize[1] )/2;      
  fStripHalfSize[2]= fSupportPlateHalfSize[2] ;

  // ------- Inner hermoinsulation ---------------
  fInnerThermoWidthX = 2.0 ;         // Width of the innerthermoinsulation across the beam
  fInnerThermoWidthY = 2.0 ;         // Width of the upper cover of innerthermoinsulation 
  fInnerThermoWidthZ = 2.0 ;         // Width of the innerthermoinsulation along the beam

  fInnerThermoHalfSize[0] = (2 * fStripHalfSize[0] * fNStripX + 2 * fInnerThermoWidthX ) /2 ;
  fInnerThermoHalfSize[1] = (2 * fStripHalfSize[1] + fInnerThermoWidthY ) /2 ; 
  fInnerThermoHalfSize[2] = (2 * fStripHalfSize[2] * fNStripZ + 2 * fInnerThermoWidthZ ) /2 ;

  // ------- Air gap between inner thermoinsulation and passive coller ---------

  fAirGapWidthX = 0.2 ;         // Width of the air gap across the beam
  fAirGapWidthY = 0.2 ;         // Width of the upper air gap
  fAirGapWidthZ = 0.2 ;         // Width of the air gap along the beam

  fAirGapHalfSize[0] = (2 * fInnerThermoHalfSize[0] + 2 * fAirGapWidthX ) /2 ;
  fAirGapHalfSize[1] = (2 * fInnerThermoHalfSize[1] +     fAirGapWidthY ) /2 ; 
  fAirGapHalfSize[2] = (2 * fInnerThermoHalfSize[2] + 2 * fAirGapWidthZ ) /2 ;
  
  // ------- Passive Cooler ------------------------

  fCoolerWidthX = 2.0 ;         // Width of the passive coller across the beam 
  fCoolerWidthY = 0.3 ;         // Width of the upper cover of cooler
  fCoolerWidthZ = 2.0 ;         // Width of the passive cooler along the beam

  fCoolerHalfSize[0] = (2 * fAirGapHalfSize[0] + 2 * fCoolerWidthX ) /2 ; 
  fCoolerHalfSize[1] = (2 * fAirGapHalfSize[1] +     fCoolerWidthY ) /2 ; 
  fCoolerHalfSize[2] = (2 * fAirGapHalfSize[2] + 2 * fCoolerWidthZ ) /2 ; 

  // ------- Outer thermoinsulation and Al cover -------------------------------
  
  fAlCoverThickness = 0.1 ;   //Thickness of the Al cover of the module  

  fOuterThermoWidthXUp  = 156.0 - fAlCoverThickness ; 
                                  //width of the upper surface of the PHOS module accross the beam 
  fOuterThermoWidthY    = 6.0 ;   // with of the upper cover of outer thermoinsulation
  fOuterThermoWidthZ    = 6.0 ;   //width of the thermoinsulation along the beam 

  fAlFrontCoverX = 6.0 ;   //Width of Al strip around fiberglass window: across
  fAlFrontCoverZ = 6.0 ;   //and along the beam


  // Calculate distance from IP to upper cover
  fIPtoOuterCoverDistance = fIPtoCrystalSurface - fAirGapLed - fInnerThermoWidthY - fAirGapWidthY - 
                            fCoolerWidthY - fOuterThermoWidthY - fAlCoverThickness ; 

  Float_t tanA = fOuterThermoWidthXUp / (2.*fIPtoOuterCoverDistance) ; 
                  // tan(a) where A = angle between IP to center and IP to side across beam

  fOuterThermoWidthXLow = fOuterThermoWidthXUp + 
                          2 * (2* fCoolerHalfSize[1] + fOuterThermoWidthY) * tanA  
                          - fAlCoverThickness ; 
                          //width of the lower surface of the COOL section accross the beam 


  fOuterThermoParams[0] = fOuterThermoWidthXUp / 2 ;   // half-length along x at the z surface positioned at -DZ; 
  fOuterThermoParams[1] = fOuterThermoWidthXLow/ 2 ;   // half-length along x at the z surface positioned at +DZ; 
  fOuterThermoParams[2] = ( 2 * fCoolerHalfSize[2] + 2 * fOuterThermoWidthZ ) / 2 ;
                                                       // `half-length along the y-axis' in out case this is z axis 
  fOuterThermoParams[3] = ( 2* fCoolerHalfSize[1] + fOuterThermoWidthY) /2 ;    
                                                       // `half-length along the z-axis' in our case this is y axis 

  fAlCoverParams[0] = fOuterThermoParams[0] + fAlCoverThickness ;
  fAlCoverParams[1] = fOuterThermoParams[1] + fAlCoverThickness ;
  fAlCoverParams[2] = fOuterThermoParams[2] + fAlCoverThickness ;
  fAlCoverParams[3] = fOuterThermoParams[3] + fAlCoverThickness /2 ;


  fFiberGlassHalfSize[0] = fAlCoverParams[0] - fAlFrontCoverX  ;
  fFiberGlassHalfSize[1] = fAlCoverParams[2] - fAlFrontCoverZ  ; //Note, here other ref. system
  fFiberGlassHalfSize[2] = fAlCoverThickness / 2 ;


  //============Now warm section======================
  //Al Cover 
  fWarmAlCoverWidthX = 2 * fAlCoverParams[1] ;  //Across beam
  fWarmAlCoverWidthY = 159.0 ;                  //along beam

  //T-support
  fTSupport1Thickness = 3.5 ; 
  fTSupport2Thickness = 5.0 ; 
  fTSupport1Width =  10.6 ;
  fTSupport2Width = 3.1 ;
  fNTSupports = fNStripX + 1 ;
  fTSupportDist = 7.48 ;

  //Air space for FEE
  fAirSpaceFeeX = 148.6 ;   //Across beam
  fAirSpaceFeeY = 135.0 ;   //along beam
  fAirSpaceFeeZ =  19.0 ;   //out of beam

  //thermoinsulation
  fWarmBottomThickness = 4.0 ;
  fWarmUpperThickness  = 4.0 ;

  //Frame 
  fFrameThickness = 5.0 ;
  fFrameHeight    = 15.0 ;

  //Fiberglass support
  fFiberGlassSup1X = 6.0 ;
  fFiberGlassSup1Y = 3.9 + fWarmUpperThickness ; 

  fFiberGlassSup2X = 3.0 ;
  fFiberGlassSup2Y = fFrameHeight ;

  //Now calculate Half-sizes

  fWarmAlCoverWidthZ = fAirSpaceFeeZ + fWarmBottomThickness + fWarmUpperThickness +  
                       fTSupport1Thickness + fTSupport2Thickness ;


  fWarmAlCoverHalfSize[0] = fWarmAlCoverWidthX / 2 ;
  fWarmAlCoverHalfSize[1] = fWarmAlCoverWidthY / 2 ;
  fWarmAlCoverHalfSize[2] = fWarmAlCoverWidthZ / 2 ;

  
  fWarmThermoHalfSize[0] = fWarmAlCoverHalfSize[0] - fAlCoverThickness ; 
  fWarmThermoHalfSize[1] = fWarmAlCoverHalfSize[1] - fAlCoverThickness ; 
  fWarmThermoHalfSize[2] = fWarmAlCoverHalfSize[2] - fAlCoverThickness /2 ; 


  //T-support
  fTSupport1HalfSize[0] =  fTSupport1Width /2 ;   //Across beam
  fTSupport1HalfSize[1] =  (fAirSpaceFeeY + 2*fFiberGlassSup1X) /2 ;    //along beam
  fTSupport1HalfSize[2] =  fTSupport1Thickness  /2;    //out of beam

  fTSupport2HalfSize[0] = fTSupport2Width /2;               //Across beam  
  fTSupport2HalfSize[1] = fTSupport1HalfSize[1] ; //along beam
  fTSupport2HalfSize[2] = fTSupport2Thickness /2; //out of beam

  //cables
  fTCables1HalfSize[0] = (2*fTSupport1HalfSize[0]*fNTSupports + (fNTSupports-1)* fTSupportDist) / 2 ; //Across beam
  fTCables1HalfSize[1] = fTSupport1HalfSize[1] ;    //along beam
  fTCables1HalfSize[2] = fTSupport1HalfSize[2] ;    //out of beam

  fTCables2HalfSize[0] = fTCables1HalfSize[0]  ; //Across beam
  fTCables2HalfSize[1] = fTSupport2HalfSize[1] ; //along beam
  fTCables2HalfSize[2] = fTSupport2HalfSize[2] ; //out of beam

  //frame: we define two frames along beam ...Z and across beam ...X
  fFrameXHalfSize[0] = (fAirSpaceFeeX + 2 * fFiberGlassSup2X + 2* fFrameThickness) /2 ;
  fFrameXHalfSize[1] = fFrameThickness /2 ;
  fFrameXHalfSize[2] = fFrameHeight    /2 ;

  fFrameXPosition[0] = 0 ;
  fFrameXPosition[1] = fAirSpaceFeeY /2 + fFiberGlassSup2X + fFrameXHalfSize[1] ;
  fFrameXPosition[2] = fWarmThermoHalfSize[2] - fFrameHeight/ 2 - fWarmBottomThickness ;
    
  fFrameZHalfSize[0] = fFrameThickness /2 ;
  fFrameZHalfSize[1] = (fAirSpaceFeeY + 2 * fFiberGlassSup2X) /2 ;
  fFrameZHalfSize[2] = fFrameHeight    /2 ;

  fFrameZPosition[0] = fAirSpaceFeeX /2 + fFiberGlassSup2X + fFrameZHalfSize[0] ;
  fFrameZPosition[1] = 0 ;
  fFrameZPosition[2] = fWarmThermoHalfSize[2] - fFrameHeight/ 2 - fWarmBottomThickness ;

  //Fiberglass support define 4 fiber glass supports 2 along Z  and 2 along X
  
  fFGupXHalfSize[0] = fFrameXHalfSize[0] ;
  fFGupXHalfSize[1] = fFiberGlassSup1X /2 ;
  fFGupXHalfSize[2] = fFiberGlassSup1Y /2;

  fFGupXPosition[0] = 0 ;
  fFGupXPosition[1] = fAirSpaceFeeY /2 + fFGupXHalfSize[1] ;
  fFGupXPosition[2] = fWarmThermoHalfSize[2] - fFrameHeight - fWarmBottomThickness - fFGupXHalfSize[2] ; 

  fFGupZHalfSize[0] = fFiberGlassSup1X /2 ;
  fFGupZHalfSize[1] = fAirSpaceFeeY /2 ;
  fFGupZHalfSize[2] = fFiberGlassSup1Y /2;

  fFGupZPosition[0] = fAirSpaceFeeX /2 + fFGupZHalfSize[0] ;
  fFGupZPosition[1] = 0 ;
  fFGupZPosition[2] = fWarmThermoHalfSize[2] - fFrameHeight - fWarmBottomThickness - fFGupXHalfSize[2] ; 

  fFGlowXHalfSize[0] = fFrameXHalfSize[0] - 2*fFrameZHalfSize[0] ;
  fFGlowXHalfSize[1] = fFiberGlassSup2X /2 ;
  fFGlowXHalfSize[2] = fFrameXHalfSize[2] ;

  fFGlowXPosition[0] = 0 ;
  fFGlowXPosition[1] = fAirSpaceFeeY /2 + fFGlowXHalfSize[1] ;
  fFGlowXPosition[2] = fWarmThermoHalfSize[2] - fWarmBottomThickness - fFGlowXHalfSize[2] ; 

  fFGlowZHalfSize[0] = fFiberGlassSup2X /2 ;
  fFGlowZHalfSize[1] = fAirSpaceFeeY /2 ;
  fFGlowZHalfSize[2] = fFrameZHalfSize[2] ;

  fFGlowZPosition[0] = fAirSpaceFeeX /2 + fFGlowZHalfSize[0] ;
  fFGlowZPosition[1] = 0 ;
  fFGlowZPosition[2] = fWarmThermoHalfSize[2] - fWarmBottomThickness - fFGlowXHalfSize[2] ; 


  // --- Air Gap for FEE ----

  fFEEAirHalfSize[0] =  fAirSpaceFeeX /2 ;
  fFEEAirHalfSize[1] =  fAirSpaceFeeY /2;
  fFEEAirHalfSize[2] =  fAirSpaceFeeZ /2;

  fFEEAirPosition[0] = 0 ;
  fFEEAirPosition[1] = 0 ;
  fFEEAirPosition[2] = fWarmThermoHalfSize[2] - fWarmBottomThickness - fFEEAirHalfSize[2] ;

  // --- Calculate the oveol dimentions of the EMC module
  
  fEMCParams[3] = fAlCoverParams[3] + fWarmAlCoverHalfSize[2] ; //Size out of beam
  fEMCParams[0] = fAlCoverParams[0] ; //Upper size across the beam
  fEMCParams[1] = (fAlCoverParams[1] - fAlCoverParams[0])*fEMCParams[3]/fAlCoverParams[3] 
                 + fAlCoverParams[0]  ; //Lower size across the beam
  fEMCParams[2] = fWarmAlCoverHalfSize[1] ;                     // Size along the beam

  fNPhi = fNStripX * fNCellsXInStrip ;    //number of crystals across the beam
  fNZ   = fNStripZ * fNCellsZInStrip ;    //number of crystals along the beam
}

 AliPHOSEMCAGeometry.cxx:1
 AliPHOSEMCAGeometry.cxx:2
 AliPHOSEMCAGeometry.cxx:3
 AliPHOSEMCAGeometry.cxx:4
 AliPHOSEMCAGeometry.cxx:5
 AliPHOSEMCAGeometry.cxx:6
 AliPHOSEMCAGeometry.cxx:7
 AliPHOSEMCAGeometry.cxx:8
 AliPHOSEMCAGeometry.cxx:9
 AliPHOSEMCAGeometry.cxx:10
 AliPHOSEMCAGeometry.cxx:11
 AliPHOSEMCAGeometry.cxx:12
 AliPHOSEMCAGeometry.cxx:13
 AliPHOSEMCAGeometry.cxx:14
 AliPHOSEMCAGeometry.cxx:15
 AliPHOSEMCAGeometry.cxx:16
 AliPHOSEMCAGeometry.cxx:17
 AliPHOSEMCAGeometry.cxx:18
 AliPHOSEMCAGeometry.cxx:19
 AliPHOSEMCAGeometry.cxx:20
 AliPHOSEMCAGeometry.cxx:21
 AliPHOSEMCAGeometry.cxx:22
 AliPHOSEMCAGeometry.cxx:23
 AliPHOSEMCAGeometry.cxx:24
 AliPHOSEMCAGeometry.cxx:25
 AliPHOSEMCAGeometry.cxx:26
 AliPHOSEMCAGeometry.cxx:27
 AliPHOSEMCAGeometry.cxx:28
 AliPHOSEMCAGeometry.cxx:29
 AliPHOSEMCAGeometry.cxx:30
 AliPHOSEMCAGeometry.cxx:31
 AliPHOSEMCAGeometry.cxx:32
 AliPHOSEMCAGeometry.cxx:33
 AliPHOSEMCAGeometry.cxx:34
 AliPHOSEMCAGeometry.cxx:35
 AliPHOSEMCAGeometry.cxx:36
 AliPHOSEMCAGeometry.cxx:37
 AliPHOSEMCAGeometry.cxx:38
 AliPHOSEMCAGeometry.cxx:39
 AliPHOSEMCAGeometry.cxx:40
 AliPHOSEMCAGeometry.cxx:41
 AliPHOSEMCAGeometry.cxx:42
 AliPHOSEMCAGeometry.cxx:43
 AliPHOSEMCAGeometry.cxx:44
 AliPHOSEMCAGeometry.cxx:45
 AliPHOSEMCAGeometry.cxx:46
 AliPHOSEMCAGeometry.cxx:47
 AliPHOSEMCAGeometry.cxx:48
 AliPHOSEMCAGeometry.cxx:49
 AliPHOSEMCAGeometry.cxx:50
 AliPHOSEMCAGeometry.cxx:51
 AliPHOSEMCAGeometry.cxx:52
 AliPHOSEMCAGeometry.cxx:53
 AliPHOSEMCAGeometry.cxx:54
 AliPHOSEMCAGeometry.cxx:55
 AliPHOSEMCAGeometry.cxx:56
 AliPHOSEMCAGeometry.cxx:57
 AliPHOSEMCAGeometry.cxx:58
 AliPHOSEMCAGeometry.cxx:59
 AliPHOSEMCAGeometry.cxx:60
 AliPHOSEMCAGeometry.cxx:61
 AliPHOSEMCAGeometry.cxx:62
 AliPHOSEMCAGeometry.cxx:63
 AliPHOSEMCAGeometry.cxx:64
 AliPHOSEMCAGeometry.cxx:65
 AliPHOSEMCAGeometry.cxx:66
 AliPHOSEMCAGeometry.cxx:67
 AliPHOSEMCAGeometry.cxx:68
 AliPHOSEMCAGeometry.cxx:69
 AliPHOSEMCAGeometry.cxx:70
 AliPHOSEMCAGeometry.cxx:71
 AliPHOSEMCAGeometry.cxx:72
 AliPHOSEMCAGeometry.cxx:73
 AliPHOSEMCAGeometry.cxx:74
 AliPHOSEMCAGeometry.cxx:75
 AliPHOSEMCAGeometry.cxx:76
 AliPHOSEMCAGeometry.cxx:77
 AliPHOSEMCAGeometry.cxx:78
 AliPHOSEMCAGeometry.cxx:79
 AliPHOSEMCAGeometry.cxx:80
 AliPHOSEMCAGeometry.cxx:81
 AliPHOSEMCAGeometry.cxx:82
 AliPHOSEMCAGeometry.cxx:83
 AliPHOSEMCAGeometry.cxx:84
 AliPHOSEMCAGeometry.cxx:85
 AliPHOSEMCAGeometry.cxx:86
 AliPHOSEMCAGeometry.cxx:87
 AliPHOSEMCAGeometry.cxx:88
 AliPHOSEMCAGeometry.cxx:89
 AliPHOSEMCAGeometry.cxx:90
 AliPHOSEMCAGeometry.cxx:91
 AliPHOSEMCAGeometry.cxx:92
 AliPHOSEMCAGeometry.cxx:93
 AliPHOSEMCAGeometry.cxx:94
 AliPHOSEMCAGeometry.cxx:95
 AliPHOSEMCAGeometry.cxx:96
 AliPHOSEMCAGeometry.cxx:97
 AliPHOSEMCAGeometry.cxx:98
 AliPHOSEMCAGeometry.cxx:99
 AliPHOSEMCAGeometry.cxx:100
 AliPHOSEMCAGeometry.cxx:101
 AliPHOSEMCAGeometry.cxx:102
 AliPHOSEMCAGeometry.cxx:103
 AliPHOSEMCAGeometry.cxx:104
 AliPHOSEMCAGeometry.cxx:105
 AliPHOSEMCAGeometry.cxx:106
 AliPHOSEMCAGeometry.cxx:107
 AliPHOSEMCAGeometry.cxx:108
 AliPHOSEMCAGeometry.cxx:109
 AliPHOSEMCAGeometry.cxx:110
 AliPHOSEMCAGeometry.cxx:111
 AliPHOSEMCAGeometry.cxx:112
 AliPHOSEMCAGeometry.cxx:113
 AliPHOSEMCAGeometry.cxx:114
 AliPHOSEMCAGeometry.cxx:115
 AliPHOSEMCAGeometry.cxx:116
 AliPHOSEMCAGeometry.cxx:117
 AliPHOSEMCAGeometry.cxx:118
 AliPHOSEMCAGeometry.cxx:119
 AliPHOSEMCAGeometry.cxx:120
 AliPHOSEMCAGeometry.cxx:121
 AliPHOSEMCAGeometry.cxx:122
 AliPHOSEMCAGeometry.cxx:123
 AliPHOSEMCAGeometry.cxx:124
 AliPHOSEMCAGeometry.cxx:125
 AliPHOSEMCAGeometry.cxx:126
 AliPHOSEMCAGeometry.cxx:127
 AliPHOSEMCAGeometry.cxx:128
 AliPHOSEMCAGeometry.cxx:129
 AliPHOSEMCAGeometry.cxx:130
 AliPHOSEMCAGeometry.cxx:131
 AliPHOSEMCAGeometry.cxx:132
 AliPHOSEMCAGeometry.cxx:133
 AliPHOSEMCAGeometry.cxx:134
 AliPHOSEMCAGeometry.cxx:135
 AliPHOSEMCAGeometry.cxx:136
 AliPHOSEMCAGeometry.cxx:137
 AliPHOSEMCAGeometry.cxx:138
 AliPHOSEMCAGeometry.cxx:139
 AliPHOSEMCAGeometry.cxx:140
 AliPHOSEMCAGeometry.cxx:141
 AliPHOSEMCAGeometry.cxx:142
 AliPHOSEMCAGeometry.cxx:143
 AliPHOSEMCAGeometry.cxx:144
 AliPHOSEMCAGeometry.cxx:145
 AliPHOSEMCAGeometry.cxx:146
 AliPHOSEMCAGeometry.cxx:147
 AliPHOSEMCAGeometry.cxx:148
 AliPHOSEMCAGeometry.cxx:149
 AliPHOSEMCAGeometry.cxx:150
 AliPHOSEMCAGeometry.cxx:151
 AliPHOSEMCAGeometry.cxx:152
 AliPHOSEMCAGeometry.cxx:153
 AliPHOSEMCAGeometry.cxx:154
 AliPHOSEMCAGeometry.cxx:155
 AliPHOSEMCAGeometry.cxx:156
 AliPHOSEMCAGeometry.cxx:157
 AliPHOSEMCAGeometry.cxx:158
 AliPHOSEMCAGeometry.cxx:159
 AliPHOSEMCAGeometry.cxx:160
 AliPHOSEMCAGeometry.cxx:161
 AliPHOSEMCAGeometry.cxx:162
 AliPHOSEMCAGeometry.cxx:163
 AliPHOSEMCAGeometry.cxx:164
 AliPHOSEMCAGeometry.cxx:165
 AliPHOSEMCAGeometry.cxx:166
 AliPHOSEMCAGeometry.cxx:167
 AliPHOSEMCAGeometry.cxx:168
 AliPHOSEMCAGeometry.cxx:169
 AliPHOSEMCAGeometry.cxx:170
 AliPHOSEMCAGeometry.cxx:171
 AliPHOSEMCAGeometry.cxx:172
 AliPHOSEMCAGeometry.cxx:173
 AliPHOSEMCAGeometry.cxx:174
 AliPHOSEMCAGeometry.cxx:175
 AliPHOSEMCAGeometry.cxx:176
 AliPHOSEMCAGeometry.cxx:177
 AliPHOSEMCAGeometry.cxx:178
 AliPHOSEMCAGeometry.cxx:179
 AliPHOSEMCAGeometry.cxx:180
 AliPHOSEMCAGeometry.cxx:181
 AliPHOSEMCAGeometry.cxx:182
 AliPHOSEMCAGeometry.cxx:183
 AliPHOSEMCAGeometry.cxx:184
 AliPHOSEMCAGeometry.cxx:185
 AliPHOSEMCAGeometry.cxx:186
 AliPHOSEMCAGeometry.cxx:187
 AliPHOSEMCAGeometry.cxx:188
 AliPHOSEMCAGeometry.cxx:189
 AliPHOSEMCAGeometry.cxx:190
 AliPHOSEMCAGeometry.cxx:191
 AliPHOSEMCAGeometry.cxx:192
 AliPHOSEMCAGeometry.cxx:193
 AliPHOSEMCAGeometry.cxx:194
 AliPHOSEMCAGeometry.cxx:195
 AliPHOSEMCAGeometry.cxx:196
 AliPHOSEMCAGeometry.cxx:197
 AliPHOSEMCAGeometry.cxx:198
 AliPHOSEMCAGeometry.cxx:199
 AliPHOSEMCAGeometry.cxx:200
 AliPHOSEMCAGeometry.cxx:201
 AliPHOSEMCAGeometry.cxx:202
 AliPHOSEMCAGeometry.cxx:203
 AliPHOSEMCAGeometry.cxx:204
 AliPHOSEMCAGeometry.cxx:205
 AliPHOSEMCAGeometry.cxx:206
 AliPHOSEMCAGeometry.cxx:207
 AliPHOSEMCAGeometry.cxx:208
 AliPHOSEMCAGeometry.cxx:209
 AliPHOSEMCAGeometry.cxx:210
 AliPHOSEMCAGeometry.cxx:211
 AliPHOSEMCAGeometry.cxx:212
 AliPHOSEMCAGeometry.cxx:213
 AliPHOSEMCAGeometry.cxx:214
 AliPHOSEMCAGeometry.cxx:215
 AliPHOSEMCAGeometry.cxx:216
 AliPHOSEMCAGeometry.cxx:217
 AliPHOSEMCAGeometry.cxx:218
 AliPHOSEMCAGeometry.cxx:219
 AliPHOSEMCAGeometry.cxx:220
 AliPHOSEMCAGeometry.cxx:221
 AliPHOSEMCAGeometry.cxx:222
 AliPHOSEMCAGeometry.cxx:223
 AliPHOSEMCAGeometry.cxx:224
 AliPHOSEMCAGeometry.cxx:225
 AliPHOSEMCAGeometry.cxx:226
 AliPHOSEMCAGeometry.cxx:227
 AliPHOSEMCAGeometry.cxx:228
 AliPHOSEMCAGeometry.cxx:229
 AliPHOSEMCAGeometry.cxx:230
 AliPHOSEMCAGeometry.cxx:231
 AliPHOSEMCAGeometry.cxx:232
 AliPHOSEMCAGeometry.cxx:233
 AliPHOSEMCAGeometry.cxx:234
 AliPHOSEMCAGeometry.cxx:235
 AliPHOSEMCAGeometry.cxx:236
 AliPHOSEMCAGeometry.cxx:237
 AliPHOSEMCAGeometry.cxx:238
 AliPHOSEMCAGeometry.cxx:239
 AliPHOSEMCAGeometry.cxx:240
 AliPHOSEMCAGeometry.cxx:241
 AliPHOSEMCAGeometry.cxx:242
 AliPHOSEMCAGeometry.cxx:243
 AliPHOSEMCAGeometry.cxx:244
 AliPHOSEMCAGeometry.cxx:245
 AliPHOSEMCAGeometry.cxx:246
 AliPHOSEMCAGeometry.cxx:247
 AliPHOSEMCAGeometry.cxx:248
 AliPHOSEMCAGeometry.cxx:249
 AliPHOSEMCAGeometry.cxx:250
 AliPHOSEMCAGeometry.cxx:251
 AliPHOSEMCAGeometry.cxx:252
 AliPHOSEMCAGeometry.cxx:253
 AliPHOSEMCAGeometry.cxx:254
 AliPHOSEMCAGeometry.cxx:255
 AliPHOSEMCAGeometry.cxx:256
 AliPHOSEMCAGeometry.cxx:257
 AliPHOSEMCAGeometry.cxx:258
 AliPHOSEMCAGeometry.cxx:259
 AliPHOSEMCAGeometry.cxx:260
 AliPHOSEMCAGeometry.cxx:261
 AliPHOSEMCAGeometry.cxx:262
 AliPHOSEMCAGeometry.cxx:263
 AliPHOSEMCAGeometry.cxx:264
 AliPHOSEMCAGeometry.cxx:265
 AliPHOSEMCAGeometry.cxx:266
 AliPHOSEMCAGeometry.cxx:267
 AliPHOSEMCAGeometry.cxx:268
 AliPHOSEMCAGeometry.cxx:269
 AliPHOSEMCAGeometry.cxx:270
 AliPHOSEMCAGeometry.cxx:271
 AliPHOSEMCAGeometry.cxx:272
 AliPHOSEMCAGeometry.cxx:273
 AliPHOSEMCAGeometry.cxx:274
 AliPHOSEMCAGeometry.cxx:275
 AliPHOSEMCAGeometry.cxx:276
 AliPHOSEMCAGeometry.cxx:277
 AliPHOSEMCAGeometry.cxx:278
 AliPHOSEMCAGeometry.cxx:279
 AliPHOSEMCAGeometry.cxx:280
 AliPHOSEMCAGeometry.cxx:281
 AliPHOSEMCAGeometry.cxx:282
 AliPHOSEMCAGeometry.cxx:283
 AliPHOSEMCAGeometry.cxx:284
 AliPHOSEMCAGeometry.cxx:285
 AliPHOSEMCAGeometry.cxx:286
 AliPHOSEMCAGeometry.cxx:287
 AliPHOSEMCAGeometry.cxx:288
 AliPHOSEMCAGeometry.cxx:289
 AliPHOSEMCAGeometry.cxx:290
 AliPHOSEMCAGeometry.cxx:291
 AliPHOSEMCAGeometry.cxx:292
 AliPHOSEMCAGeometry.cxx:293
 AliPHOSEMCAGeometry.cxx:294
 AliPHOSEMCAGeometry.cxx:295
 AliPHOSEMCAGeometry.cxx:296
 AliPHOSEMCAGeometry.cxx:297
 AliPHOSEMCAGeometry.cxx:298
 AliPHOSEMCAGeometry.cxx:299
 AliPHOSEMCAGeometry.cxx:300
 AliPHOSEMCAGeometry.cxx:301
 AliPHOSEMCAGeometry.cxx:302
 AliPHOSEMCAGeometry.cxx:303
 AliPHOSEMCAGeometry.cxx:304
 AliPHOSEMCAGeometry.cxx:305
 AliPHOSEMCAGeometry.cxx:306
 AliPHOSEMCAGeometry.cxx:307
 AliPHOSEMCAGeometry.cxx:308
 AliPHOSEMCAGeometry.cxx:309
 AliPHOSEMCAGeometry.cxx:310
 AliPHOSEMCAGeometry.cxx:311
 AliPHOSEMCAGeometry.cxx:312
 AliPHOSEMCAGeometry.cxx:313
 AliPHOSEMCAGeometry.cxx:314
 AliPHOSEMCAGeometry.cxx:315
 AliPHOSEMCAGeometry.cxx:316
 AliPHOSEMCAGeometry.cxx:317
 AliPHOSEMCAGeometry.cxx:318
 AliPHOSEMCAGeometry.cxx:319
 AliPHOSEMCAGeometry.cxx:320
 AliPHOSEMCAGeometry.cxx:321
 AliPHOSEMCAGeometry.cxx:322
 AliPHOSEMCAGeometry.cxx:323
 AliPHOSEMCAGeometry.cxx:324
 AliPHOSEMCAGeometry.cxx:325
 AliPHOSEMCAGeometry.cxx:326
 AliPHOSEMCAGeometry.cxx:327
 AliPHOSEMCAGeometry.cxx:328
 AliPHOSEMCAGeometry.cxx:329
 AliPHOSEMCAGeometry.cxx:330
 AliPHOSEMCAGeometry.cxx:331
 AliPHOSEMCAGeometry.cxx:332
 AliPHOSEMCAGeometry.cxx:333
 AliPHOSEMCAGeometry.cxx:334
 AliPHOSEMCAGeometry.cxx:335
 AliPHOSEMCAGeometry.cxx:336
 AliPHOSEMCAGeometry.cxx:337
 AliPHOSEMCAGeometry.cxx:338
 AliPHOSEMCAGeometry.cxx:339
 AliPHOSEMCAGeometry.cxx:340
 AliPHOSEMCAGeometry.cxx:341
 AliPHOSEMCAGeometry.cxx:342
 AliPHOSEMCAGeometry.cxx:343
 AliPHOSEMCAGeometry.cxx:344
 AliPHOSEMCAGeometry.cxx:345
 AliPHOSEMCAGeometry.cxx:346
 AliPHOSEMCAGeometry.cxx:347
 AliPHOSEMCAGeometry.cxx:348
 AliPHOSEMCAGeometry.cxx:349
 AliPHOSEMCAGeometry.cxx:350
 AliPHOSEMCAGeometry.cxx:351
 AliPHOSEMCAGeometry.cxx:352
 AliPHOSEMCAGeometry.cxx:353
 AliPHOSEMCAGeometry.cxx:354
 AliPHOSEMCAGeometry.cxx:355
 AliPHOSEMCAGeometry.cxx:356
 AliPHOSEMCAGeometry.cxx:357
 AliPHOSEMCAGeometry.cxx:358
 AliPHOSEMCAGeometry.cxx:359
 AliPHOSEMCAGeometry.cxx:360
 AliPHOSEMCAGeometry.cxx:361
 AliPHOSEMCAGeometry.cxx:362
 AliPHOSEMCAGeometry.cxx:363
 AliPHOSEMCAGeometry.cxx:364
 AliPHOSEMCAGeometry.cxx:365
 AliPHOSEMCAGeometry.cxx:366
 AliPHOSEMCAGeometry.cxx:367
 AliPHOSEMCAGeometry.cxx:368
 AliPHOSEMCAGeometry.cxx:369
 AliPHOSEMCAGeometry.cxx:370
 AliPHOSEMCAGeometry.cxx:371
 AliPHOSEMCAGeometry.cxx:372