]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STRUCT/AliSHIL.cxx
1. Corrected method to apply alignment objects to the TGeo geometry. The method is...
[u/mrichter/AliRoot.git] / STRUCT / AliSHIL.cxx
index cc243f901800e52d94f035a2a7945b5334528cb8..6e9255e2d220cff9f425e6702538580b55912f83 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.8  2000/02/23 13:48:33  morsch
-Detailed composition of insulation material.
-
-Revision 1.7  2000/01/12 15:37:57  morsch
-Base class only
-
-Revision 1.6  1999/09/29 09:24:30  fca
-Introduction of the Copyright and cvs Log
-
-*/
+/* $Id$ */
 
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
@@ -42,7 +31,9 @@ Introduction of the Copyright and cvs Log
 
 #include "AliSHIL.h"
 #include "AliRun.h"
+#include "AliMagF.h"
 #include "AliConst.h"
+#include "AliLog.h"
 
 ClassImp(AliSHIL)
  
@@ -106,7 +97,16 @@ void AliSHIL::CreateMaterials()
   Float_t ains[4] ={28.0855, 15.9994, 47.867,  26.982};
   Float_t zins[4] ={14.,      8.    , 22.   ,  13.   };
   Float_t wins[4] ={ 0.3019,  0.4887,  0.1914,  0.018};
+//
+// Air
+//
+  Float_t aAir[4]={12.0107,14.0067,15.9994,39.948};
+  Float_t zAir[4]={6.,7.,8.,18.};
+  Float_t wAir[4]={0.000124,0.755267,0.231781,0.012827};
+  Float_t dAir = 1.20479E-3;
+  Float_t dAir1 = 1.20479E-10;
 
+  
   Float_t epsil, stmin, tmaxfd, deemax, stemax;
   
   //     STEEL 
@@ -117,65 +117,65 @@ void AliSHIL::CreateMaterials()
   
   // --- Define the various materials for GEANT --- 
   //     Aluminum 
-  AliMaterial(9,  "ALUMINIUM$", 26.98, 13., 2.7, 8.9, 37.2);
-  AliMaterial(29, "ALUMINIUM$", 26.98, 13., 2.7, 8.9, 37.2);
-  AliMaterial(49, "ALUMINIUM$", 26.98, 13., 2.7, 8.9, 37.2);
+  AliMaterial(9,  "ALU1      ", 26.98, 13., 2.7, 8.9, 37.2);
+  AliMaterial(29, "ALU2      ", 26.98, 13., 2.7, 8.9, 37.2);
+  AliMaterial(49, "ALU3      ", 26.98, 13., 2.7, 8.9, 37.2);
   
   //     Iron 
-  AliMaterial(10, "IRON$     ", 55.85, 26., 7.87, 1.76, 17.1);
-  AliMaterial(30, "IRON$     ", 55.85, 26., 7.87, 1.76, 17.1);
-  AliMaterial(50, "IRON$     ", 55.85, 26., 7.87, 1.76, 17.1);
+  AliMaterial(10, "IRON1     ", 55.85, 26., 7.87, 1.76, 17.1);
+  AliMaterial(30, "IRON2     ", 55.85, 26., 7.87, 1.76, 17.1);
+  AliMaterial(50, "IRON3     ", 55.85, 26., 7.87, 1.76, 17.1);
 
   //
   //     Copper
-  AliMaterial(11, "COPPER$   ", 63.55, 29., 8.96, 1.43, 15.1);
-  AliMaterial(31, "COPPER$   ", 63.55, 29., 8.96, 1.43, 15.1);
-  AliMaterial(51, "COPPER$   ", 63.55, 29., 8.96, 1.43, 15.1);
+  AliMaterial(11, "COPPER1   ", 63.55, 29., 8.96, 1.43, 15.1);
+  AliMaterial(31, "COPPER2   ", 63.55, 29., 8.96, 1.43, 15.1);
+  AliMaterial(51, "COPPER3   ", 63.55, 29., 8.96, 1.43, 15.1);
   
   //     Tungsten 
