Adapting code to the parameters give nin document EDMS Id 335328 and removing extrusi...
authormartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Apr 2005 08:00:11 +0000 (08:00 +0000)
committermartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Apr 2005 08:00:11 +0000 (08:00 +0000)
MUON/AliMUON.cxx
MUON/AliMUON.h
MUON/AliMUONConstants.cxx
MUON/AliMUONSlatGeometryBuilder.cxx

index 963b209..0b2eeb8 100644 (file)
@@ -187,8 +187,8 @@ AliMUON::AliMUON(const char *name, const char *title)
        //
        chamber->InitGeo(AliMUONConstants::DefaultChamberZ(ch));
        //          Set chamber inner and outer radius to default
-       chamber->SetRInner(AliMUONConstants::Dmin(st)/2);
-       chamber->SetROuter(AliMUONConstants::Dmax(st)/2);
+       chamber->SetRInner(AliMUONConstants::Dmin(st)/2.);
+       chamber->SetROuter(AliMUONConstants::Dmax(st)/2.);
        //
       } // Chamber stCH (0, 1) in 
     }     // Station st (0...)
@@ -382,27 +382,6 @@ void AliMUON::SetMaxDestepAlu(Float_t p1)
   fMaxDestepAlu=p1;
 }
 
-//___________________________________________________________________
-void AliMUON::SetAcceptance(Bool_t acc, Float_t angmin, Float_t angmax)
-{
-// Set acceptance cuts 
-  fAccCut=acc;
-  fAccMin=angmin*TMath::Pi()/180;
-  fAccMax=angmax*TMath::Pi()/180;
-  Int_t ch;
-  if (acc) {
-    for (Int_t st = 0; st < AliMUONConstants::NCh() / 2; st++) {
-      // Loop over 2 chambers in the station
-      for (Int_t stCH = 0; stCH < 2; stCH++) {
-       ch = 2 * st + stCH;
-       //         Set chamber inner and outer radius according to acceptance cuts
-       Chamber(ch).SetRInner(TMath::Abs(AliMUONConstants::DefaultChamberZ(ch)*TMath::Tan(fAccMin)));
-       Chamber(ch).SetROuter(TMath::Abs(AliMUONConstants::DefaultChamberZ(ch)*TMath::Tan(fAccMax)));
-      } // chamber loop
-    } // station loop
-  }
-}
-
 //____________________________________________________________________
 Float_t  AliMUON::GetMaxStepGas() const
 {
index 2e005f9..e47a1bc 100644 (file)
@@ -103,7 +103,6 @@ class AliMUON : public  AliDetector
     virtual void   SetMaxStepAlu(Float_t p1);
     virtual void   SetMaxDestepGas(Float_t p1);
     virtual void   SetMaxDestepAlu(Float_t p1);
-    virtual void   SetAcceptance(Bool_t acc=0, Float_t angmin=2, Float_t angmax=9);
    
     // Get Stepping Parameters
     virtual Float_t  GetMaxStepGas() const;
index cadb786..369b801 100644 (file)
@@ -40,15 +40,17 @@ Float_t  AliMUONConstants::fgSqrtKx3St1 = 0.7000;
 Float_t  AliMUONConstants::fgSqrtKy3St1 = 0.7550;
 
 Float_t  AliMUONConstants::fgChargeCorrel    = 0.11;
-Float_t  AliMUONConstants::fgChargeCorrelSt1 = 1.0; //???
-//Float_t  AliMUONConstants::fgDmin[7] = {  36.4,  46.2,  66.0,   80.,   80., 100., 100.};  
+Float_t  AliMUONConstants::fgChargeCorrelSt1 = 1.0; //??? 
 Float_t  AliMUONConstants::fgPitch     = 0.25;
 Float_t  AliMUONConstants::fgPitchSt1  = 0.21; 
 
-//Float_t  AliMUONConstants::fgDmin[7] = {  36.4,  46.2,  66.0,   80.,   80., 100., 100.};    
-Float_t  AliMUONConstants::fgDmin[7] = {  36.4,  46.2,  60.0,   76.,   76.5, 100., 100.};  
-//Float_t  AliMUONConstants::fgDmax[7]  = {183., 245., 395.,  560.,  563., 850., 900.};  
-Float_t  AliMUONConstants::fgDmax[7]  = {183., 245., 363.5,  560.,  563., 850., 900.};  
+// From Alain TOURNAIRE    
+// ALICE / ALICE Engineering baseline / Dimuonspectrometer (DIS) v7-1
+// EDMS Id 335328 for "search in EDMS 
+// These are the diameter (innner and ounner) values of the active surface
+Float_t  AliMUONConstants::fgDmin[7]  = {   36.4,  46.2,  63.0,   79.0,   79.0,  100.0,  100.0};  
+Float_t  AliMUONConstants::fgDmax[7]  = {  176.6, 229.0, 308.84, 418.2,  522.0, 1224.0, 1300.0}; 
 Int_t    AliMUONConstants::fgMaxZoom = 20;
 
 //______________________________________________________________________________
index ae3b801..ad51347 100644 (file)
@@ -19,7 +19,7 @@
 // -------------------------------
 // Abstract base class for geometry construction per chamber.
 //
-// Author: Eric Dumonteil (dumontei@cea.fr)
+
 
 
 // This Builder is designed according to the enveloppe methode. The basic idea is to be able to allow moves 
@@ -166,6 +166,9 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
   const Float_t kPanelHeight = kSensHeight; 
   const Float_t kPanelWidth  = 2 * kCarbonWidth + kNomexWidth;
 
+  // Frame along the rounded (spacers) slats 
+  const Float_t kRframeHeight = 2.00; 
+
   // spacer around the slat: 2 sticks along length,2 along height  
   // H: the horizontal ones 
   const Float_t kHframeLength = kPcbLength; 
@@ -258,8 +261,8 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
        // Mother volume for each chamber in st3 are only defined if Dipole volue is there.
        // Outer excess and inner recess for mother volume radius
        // with respect to ROuter and RInner
-       Float_t dframep_in = 0.006; 
-       Float_t dframep_out= 0.006; 
+       Float_t dframep_in = kRframeHeight; 
+       Float_t dframep_out= kVframeLength + 37.0; // Additional 37 cm gap is needed to wrap the corners of the slats 
        Float_t tpar[3];
        Double_t dstation =  ( (-iChamber2->Z()) - (-iChamber1->Z()) ) /2.1;
        tpar[0] = iChamber1->RInner()-dframep_in; 
@@ -565,7 +568,7 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
       Double_t divpar[3];
       Double_t dydiv = kSensHeight/ndiv;
       Double_t ydiv  = (kSensHeight - dydiv)/2.;
-      Double_t rmin  = 31.5;  // Corrected in sep04 from PQ-LAT-SR2 de CEA-DSM-DAPNIA-SIS/BE ph HARDY 19-Oct-2002 slat 
+      Double_t rmin  = iChamber1->RInner();// Same radius for both chamber in St3
       Double_t xdiv  = 0.;
       Float_t xvol;
       Float_t yvol;
@@ -598,7 +601,7 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
       // 9 box volumes are used to define the PCB closed to the beam pipe of the slat 122000SR1 of chamber 5 and 6 of St3
       // Accordingly to plan PQ-LAT-SR1 of CEA-DSM-DAPNIA-SIS/BE ph HARDY 8-Oct-2002
       // Rmin = 31.5 cm
-      rmin = 31.5; //in cm  
+      rmin = iChamber1->RInner(); // Same radius for both chamber in St3
       ndiv  = 9; 
       dydiv = kSensHeight/ndiv;           // Vertical size of the box volume approximating the rounded PCB
       ydiv  = -kSensHeight/2 + dydiv/2.;   // Initializing vertical position of the volume from bottom
@@ -657,8 +660,8 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
     // Mother volume for each chamber
     // Outer excess and inner recess for mother volume radius
     // with respect to ROuter and RInner
-    Float_t dframep_in = 0.006; 
-    Float_t dframep_out= 0.006; 
+    Float_t dframep_in = kRframeHeight; 
+    Float_t dframep_out= kVframeLength + 40.0; // Additional 30 cm gap is needed to wrap the corners of the slats 
     Float_t tpar[3];
     Double_t dstation =  ( (-iChamber2->Z()) - (-iChamber1->Z()) ) /2.1;
     tpar[0] = iChamber1->RInner()-dframep_in; 
@@ -877,7 +880,7 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
     Double_t divpar[3];
     Double_t dydiv = kSensHeight/ndiv;
     Double_t ydiv  = (kSensHeight - dydiv)/2.;
-    Float_t rmin   = 39.5;// Corrected in sep04 from PQ-LAT-NR3 de CEA-DSM-DAPNIA-SIS/BE ph HARDY 19-Oct-2002 slat 
+    Float_t rmin   = iChamber1->RInner(); // Same radius for both chamber of St4
     Float_t xdiv   = 0.; 
     Float_t xvol;
     Float_t yvol;
@@ -931,8 +934,8 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
     // Mother volume for each chamber
     // Outer excess and inner recess for mother volume radius
     // with respect to ROuter and RInner
-    Float_t dframep_in = 0.006; 
-    Float_t dframep_out= 0.006; 
+    Float_t dframep_in = kRframeHeight; 
+    Float_t dframep_out= kVframeLength + 40.0; // Additional 40 cm gap is needed to wrap the corners of the slats 
     Float_t tpar[3];
     Double_t dstation =  ( (-iChamber2->Z()) - (-iChamber1->Z()) ) /2.3;
     tpar[0] = iChamber1->RInner()-dframep_in; 
@@ -1152,7 +1155,7 @@ void AliMUONSlatGeometryBuilder::CreateGeometry()
     Double_t divpar[3];
     Double_t dydiv = kSensHeight/ndiv;
     Double_t ydiv  = (kSensHeight - dydiv)/2.;
-    Float_t rmin   = 39.5;
+    Float_t rmin   = iChamber1->RInner();
     Float_t xdiv   = 0.; 
     Float_t xvol;
     Float_t yvol;