X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSv11GeometrySSD.h;h=c80d9908b12aa8810b0875de664d23ff1a2f8a2a;hb=fad6e2fc5d2bb9528ee812fca07aa0afd4b70aba;hp=a25c8d64d4939c369633f9836b5bb4f0ab214fd9;hpb=ca86fdb4728c96a7fa4901b6d98aca1ee07fba28;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSv11GeometrySSD.h b/ITS/AliITSv11GeometrySSD.h index a25c8d64d49..c80d9908b12 100644 --- a/ITS/AliITSv11GeometrySSD.h +++ b/ITS/AliITSv11GeometrySSD.h @@ -8,6 +8,7 @@ * See cxx source for full Copyright notice */ /* $Id$ */ class TGeoVolume; +class TGeoShape; class TGeoCombiTrans; class TGeoMedium; class TGeoCompositeShape; @@ -18,6 +19,7 @@ class TList; class TGeoTube; class TGeoHMatrix; class TGeoTranslation; +class TGeoRotation; class TGeoXtru; class TGeoVolumeAssembly; #include "AliITSv11Geometry.h" @@ -66,7 +68,8 @@ private: // Variable for Vertical Disalignement of Modules ///////////////////////////////////////////////////////////////////////////////// static const Double_t fgkSSDModuleVerticalDisalignment; // Vertical Disalignement of Volume - static const Double_t fgkSSDModuleVerticalDisalignment2; // Vertical Disalignement of Volume + static const Double_t fgkSSDModuleSideDisalignment; // Vertical Disalignement of Volume + static const Double_t fgkSSDLadderVerticalDisalignment; // Extra space at ladder support for disalignment static const Double_t fgkSSDTolerance; // SSD Tolerance ///////////////////////////////////////////////////////////////////////// // Layer5 (lengths are in mm and angles in degrees) @@ -128,7 +131,7 @@ private: static const Double_t fgkSSDFlexFullLength; // SSD Flex Full Length static const Double_t fgkSSDFlexLength[4]; // SSD Flex Components Length static const Double_t fgkSSDFlexWidth[2]; // SSD Flex Components Width - static const Double_t fgkSSDFlexHeight[2]; // SSD Flex Layers Heigth + static const Double_t fgkSSDFlexHeight[2]; // SSD Flex Layers Height static const Double_t fgkSSDFlexAngle; // SSD Flex Angle static const Double_t fgkSSDFlexHoleLength; // SSD Flex Hole Length static const Double_t fgkSSDFlexHoleWidth; // SSD Flex Hole Width @@ -211,6 +214,7 @@ private: ///////////////////////////////////////////////////////////////////////// //Parameters for Carbon Fiber Lower Support (lengths are in mm) ///////////////////////////////////////////////////////////////////////// + static const Double_t fgkLowerSupportToSensorZ; // Distance from lower support to sensor center static const Double_t fgkCarbonFiberLowerSupportWidth; // Lower Support of Carbon Fiber Width static const Double_t fgkCarbonFiberLowerSupportLowerLenght; // Lower Support of Carbon Fiber Length static const Double_t fgkCarbonFiberLowerSupportHeight; // Lower Support of Carbon Fiber Height @@ -255,7 +259,7 @@ private: static const Double_t fgkSSDMountingBlockHoleTubeWidth[2]; // SSD Mounting Block Hole Tube Width static const Double_t fgkSSDMountingBlockHoleRadius; // SSD Mounting Block Hole radius static const Double_t fgkSSDMountingBlockScrewHoleEdge; // SSD Mounting Block Screw Hole Edge - static const Double_t fgkSSDMountingBlockScrewHoleHeigth; // SSD Mounting Block Screw Hole Height + static const Double_t fgkSSDMountingBlockScrewHoleHeight; // SSD Mounting Block Screw Hole Height static const Double_t fgkSSDMountingBlockScrewHoleRadius[2]; // SSD Mounting Block Screw Hole Radii ///////////////////////////////////////////////////////////////////////// // SSD Mounting Block Clip Parameters (lengths are in mm and angles in degrees) @@ -269,10 +273,10 @@ private: // SSD Mounting Block Support Parameters (lengths are in mm and angles in degrees) ///////////////////////////////////////////////////////////////////////////////// static const Double_t fgkMountingBlockSupportWidth[2]; // SSD Mounting Block Support Width - static const Double_t fgkMountingBlockSupportDownHeight; // SSD Mounting Block Support Down Heigth + static const Double_t fgkMountingBlockSupportDownHeight; // SSD Mounting Block Support Down Height static const Double_t fgkMountingBlockSupportRadius[2]; // SSD Mounting Block Support Radius - static const Double_t fgkMountingBlockSupportUpHeight[2]; // SSD Mounting Block Support Heigth - static const Double_t fgkLadderSupportHeigth; // SSD Ladder Support Width + static const Double_t fgkMountingBlockSupportUpHeight[2]; // SSD Mounting Block Support Height + static const Double_t fgkLadderSupportHeight; // SSD Ladder Support Width static const Double_t fgkLadderSupportRingLay5Position; // SSD Ladder Support Ring Position Layer5 respect to ITS center static const Double_t fgkLadderSupportRingLay6Position; // SSD Ladder Support Ring Position Layer6 respect to ITS center ///////////////////////////////////////////////////////////////////////////////// @@ -399,7 +403,7 @@ private: static const Double_t fgkSSDPatchPanel2RB24ITSDistance; // Patch Panel RB24 Position static const Double_t fgkSSDPatchPanel2RB26Radius; // Patch Panel Radius static const Double_t fgkSSDPatchPanel2RB24Radius; // Patch Panel Radius - static const Double_t fgkSSDPatchPanelHeigth; // Patch Panel Height + static const Double_t fgkSSDPatchPanelHeight; // Patch Panel Height static const Double_t fgkSSDCableMaterialBudgetHeight; // SSD Cable Material Budget ///////////////////////////////////////////////////////////////////////// // Private methods for private members generation @@ -423,13 +427,12 @@ private: TGeoVolume* GetSSDEndFlex(); // Method generating EndFlex TGeoVolume* GetSSDMountingBlock(); // Method generating Mounting Block TGeoVolume* GetMountingBlockClip() const; // Method generating Mounting Block Clip - TList* GetCoolingTubeList()const; // Method generating list of Tubes + void CreateCoolingTubes(); // Create/set cooling tubes TGeoVolume* GetSSDCoolingBlock(Int_t nedges); // Method generating StiffenerFlex - TGeoVolume* GetSSDChipCables(Double_t SSDChipCablesHeigth, Int_t nedges); + void GetSSDChipCables(TGeoVolume *&cableL, TGeoVolume *&cableR, Double_t SSDChipCablesHeigth, Int_t nedges); // Method setting ChipCables - TList* GetSSDChipSystem(); // Method setting Chip System - TGeoVolume* GetSSDChips() const; // Method generating Chips + TGeoVolume* GetSSDChip() const; // Method generating Chips TList* GetLadderCableSegment(Double_t ssdendladdercablelength); // Method generating LadderCableSegment TGeoVolume* GetLadderCable(Int_t n, Double_t ssdendladdercablelength); @@ -447,15 +450,15 @@ private: TGeoVolume** EndCapSupport(); // End Cap Support Layer 5 and Layer 6 void SetEndCapSupportAssembly(); // EndCap Support + End Cap Layer 5 and 6 TGeoVolume* GetEndCapEffectiveCables(Double_t radiusmin, Double_t radiusmax, - Double_t width,Int_t ncables,char* volname); // End Cap Effective HV Cables + Double_t width,Int_t ncables,const char* volname); // End Cap Effective HV Cables TGeoXtru* GetArcShape(Double_t phi, Double_t rmin, Double_t rmax, Int_t nedges, Double_t height); //Auxiliary Method for Arc Shape TGeoArb8* GetArbShape(TVector3* vertexpos[],Double_t* width, - Double_t height,char* shapename,Int_t isign = 1) const; + Double_t height,const char* shapename,Int_t isign = 1) const; // Method generating an Arb shape - TGeoXtru* GetScrewShape(Double_t* radius,Int_t* edgesnumber,Double_t* section) const;// Method Generating the Screw Shape - TGeoXtru* GetHoleShape(Double_t radius, Int_t nedges, Double_t *section) const;// Method Generating the Hole Shape + TGeoShape* GetScrewShape(Double_t* radius,Int_t* edgesnumber,Double_t* section) const;// Method Generating the Screw Shape + TGeoShape* GetHoleShape(Double_t radius, Int_t nedges, Double_t *section) const;// Method Generating the Hole Shape TVector3* GetReflection(TVector3* vector,Double_t* param) const; // Given an axis specified by param, // it gives the reflection of the point respect to the axis @@ -552,12 +555,11 @@ private: ///////////////////////////////////////// // Cooling Tube ///////////////////////////////////////// - static const Int_t fgkcoolingtubenumber = 3; // Coling Tube Number - TGeoHMatrix** fcoolingtubematrix[fgkcoolingtubenumber+1]; // Cooling Tube Matrix - TGeoVolume* fcoolingtube[fgkcoolingtubenumber]; // Ladder Cooling Tube - static const Int_t fgkendladdercoolingtubenumber = 5; // End Ladder Cooling Tube Number + TGeoHMatrix* fcoolingtubematrix[2]; // Cooling Tube Matrix + TGeoVolume* fcoolingtube; // Ladder Cooling Tube + static const Int_t fgkendladdercoolingtubenumber = 2; // End Ladder Cooling Tube Number TGeoVolume* fendladdercoolingtube[fgkendladdercoolingtubenumber]; // End Ladder Cooling Tube - TGeoHMatrix** fendladdercoolingtubematrix[2]; //End ladder cooling tube matrix + TGeoHMatrix* fendladdercoolingtubematrix[fgkendladdercoolingtubenumber][2]; //End ladder cooling tube matrix ///////////////////////////////////////// // End Ladder Components ///////////////////////////////////////// @@ -660,6 +662,6 @@ private: Int_t fColorEpoxy; // === Int_t fColorWater; // === Int_t fColorG10; // === -ClassDef(AliITSv11GeometrySSD, 3) // ITS v11 SSD geometry +ClassDef(AliITSv11GeometrySSD, 4) // ITS v11 SSD geometry }; #endif