-  AliMaterial(12, "TUNGSTEN$ ", 183.85, 74., 19.3, .35, 10.3);
-  AliMaterial(32, "TUNGSTEN$ ", 183.85, 74., 19.3, .35, 10.3);
-  AliMaterial(52, "TUNGSTEN$ ", 183.85, 74., 19.3, .35, 10.3);
+  AliMaterial(12, "TUNGSTEN1 ", 183.85, 74., 19.3, .35, 10.3);
+  AliMaterial(32, "TUNGSTEN2 ", 183.85, 74., 19.3, .35, 10.3);
+  AliMaterial(52, "TUNGSTEN3 ", 183.85, 74., 19.3, .35, 10.3);
   
   //     Lead 
-  AliMaterial(13, "LEAD$     ", 207.19, 82., 11.35, .56, 18.5);
-  AliMaterial(33, "LEAD$     ", 207.19, 82., 11.35, .56, 18.5);
-  AliMaterial(53, "LEAD$     ", 207.19, 82., 11.35, .56, 18.5);
+  AliMaterial(13, "LEAD1     ", 207.19, 82., 11.35, .56, 18.5);
+  AliMaterial(33, "LEAD2     ", 207.19, 82., 11.35, .56, 18.5);
+  AliMaterial(53, "LEAD3     ", 207.19, 82., 11.35, .56, 18.5);
   
   //     Air 
-  AliMaterial(15, "AIR$      ", 14.61, 7.3, .001205, 30423.24, 67500);
-  AliMaterial(35, "AIR$      ", 14.61, 7.3, .001205, 30423.24, 67500);
-  AliMaterial(55, "AIR$      ", 14.61, 7.3, .001205, 30423.24, 67500);
-  
+  AliMixture(15, "AIR1      ", aAir, zAir, dAir, 4, wAir);
+  AliMixture(35, "AIR2      ", aAir, zAir, dAir, 4, wAir);
+  AliMixture(55, "AIR3      ", aAir, zAir, dAir, 4, wAir);
+
   //     Vacuum 
