]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STRUCT/AliSHILv3.cxx
Added lines to separate TOF SMs, according to the DAM shifters request (F.Bellini)
[u/mrichter/AliRoot.git] / STRUCT / AliSHILv3.cxx
index 29885bdf48bb105f4eef37d5c417255e362d1634..f85c6a9f5ae2d3b97e12fe921fb8729953699a6a 100644 (file)
@@ -189,7 +189,7 @@ void AliSHILv3::CreateGeometry()
 //    FA W-Ring 2                //
 //    Drawing ALIP2A__0220       //
 ///////////////////////////////////
-      const Float_t kFaWring2Rinner  = 15.40;
+      const Float_t kFaWring2Rinner  = 15.41;
       const Float_t kFaWring2Router  = 18.40;
       const Float_t kFaWring2HWidth  =  3.75;
       const Float_t kFaWring2Cutoffx =  3.35;
@@ -208,7 +208,7 @@ void AliSHILv3::CreateGeometry()
 //    FA W-Ring 3                //
 //    Drawing ALIP2A__0219       //
 ///////////////////////////////////
-      const Float_t kFaWring3Rinner  = 15.40;
+      const Float_t kFaWring3Rinner  = 15.41;
       const Float_t kFaWring3Router  = 18.40;
       const Float_t kFaWring3HWidth  =  3.75;
       const Float_t kFaWring3Cutoffx =  3.35;
@@ -227,7 +227,7 @@ void AliSHILv3::CreateGeometry()
 //    FA W-Ring 5                //
 //    Drawing ALIP2A__0221       //
 ///////////////////////////////////
-      const Float_t kFaWring5Rinner = 15.40;
+      const Float_t kFaWring5Rinner = 15.41;
       const Float_t kFaWring5Router = 18.67;
       const Float_t kFaWring5HWidth =  1.08;
       TGeoVolume* voFaWring5    = new TGeoVolume("YFA_WRING5", new TGeoTube(kFaWring5Rinner, kFaWring5Router, kFaWring5HWidth), kMedNiW);
@@ -242,25 +242,25 @@ void AliSHILv3::CreateGeometry()
       dz = 0.;
       
       dz +=  kFaWring2HWidth;
-      asFaExtraShield->AddNode(voFaWring2,    1, new TGeoCombiTrans(0., 0., dz, rot090));
-      asFaExtraShield->AddNode(voFaWring2,    2, new TGeoCombiTrans(0., 0., dz, rot270));
+      asFaExtraShield->AddNode(voFaWring2,    1, new TGeoCombiTrans(0., 0., dz, rot180));
+      asFaExtraShield->AddNode(voFaWring2,    2, new TGeoCombiTrans(0., 0., dz, rot000));
       dz +=   kFaWring2HWidth;
       dz +=   kFaDWrings;
       dz +=   kFaWring3HWidth;
-      asFaExtraShield->AddNode(voFaWring3,    1, new TGeoCombiTrans(0., 0., dz, rot000));
-      asFaExtraShield->AddNode(voFaWring3,    2, new TGeoCombiTrans(0., 0., dz, rot180));
+      asFaExtraShield->AddNode(voFaWring3,    1, new TGeoCombiTrans(0., 0., dz, rot090));
+      asFaExtraShield->AddNode(voFaWring3,    2, new TGeoCombiTrans(0., 0., dz, rot270));
       dz +=   kFaWring3HWidth;   
       dz +=   kFaWring5HWidth;   
       asFaExtraShield->AddNode(voFaWring5,    1, new TGeoTranslation(0., 0., dz));
       dz +=   kFaWring5HWidth;   
       dz +=   kFaWring3HWidth;   
-      asFaExtraShield->AddNode(voFaWring3,    3, new TGeoCombiTrans(0., 0., dz, rot090));
-      asFaExtraShield->AddNode(voFaWring3,    4, new TGeoCombiTrans(0., 0., dz, rot270));
+      asFaExtraShield->AddNode(voFaWring3,    3, new TGeoCombiTrans(0., 0., dz, rot180));
+      asFaExtraShield->AddNode(voFaWring3,    4, new TGeoCombiTrans(0., 0., dz, rot000));
       dz +=   kFaWring3HWidth;   
       dz +=   kFaDWrings;
       dz +=   kFaWring2HWidth;
