]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSvPPRcoarsesymm.cxx
Test the access to EMCAL
[u/mrichter/AliRoot.git] / ITS / AliITSvPPRcoarsesymm.cxx
index 29acde73f16e145eea27aa2f5354354b44b16a08..03f72d9db4e8e2fce4e7eae7a839fd39b002f2a6 100644 (file)
 
 /*
 $Log$
+Revision 1.20  2001/03/29 22:01:53  barbera
+New flag added to change the material for some service supports as asked by the PMD people. Some changes to the services due to the new drawings from the engineers
+
+Revision 1.19  2001/03/29 05:28:56  barbera
+Rails material changed from aluminum to carbon fiber according with the decision of the last Technical Board
+
 Revision 1.18  2001/03/28 06:40:21  barbera
 Central and services mother volumes made consistenf for detailed and coarse geometry. Switch for rails added to the coarse geometries
 
@@ -271,20 +277,36 @@ void AliITSvPPRcoarsesymm::CreateGeometry(){
   Float_t dgh[100];
   
   Int_t rails = 1;       // flag for rails (1 --> rails in; 0 --> rails out)
-  
+  Int_t suppmat = 0;     // flag to change the material of the services
+                         // supports (=0 copper, =1 aluminum, =2 carbon)  
   rails = GetRails();
   
   if(rails != 0 && rails != 1) {
      cout << "WARNING: the switch for rails is not set neither to 0 (rails out) nor to 1 (rails in)." 
      " The default value of 1 (rails in) will be used." << endl;
-       
   }  
   
-  if(rails == 0 ) {
+  if (rails == 0 ) {
      cout << "Rails are out." << endl; 
   } else {
      cout << "Rails are in." << endl;
-  }        
+  }      
+  
+  suppmat = GetSupportMaterial();   
+  
+  if (suppmat != 0 && suppmat != 1 && suppmat != 2) {
+     cout << "WARNING: the flag for the material of services supports is not set neither to 0 (copper) nor to 1 (aluminum) nor to 2 (carbon)." 
+     " The default value of 0 (copper) will be used." << endl;
+  }  
+  
+  if (suppmat == 0) {
+     cout << "The material of the services supports is copper." << endl; 
+  } else if (suppmat == 1){
+     cout << "The material of the services supports is aluminum." << endl;
+  } else {
+     cout << "The material of the services supports is carbon." << endl;
+  }      
+  
 
   Int_t *idtmed = fIdtmed->GetArray()-199;
   
@@ -532,37 +554,99 @@ void AliITSvPPRcoarsesymm::CreateGeometry(){
 
   // ****************************  SERVICES  *********************************
 
-  
+
   // --- DEFINE CABLES AT THE END OF THE ITS CONES - COPPER PART
+  //     UPPER PART
   
-  dgh[0] = 46.;
-  dgh[1] = 46.+1.0;
+  dgh[0] = 46.;    
+  dgh[1] = 46.+1.0;  
   dgh[2] = 9.5;
+  dgh[3] = 12.;
+  dgh[4] = 168.;
+  
+  if (suppmat == 0) {
+     gMC->Gsvolu("I1CU", "TUBS", idtmed[279], dgh, 5);    // copper
+  } else if (suppmat == 1) {
+     gMC->Gsvolu("I1CU", "TUBS", idtmed[285], dgh, 5);    // aluminum
+  } else {
+     gMC->Gsvolu("I1CU", "TUBS", idtmed[274], dgh, 5);    // carbon
+  }     
+  gMC->Gspos("I1CU", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
+  gMC->Gspos("I1CU", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");
+  
+  // --- DEFINE CABLES AT THE END OF THE ITS CONES - COPPER PART
+  //     LOWER PART
   
-  gMC->Gsvolu("ICCU", "TUBE", idtmed[279], dgh, 3);  
-  gMC->Gspos("ICCU", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
-  gMC->Gspos("ICCU", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");
+  dgh[0] = 46.;    
+  dgh[1] = 46.+1.0;  
+  dgh[2] = 9.5;
+  dgh[3] = 192.;
+  dgh[4] = 348.;
   
+  if (suppmat == 0) {
+     gMC->Gsvolu("I2CU", "TUBS", idtmed[279], dgh, 5);    // copper
+  } else if (suppmat == 1) {
+     gMC->Gsvolu("I2CU", "TUBS", idtmed[285], dgh, 5);    // aluminum
+  } else {
+     gMC->Gsvolu("I2CU", "TUBS", idtmed[274], dgh, 5);    // carbon
+  }     
+  gMC->Gspos("I2CU", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
+  gMC->Gspos("I2CU", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");
+
+
   // --- DEFINE CABLES AT THE END OF THE ITS CONES - CARBON PART
+  //     UPPER PART
   
-  dgh[0] = 46.+1.0;
-  dgh[1] = 46.+1.0+1.5;
+  dgh[0] = 46.+1.0;  
+  dgh[1] = 46.+1.0+1.5;   
   dgh[2] = 9.5;
+  dgh[3] = 12.;
+  dgh[4] = 168.;
   
-  gMC->Gsvolu("ICCC", "TUBE", idtmed[274], dgh, 3);  
-  gMC->Gspos("ICCC", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
-  gMC->Gspos("ICCC", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");  
+  gMC->Gsvolu("I1CC", "TUBS", idtmed[274], dgh, 5);  
+  gMC->Gspos("I1CC", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
+  gMC->Gspos("I1CC", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");  
   
-  // --- DEFINE PATCH PANELS AT THE END OF THE ITS CONES
+  // --- DEFINE CABLES AT THE END OF THE ITS CONES - CARBON PART
+  //     LOWER PART
+  
+  dgh[0] = 46.+1.0;  
+  dgh[1] = 46.+1.0+1.5;   
+  dgh[2] = 9.5;
+  dgh[3] = 192.;
+  dgh[4] = 348.;
   
-  dgh[0] = 46.;
+  gMC->Gsvolu("I2CC", "TUBS", idtmed[274], dgh, 5);  
+  gMC->Gspos("I2CC", 1, "ITSV", 0., 0., 83.5, 0, "ONLY");
+  gMC->Gspos("I2CC", 2, "ITSV", 0., 0., -83.5, idrotm[200], "ONLY");  
+
+  // --- DEFINE PATCH PANELS AT THE END OF THE ITS CONES
+  //    UPPER PART
+    
+  dgh[0] = 46.;  
   dgh[1] = 56.;
   dgh[2] = 2.25;
+  dgh[3] = 12.;
+  dgh[4] = 168.;
   
-  gMC->Gsvolu("IPAN", "TUBE", idtmed[285], dgh, 3);  
-  gMC->Gspos("IPAN", 1, "ITSV", 0., 0., 95.25, 0, "ONLY");  
-  gMC->Gspos("IPAN", 2, "ITSV", 0., 0., -95.25, idrotm[200], "ONLY"); 
+  gMC->Gsvolu("IPA1", "TUBS", idtmed[285], dgh, 5);  
+  gMC->Gspos("IPA1", 1, "ITSV", 0., 0., 95.25, 0, "ONLY");  
+  gMC->Gspos("IPA1", 2, "ITSV", 0., 0., -95.25, idrotm[200], "ONLY"); 
+
+
+  // --- DEFINE PATCH PANELS AT THE END OF THE ITS CONES
+  //     LOWER PART
+    
+  dgh[0] = 46.;  
+  dgh[1] = 56.;
+  dgh[2] = 2.25;
+  dgh[3] = 192.;
+  dgh[4] = 348.;
   
+  gMC->Gsvolu("IPA2", "TUBS", idtmed[285], dgh, 5);  
+  gMC->Gspos("IPA2", 1, "ITSV", 0., 0., 95.25, 0, "ONLY");  
+  gMC->Gspos("IPA2", 2, "ITSV", 0., 0., -95.25, idrotm[200], "ONLY"); 
+
   // --- DEFINE CABLES/COOLING BELOW THE TPC - COPPER PART - UPPER PART
  
   dgh[0] = (ztpc-97.5)/2.;
@@ -707,8 +791,8 @@ void AliITSvPPRcoarsesymm::CreateGeometry(){
   dgh[1] = 59.;
   dgh[2] = 0.6;    
   gMC->Gsvolu("ICYL", "TUBE", idtmed[285], dgh, 3);   
-  gMC->Gspos("ICYL", 1, "ALIC", 0., 0., 73.4, 0, "ONLY");       
-  gMC->Gspos("ICYL", 2, "ALIC", 0., 0., -73.4, idrotm[200], "ONLY");  
+  gMC->Gspos("ICYL", 1, "ALIC", 0., 0., 74.1, 0, "ONLY");       
+  gMC->Gspos("ICYL", 2, "ALIC", 0., 0., -74.1, idrotm[200], "ONLY");  
 
   // --- DEFINE SUPPORTS FOR RAILS ATTACHED TO THE CYLINDERS