-  AliMaterial(16, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
-  AliMaterial(36, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
-  AliMaterial(56, "VACUUM$ ", 1e-16, 1e-16, 1e-16, 1e16, 1e16);
+  AliMixture(16, "VACUUM1 ", aAir, zAir, dAir1, 4, wAir);
+  AliMixture(36, "VACUUM2 ", aAir, zAir, dAir1, 4, wAir);
+  AliMixture(56, "VACUUM3 ", aAir, zAir, dAir1, 4, wAir);
   
   //     Stainless Steel 
-  AliMixture(19, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
-  AliMixture(39, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
-  AliMixture(59, "STAINLESS STEEL$", asteel, zsteel, 7.88, 4, wsteel);
+  AliMixture(19, "STAINLESS STEEL1", asteel, zsteel, 7.88, 4, wsteel);
+  AliMixture(39, "STAINLESS STEEL2", asteel, zsteel, 7.88, 4, wsteel);
+  AliMixture(59, "STAINLESS STEEL3", asteel, zsteel, 7.88, 4, wsteel);
   
   //     Lead/Tungsten 
-  AliMixture(20, "LEAD/TUNGSTEN$", apbw, zpbw, 15.325, 2, wpbw);
-  AliMixture(40, "LEAD/TUNGSTEN$", apbw, zpbw, 15.325, 2, wpbw);
-  AliMixture(60, "LEAD/TUNGSTEN$", apbw, zpbw, 15.325, 2, wpbw);
+  AliMixture(20, "LEAD/TUNGSTEN1", apbw, zpbw, 15.325, 2, wpbw);
+  AliMixture(40, "LEAD/TUNGSTEN2", apbw, zpbw, 15.325, 2, wpbw);
+  AliMixture(60, "LEAD/TUNGSTEN3", apbw, zpbw, 15.325, 2, wpbw);
 
   //     Ni-W-Cu 
-  AliMixture(21, "Ni-W-Cu$", aniwcu, zniwcu, 18.78, 3, wniwcu);
-  AliMixture(41, "Ni-W-Cu$", aniwcu, zniwcu, 18.78, 3, wniwcu);
-  AliMixture(61, "Ni-W-Cu$", aniwcu, zniwcu, 18.78, 3, wniwcu);
+  AliMixture(21, "Ni-W-Cu1", aniwcu, zniwcu, 18.78, 3, wniwcu);
+  AliMixture(41, "Ni-W-Cu2", aniwcu, zniwcu, 18.78, 3, wniwcu);
+  AliMixture(61, "Ni-W-Cu3", aniwcu, zniwcu, 18.78, 3, wniwcu);
 
   //     Concrete 
-  AliMixture(17, "CONCRETE$", aconc, zconc, 2.35, 10, wconc);
-  AliMixture(37, "CONCRETE$", aconc, zconc, 2.35, 10, wconc);
-  AliMixture(57, "CONCRETE$", aconc, zconc, 2.35, 10, wconc);
+  AliMixture(17, "CONCRETE1", aconc, zconc, 2.35, 10, wconc);
+  AliMixture(37, "CONCRETE2", aconc, zconc, 2.35, 10, wconc);
+  AliMixture(57, "CONCRETE3", aconc, zconc, 2.35, 10, wconc);
 
   //     Insulation powder 
-  AliMixture(14, "INSULATION$", ains, zins, 0.41, 4, wins);
-  AliMixture(34, "INSULATION$", ains, zins, 0.41, 4, wins);
-  AliMixture(54, "INSULATION$", ains, zins, 0.41, 4, wins);
+  AliMixture(14, "INSULATION1", ains, zins, 0.41, 4, wins);
+  AliMixture(34, "INSULATION2", ains, zins, 0.41, 4, wins);
+  AliMixture(54, "INSULATION3", ains, zins, 0.41, 4, wins);
   
   // **************** 
   //     Defines tracking media parameters. 
@@ -244,14 +244,14 @@ void AliSHIL::CreateMaterials()
   AliMedium(61, "Ni/W3           ", 61, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
 
 //    Concrete 
-  AliMedium(17, "CC_C0           ", 17, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
-  AliMedium(37, "CC_C1           ", 37, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
-  AliMedium(57, "CC_C2           ", 57, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+  AliMedium(17, "CC_C0           ", 17, 0, 0,      sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+  AliMedium(37, "CC_C1           ", 37, 0, 0,      sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
+  AliMedium(57, "CC_C2           ", 57, 0, 0,      sxmgmx, tmaxfd, stemax, deemax, epsil, stmin);
 
 }
 
 //_____________________________________________________________________________
-void AliSHIL::DrawModule () 
+void AliSHIL::DrawModule () const
 {
     // Drawing options
 }
@@ -264,15 +264,17 @@ void AliSHIL::Init()
   //
   Int_t i;
   //
-  printf("\n");
-  for(i=0;i<35;i++) printf("*");
-  printf(" SHIL_INIT ");
-  for(i=0;i<35;i++) printf("*");
-  printf("\n");
-  //
-  // Here the SHIL initialisation code (if any!)
-  for(i=0;i<80;i++) printf("*");
-  printf("\n");
+  if(AliLog::GetGlobalDebugLevel()>0) {
+    printf("\n%s: ",ClassName());
+    for(i=0;i<35;i++) printf("*");
+    printf(" SHIL_INIT ");
+    for(i=0;i<35;i++) printf("*");
+    printf("\n%s: ",ClassName());
+    //
+    // Here the SHIL initialisation code (if any!)
+    for(i=0;i<80;i++) printf("*");
+    printf("\n");
+  }
 }