-      asFaExtraShield->AddNode(voFaWring2,    3, new TGeoCombiTrans(0., 0., dz, rot000));
-      asFaExtraShield->AddNode(voFaWring2,    4, new TGeoCombiTrans(0., 0., dz, rot180));
+      asFaExtraShield->AddNode(voFaWring2,    3, new TGeoCombiTrans(0., 0., dz, rot090));
+      asFaExtraShield->AddNode(voFaWring2,    4, new TGeoCombiTrans(0., 0., dz, rot270));
       dz +=   kFaWring2HWidth;
 
       
@@ -303,7 +303,7 @@ void AliSHILv3::CreateGeometry()
       TGeoPcon* shFaSaa1 = new TGeoPcon(0., 360., 8);
       z = 0;
 // Flange FA side      
-      shFaSaa1->DefineSection( 0, z, rInFaSaa1F1, rOuFaSaa1F1);
+      shFaSaa1->DefineSection( 0, z, rInFaSaa1F1, rOuFaSaa1F1 - 0.01);
       z += dzFaSaa1F1;
       shFaSaa1->DefineSection( 1, z, rInFaSaa1F1, 40.0);
       shFaSaa1->DefineSection( 2, z, rInFaSaa1S1, 40.0);
@@ -319,7 +319,7 @@ void AliSHILv3::CreateGeometry()
       shFaSaa1->DefineSection( 6, z, rInFaSaa1F2, 40.0);
 // Flange SAA1 side
       z = dzFaSaa1;
-      shFaSaa1->DefineSection( 7, z, rInFaSaa1F2, rOuFaSaa1E);
+      shFaSaa1->DefineSection( 7, z, rInFaSaa1F2, rOuFaSaa1E - 0.01);
 
 // Outer 2 deg line
       for (Int_t i  = 1; i < 7; i++) {
@@ -331,7 +331,7 @@ void AliSHILv3::CreateGeometry()
       TGeoVolume* voFaSaa1 = new TGeoVolume("YFASAA1", shFaSaa1, kMedNiWsh);
 //
 // Outer region with lower transport cuts
-      TGeoCone* shFaSaa1O   = new TGeoCone(dzFaSaa1/2., rOuFaSaa1F1 - 3.5, rOuFaSaa1F1, rOuFaSaa1E - 3.5, rOuFaSaa1E);
+      TGeoCone* shFaSaa1O   = new TGeoCone(dzFaSaa1/2., rOuFaSaa1F1 - 3.5, rOuFaSaa1F1 - 0.01, rOuFaSaa1E - 3.5, rOuFaSaa1E - 0.01);
       TGeoVolume* voFaSaa1O = new TGeoVolume("YFASAA1O", shFaSaa1O, kMedNiW);
       voFaSaa1->AddNode(voFaSaa1O, 1, new TGeoTranslation(0., 0., dzFaSaa1/2.));
       
@@ -355,8 +355,8 @@ void AliSHILv3::CreateGeometry()
       Float_t rInSaa1StEnv2 = 41.7/2.;
       Float_t rOuSaa1StEnv2 = rInSaa1StEnv2 + dSt / TMath::Cos(2.0 * kDegRad) - 0.05;
 // 3         
-      Float_t rOuSaa1StEnv3 = 57.6/2.;
-      Float_t rInSaa1StEnv3 = rOuSaa1StEnv3 - dSt - 0.05;
+      Float_t rOuSaa1StEnv3 = 57.6/2.; 
+      Float_t rInSaa1StEnv3 = rOuSaa1StEnv3 - dSt + 0.05;
 // 4
       Float_t rInSaa1StEnv4 = 63.4/2.;
       Float_t rOuSaa1StEnv4 = rInSaa1StEnv4 + dSt / TMath::Cos(1.6 * kDegRad) - 0.05;
@@ -641,12 +641,12 @@ void AliSHILv3::CreateGeometry()
       shSaa1M->DefineSection(14, z, 0.,    rmaxSaa1);
       shSaa1M->DefineSection(15, z, rmax,  rmaxSaa1);
       z = zSaa1StRing;     
-      shSaa1M->DefineSection(16, z, rmax, rOuSaa1String);
+      shSaa1M->DefineSection(16, z, rmax + 0.4, rOuSaa1String);
       z += dzSaa1PbCompF1;
-      shSaa1M->DefineSection(17, z, rmax, rOuSaa1String);
-      shSaa1M->DefineSection(18, z, rmax, rOuSaa1PbCompF3);
+      shSaa1M->DefineSection(17, z, rmax + 0.4, rOuSaa1String);
+      shSaa1M->DefineSection(18, z, rmax + 0.4, rOuSaa1PbCompF3);
       z += dzSaa1PbCompF2;
-      shSaa1M->DefineSection(19, z, rmax, rOuSaa1PbCompF3);
+      shSaa1M->DefineSection(19, z, rmax + 0.4, rOuSaa1PbCompF3);
 
 //
 //    Inner 1.69deg line
@@ -672,19 +672,19 @@ void AliSHILv3::CreateGeometry()
 ///////////////////////////////////
       Float_t saa1Wring1Width  =  5.85;
       TGeoPcon* shSaa1Wring1    = new TGeoPcon(0., 360., 2);
-      shSaa1Wring1->DefineSection(0, 0.00           , 20.30, 23.175);
-      shSaa1Wring1->DefineSection(1, saa1Wring1Width, 20.30, 23.400);
+      shSaa1Wring1->DefineSection(0, 0.00           , 20.31, 23.175);
+      shSaa1Wring1->DefineSection(1, saa1Wring1Width, 20.31, 23.400);
       TGeoVolume* voSaa1Wring1  =  new TGeoVolume("YSAA1_WRING1", shSaa1Wring1, kMedNiW);
 
 ///////////////////////////////////
 //    SAA1 W-Ring 2              //
 //    Drawing ALIP2A__0055       //
 ///////////////////////////////////
-      Float_t saa1Wring2Rinner  = 20.30;
+      Float_t saa1Wring2Rinner  = 20.31;
       Float_t saa1Wring2Router  = 23.40;
       Float_t saa1Wring2HWidth  =  3.75;
-      Float_t saa1Wring2Cutoffx =  4.45;
-      Float_t saa1Wring2Cutoffy =  4.45;
+      Float_t saa1Wring2Cutoffx =  4.9;
+      Float_t saa1Wring2Cutoffy =  4.9;
       TGeoTubeSeg* shSaa1Wring2a  = new TGeoTubeSeg(saa1Wring2Rinner, saa1Wring2Router, saa1Wring2HWidth, 0., 90.);
       shSaa1Wring2a->SetName("shSaa1Wring2a");
       TGeoBBox* shSaa1Wring2b  = new TGeoBBox(saa1Wring2Router / 2., saa1Wring2Router / 2., saa1Wring2HWidth);
@@ -700,11 +700,11 @@ void AliSHILv3::CreateGeometry()
 //    Drawing ALIP2A__0216       //
 ///////////////////////////////////
 
-      Float_t saa1Wring3Rinner  = 20.30;
+      Float_t saa1Wring3Rinner  = 20.31;
       Float_t saa1Wring3Router  = 23.40;
       Float_t saa1Wring3HWidth  =  3.75;
       Float_t saa1Wring3Cutoffx =  4.50;
-      Float_t saa1Wring3Cutoffy =  4.40;
+      Float_t saa1Wring3Cutoffy =  4.50;
       TGeoTubeSeg* shSaa1Wring3a  = new TGeoTubeSeg(saa1Wring3Rinner, saa1Wring3Router, saa1Wring3HWidth, 0., 90.);
       shSaa1Wring3a->SetName("shSaa1Wring3a");
       TGeoBBox* shSaa1Wring3b  = new TGeoBBox(saa1Wring3Router / 2., saa1Wring3Router / 2., saa1Wring3HWidth);
@@ -721,10 +721,10 @@ void AliSHILv3::CreateGeometry()
 ///////////////////////////////////
       Float_t saa1Wring4Width  =  5.85;
       TGeoPcon* shSaa1Wring4  = new TGeoPcon(0., 360., 5);
-      shSaa1Wring4->DefineSection(0, 0.00, 20.30, 23.40);
-      shSaa1Wring4->DefineSection(1, 1.00, 20.30, 23.40);
-      shSaa1Wring4->DefineSection(2, 1.00, 20.30, 24.50);      
-      shSaa1Wring4->DefineSection(3, 4.85, 20.30, 24.80);
+      shSaa1Wring4->DefineSection(0, 0.00, 20.31, 23.40);
+      shSaa1Wring4->DefineSection(1, 1.00, 20.31, 23.40);
+      shSaa1Wring4->DefineSection(2, 1.00, 20.31, 24.50);      
+      shSaa1Wring4->DefineSection(3, 4.85, 20.31, 24.80);
       shSaa1Wring4->DefineSection(4, 5.85, 24.10, 24.80);
       TGeoVolume* voSaa1Wring4  =  new TGeoVolume("YSAA1_WRING4", shSaa1Wring4, kMedNiW);
 
@@ -732,7 +732,7 @@ void AliSHILv3::CreateGeometry()
 //    SAA1 W-Ring 5              //
 //    Drawing ALIP2A__0218       //
 ///////////////////////////////////
-      Float_t saa1Wring5Rinner = 20.30;
+      Float_t saa1Wring5Rinner = 20.31;
       Float_t saa1Wring5Router = 23.40;
       Float_t saa1Wring5HWidth =  0.85;
       TGeoVolume* voSaa1Wring5    = new TGeoVolume("YSAA1_WRING5", 
@@ -1121,9 +1121,7 @@ void AliSHILv3::CreateGeometry()
 //    SAA3 Outer Shape           //
 //    Drawing ALIP2A__0288       //
 ///////////////////////////////////
-      
       TGeoVolumeAssembly* voSaa3  = new TGeoVolumeAssembly("YSAA3");
-      
 ///////////////////////////////////
 //    SAA3 Concrete cone         //
 //    Drawing ALIP2A__0284       //
@@ -1142,7 +1140,7 @@ void AliSHILv3::CreateGeometry()
       TGeoCompositeShape* shSaa3CCBlock = new TGeoCompositeShape("Saa3CCBlock", "Saa3CCBlockO-Saa3InnerRegion");
       TGeoVolume* voSaa3CCBlock         = new TGeoVolume("YSAA3CCBlock", shSaa3CCBlock, kMedConcSh);     
 
-
+      
       voSaa3->AddNode(voSaa3CCBlock, 1, gGeoIdentity);
       
 //    Plate 1: 240 cm x 80 cm x 100 cm (x 2)
@@ -1277,7 +1275,7 @@ void AliSHILv3::CreateGeometry()
       voYOUT1->SetVisibility(0);
 
       voYOUT1->AddNode(asSaa1ExtraShield, 1, new TGeoCombiTrans(0., 0., - (100.7 + 62.2 + saa1ExtraShieldL / 2. + ziFaWTail), rotxz));
-      voYOUT1->AddNode(asFaExtraShield,   1, new TGeoCombiTrans(0., 0., - (16.41 + kFaWring2HWidth + ziFaWTail), rotxz));
+      voYOUT1->AddNode(asFaExtraShield,   1, new TGeoCombiTrans(0., 0., - (16.41 - 1.46 + kFaWring2HWidth + ziFaWTail), rotxz));
       top->AddNode(voYOUT1, 1, gGeoIdentity);
 //
 //  Mother volume for muon stations 4+5 and trigger stations.
@@ -1316,7 +1314,7 @@ void AliSHILv3::CreateGeometry()
       InvertPcon(shYOUT21);
       shYOUT21->SetName("shYOUT21");
 
-      TGeoBBox* shYOUT22 = new TGeoBBox(460. , 200., 65.);
+      TGeoBBox* shYOUT22 = new TGeoBBox(460. , 200., 65. - 1.5);
       shYOUT22->SetName("shYOUT22");
       
       TGeoTranslation* tYOUT22 = new TGeoTranslation(0., -310. - 200., -zcFilter);