- AliMUONRawCluster contains z-position.
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 18 Oct 2000 11:42:07 +0000 (11:42 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 18 Oct 2000 11:42:07 +0000 (11:42 +0000)
- Some clean-up of useless print statements during initialisations.

16 files changed:
MUON/AliMUON.cxx
MUON/AliMUON.h
MUON/AliMUONClusterFinderVS.cxx
MUON/AliMUONRawCluster.h
MUON/AliMUONSegmentationSlat.cxx
MUON/AliMUONSegmentationSlatModule.cxx
MUON/AliMUONSegmentationSlatModuleN.cxx
MUON/AliMUONSegmentationV0.cxx
MUON/AliMUONSegmentationV0.h
MUON/AliMUONSegmentationV01.cxx
MUON/AliMUONSegmentationV01.h
MUON/AliMUONSegmentationV02.h
MUON/AliMUONSegmentationV04.cxx
MUON/AliMUONSegmentationV05.cxx
MUON/AliMUONSegmentationV1.cxx
MUON/AliMUONSegmentationV1.h

index 0df4e8b..c009aee 100644 (file)
@@ -14,6 +14,9 @@
  **************************************************************************/
 /*
 $Log$
+Revision 1.33  2000/10/09 14:01:57  morsch
+Unused variables removed.
+
 Revision 1.32  2000/10/06 09:08:10  morsch
 Built geometry includes slat geometry for event display.
 
@@ -525,8 +528,6 @@ void AliMUON::BuildGeometry()
                
                for (Int_t j=0; j<7; j++)
                {
-                   printf("\n BuildGeometry %d", j);
-                   
                    sprintf(nameSlat,"SLAT%d",100*id+j);
                    new TBRIK(nameSlat,"Slat Module","void",20.*npcb[j],20.,0.25);
                    node->cd();
index fcd45a6..f5ffc59 100644 (file)
@@ -121,7 +121,7 @@ class AliMUON : public  AliDetector {
            
  protected:
     TObjArray            *fChambers;           // List of Tracking Chambers
-    TObjArray            *fTriggerCircuits;   // List of Trigger Circuits
+    TObjArray            *fTriggerCircuits;    // List of Trigger Circuits
     Int_t                 fNPadHits;           // Number of pad hits
     TClonesArray         *fPadHits;            // List of pad hits
     TObjArray            *fDchambers;          // List of digits
index 54e12b8..2b95fb3 100644 (file)
  **************************************************************************/
 /*
 $Log$
+Revision 1.11  2000/10/06 09:04:05  morsch
+- Dummy z-arguments in GetPadI, SetHit, FirstPad replaced by real z-coordinate
+       to make code work with slat chambers (AM)
+- Replace GetPadI calls with unchecked x,y coordinates by pad iterator calls wherever possible.
+
 Revision 1.10  2000/10/03 13:51:57  egangler
 Removal of useless dependencies via forward declarations
 
@@ -1336,6 +1341,10 @@ void AliMUONClusterFinderVS::FindRawClusters()
            c.fX[1] /= c.fQ[1];
            c.fX[1]=fSeg[0]->GetAnod(c.fX[1]);
            c.fY[1] /= c.fQ[1];
+           
+           c.fZ[0] = fZPlane;
+           c.fZ[1] = fZPlane;      
+
            fprintf(stderr,"\n Cathode 1 multiplicite %d X(CG) %f Y(CG) %f\n",
                    c.fMultiplicity[0],c.fX[0],c.fY[0]);
            fprintf(stderr," Cathode 2 multiplicite %d X(CG) %f Y(CG) %f\n",
@@ -1475,6 +1484,7 @@ Float_t AliMUONClusterFinderVS::CombiSingleMathiesonFit(AliMUONRawCluster *c)
     if (lower[0]>upper[0]) {xdum=lower[0]; lower[0]=upper[0]; upper[0]=xdum;}
        
     icount=0;
+    printf("\n single y %f %f", fXInit[0], fYInit[0]);
     
     for (fSeg[0]->FirstPad(fXInit[0], fYInit[0], fZPlane, 0., dpy); 
         fSeg[0]->MorePads(); fSeg[0]->NextPad())
@@ -1483,6 +1493,7 @@ Float_t AliMUONClusterFinderVS::CombiSingleMathiesonFit(AliMUONRawCluster *c)
        fSeg[0]->GetPadC(ix,iy,xdum,upper[1],zdum);     
        if (icount ==0) lower[1]=upper[1];
        icount++;
+       printf("\n upper lower %d %f %f", icount, upper[1], lower[1]);
     }
     
     if (lower[1]>upper[1]) {xdum=lower[1]; lower[1]=upper[1]; upper[1]=xdum;}
index d8f5a2f..c3769bd 100644 (file)
@@ -18,6 +18,7 @@ public:
    Int_t       fQ[2]  ;           // Q of cluster (in ADC counts)     
    Float_t     fX[2]  ;           // X of cluster
    Float_t     fY[2]  ;           // Y of cluster
+   Float_t     fZ[2]  ;           // Z of cluster
    Int_t       fPeakSignal[2];    // Peak signal 
    Int_t       fIndexMap[50][2];  // indeces of digits
    Int_t       fOffsetMap[50][2]; // Emmanuel special
index d42d3e3..b56c4c9 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.2  2000/10/09 14:06:18  morsch
+Some type cast problems of type  (TMath::Sign((Float_t)1.,x)) corrected (P.H.)
+
 Revision 1.1  2000/10/06 09:00:47  morsch
 Segmentation class for chambers built out of slats.
 
@@ -432,7 +435,7 @@ void AliMUONSegmentationSlat::Init(Int_t chamber)
 // Initialize slat modules of quadrant +/+    
 // The other three quadrants are handled through symmetry transformations
 //
-    printf("\n Initialise segmentation Slat \n");
+    printf("\n Initialise Segmentation Slat \n");
 //
 
 //    Initialize Slat modules
index 48ea96e..d8955e0 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.1  2000/10/06 08:59:03  morsch
+Segmentation classes for bending and non bending plane slat modules (A. de Falco, A. Morsch)
+
 */
 
 /////////////////////////////////////////////////////
@@ -315,7 +318,7 @@ Neighbours(Int_t iX, Int_t iY, Int_t* Nlist, Int_t Xlist[10], Int_t Ylist[10])
 
 void AliMUONSegmentationSlatModule::Init(Int_t chamber)
 {
-    printf("\n Initialise segmentation SlatModule \n");
+    printf("\n Initialise Segmentation SlatModule \n");
 //
 //  Fill the arrays fCx (x-contour) and fNpxS (ix-contour) for each sector
 //  These arrays help in converting from real to pad co-ordinates and
@@ -340,7 +343,6 @@ void AliMUONSegmentationSlatModule::Init(Int_t chamber)
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
index fd0d752..b43023f 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.1  2000/10/06 08:59:03  morsch
+Segmentation classes for bending and non bending plane slat modules (A. de Falco, A. Morsch)
+
 */
 
 /////////////////////////////////////////////////////
@@ -201,7 +204,7 @@ Neighbours(Int_t iX, Int_t iY, Int_t* Nlist, Int_t Xlist[10], Int_t Ylist[10])
 
 void AliMUONSegmentationSlatModuleN::Init(Int_t chamber)
 {
-    printf("\n Initialise segmentation SlatModuleN \n");
+    printf("\n Initialise Segmentation SlatModuleN \n");
 //
 //  Fill the arrays fCx (x-contour) for each sector
 //  These arrays help in converting from real to pad co-ordinates and
@@ -223,7 +226,6 @@ void AliMUONSegmentationSlatModuleN::Init(Int_t chamber)
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
@@ -240,9 +242,6 @@ void AliMUONSegmentationSlatModuleN::Init(Int_t chamber)
        } else {
            fNpxS[isec] = fNpxS[isec-1] + fPcbBoards[isec]*fNpxPCB;
            fNpyS[isec] = Int_t(fDyPCB/fDpy)*(*fNDiv)[isec];
-
-           printf("\n %d %d ",isec, fNpxS[isec]);
-           
            fCx[isec] = fCx[isec-1] + fPcbBoards[isec]*fDxPCB;
            fNpx += fPcbBoards[isec] * fNpxPCB;
        }
index bb8544f..d958c1f 100644 (file)
@@ -14,6 +14,9 @@
  **************************************************************************/
 /*
 $Log$
+Revision 1.7  2000/10/03 21:48:07  morsch
+Adopt to const declaration of some of the methods in AliSegmentation.
+
 Revision 1.6  2000/10/02 16:58:29  egangler
 Cleaning of the code :
 -> coding conventions
@@ -63,15 +66,16 @@ ClassImp(AliMUONSegmentationV0)
 //  owned by Chamber
 //
     AliMUON *pMUON  = (AliMUON *) gAlice->GetModule("MUON");
-    AliMUONChamber* iChamber=&(pMUON->Chamber(chamber));
+    fChamber=&(pMUON->Chamber(chamber));
     
 //  Initialise maximum number of pads in x ans y
-    fNpx=(Int_t) (iChamber->ROuter()/fDpx+1);
-    fNpy=(Int_t) (iChamber->ROuter()/fDpy+1);
+    fNpx=(Int_t) (fChamber->ROuter()/fDpx+1);
+    fNpy=(Int_t) (fChamber->ROuter()/fDpy+1);
 //  Initialize inner and outer radius of the sensitive region     
-    fRmin=iChamber->RInner();
-    fRmax=iChamber->ROuter();    
+    fRmin=fChamber->RInner();
+    fRmax=fChamber->ROuter();    
     fCorr=0;
+    fZ=fChamber->Z();
 }
 
 
index 9a2a2ae..13c699d 100644 (file)
@@ -7,6 +7,7 @@
 
 #include "AliSegmentation.h"
 
+class AliMUONChamber;
 class TF1;
 
 //----------------------------------------------
@@ -37,7 +38,7 @@ public AliSegmentation {
     // Transform from real to pad coordinates
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y) ;
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z) 
-       {z=0; GetPadC(ix, iy, x , y);}
+       {z=fZ; GetPadC(ix, iy, x , y);}
     //
     // Initialisation
     virtual void Init(Int_t chamber);
@@ -155,6 +156,9 @@ dummy);
     Float_t fXt;    // x
     Float_t fYt;    // y
     TF1*    fCorr;  // correction function
+    //
+    AliMUONChamber* fChamber; // Reference to mother chamber
+    Float_t fZ;               // z-position of chamber
 };
 #endif
 
index 5c144aa..e34de2a 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.9  2000/10/18 08:41:32  morsch
+Make NextPad() and MorePads() to iterate until the end.
+
 Revision 1.8  2000/10/03 21:48:07  morsch
 Adopt to const declaration of some of the methods in AliSegmentation.
 
@@ -60,6 +63,8 @@ AliMUONSegmentationV01 code  from  AliMUONSegResV01.cxx
 
 #include "AliMUONSegmentationV01.h"
 #include "AliMUON.h"
+#include "AliMUONChamber.h"
+#include "AliRun.h"
 
 
 
@@ -107,8 +112,6 @@ void   AliMUONSegmentationV01::SetSegRadii(Float_t  r[4])
 // Set the radii of the segmentation zones 
     for (Int_t i=0; i<4; i++) {
        (*fRSec)[i]=r[i];
-       printf("\n R %d %f \n",i,(*fRSec)[i]);
-       
     }
 }
 
@@ -122,7 +125,6 @@ void AliMUONSegmentationV01::SetPadDivision(Int_t ndiv[4])
 // 
     for (Int_t i=0; i<4; i++) {
        (*fNDiv)[i]=ndiv[i];
-       printf("\n Ndiv %d %d \n",i,(*fNDiv)[i]);
     }
     ndiv[0]=ndiv[1];
 }
@@ -137,14 +139,13 @@ void AliMUONSegmentationV01::Init(Int_t chamber)
 //  This version approximates concentric segmentation zones
 //
     Int_t isec;
-    printf("\n Initialise segmentation v01 -- test !!!!!!!!!!!!!! \n");
+    printf("\n Initialise Segmentation V01\n");
     fNpy=Int_t((*fRSec)[fNsec-1]/fDpy)+1;
 
     (*fDpxD)[fNsec-1]=fDpx;
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
@@ -187,6 +188,10 @@ void AliMUONSegmentationV01::Init(Int_t chamber)
            }
        } // y-pad loop
     } // sector loop
+// reference to chamber
+    AliMUON *pMUON  = (AliMUON *) gAlice->GetModule("MUON");
+    fChamber=&(pMUON->Chamber(chamber));
+    fZ = fChamber->Z();
 }
 
 Int_t AliMUONSegmentationV01::Sector(Int_t ix, Int_t iy)
index 19ce5ad..2fe51ae 100644 (file)
@@ -40,7 +40,7 @@ public AliMUONSegmentationV0 {
     // Transform from real to pad coordinates
     virtual void    GetPadC(Int_t   ix,Int_t   iy,Float_t &x ,Float_t &y );
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z) 
-       {z=0; GetPadC(ix, iy, x , y);}
+       {z=fZ; GetPadC(ix, iy, x , y);}
     //
     // Initialisation
     virtual void Init(Int_t chamber);
index d022239..5c6c42d 100644 (file)
@@ -42,7 +42,7 @@ public AliMUONSegmentationV01 {
     // Transform from pad to real coordinates
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x ,Float_t &y );
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z) 
-       {z=0; GetPadC(ix, iy, x , y);}
+       {z=fZ; GetPadC(ix, iy, x , y);}
     // Transform from pad to real coordinates
     virtual void    GetPadI(Float_t x ,Float_t y , Int_t &ix, Int_t &iy);
     virtual void    GetPad(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy) 
index 8e281ec..f589bea 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.5  2000/10/04 18:50:05  morsch
+In Init(): (*fDpxD)[fNsec-1]=fDpx;
+
 Revision 1.4  2000/10/03 21:48:07  morsch
 Adopt to const declaration of some of the methods in AliSegmentation.
 
@@ -38,6 +41,10 @@ AliMUONSegmentationV04 code  from  AliMUONSegResV04.cxx
 
 
 #include "AliMUONSegmentationV04.h"
+#include "AliMUONChamber.h"
+#include "AliMUON.h"
+#include "AliRun.h"
+
 #include <TMath.h>
 
 //___________________________________________
@@ -46,7 +53,7 @@ ClassImp(AliMUONSegmentationV04)
 
 void AliMUONSegmentationV04::Init(Int_t chamber)
 {
-    printf("\n Initialise segmentation v04 \n");
+    printf("\n Initialise Segmentation V04 \n");
 //
 //  Fill the arrays fCx (x-contour) and fNpxS (ix-contour) for each sector
 //  These arrays help in converting from real to pad co-ordinates and
@@ -96,7 +103,6 @@ void AliMUONSegmentationV04::Init(Int_t chamber)
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
@@ -125,6 +131,10 @@ void AliMUONSegmentationV04::Init(Int_t chamber)
            } // sectors
        } // pad raws in module
     } // PCB rows
+
+    AliMUON *pMUON  = (AliMUON *) gAlice->GetModule("MUON");
+    fChamber=&(pMUON->Chamber(chamber));
+    fZ = fChamber->Z();
 }
 
 void AliMUONSegmentationV04::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y) const
index 3ddcc56..8010d3a 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.4  2000/10/03 21:48:07  morsch
+Adopt to const declaration of some of the methods in AliSegmentation.
+
 Revision 1.3  2000/06/29 12:34:09  morsch
 AliMUONSegmentation class has been made independent of AliMUONChamber. This makes
 it usable with any other geometry class. The link to the object to which it belongs is
@@ -35,6 +38,10 @@ AliMUONSegmentationV05 code  from  AliMUONSegResV05.cxx
 
 
 #include "AliMUONSegmentationV05.h"
+#include "AliMUON.h"
+#include "AliMUONChamber.h"
+#include "AliRun.h"
+
 #include <TMath.h>
 //___________________________________________
 ClassImp(AliMUONSegmentationV05)
@@ -42,7 +49,7 @@ ClassImp(AliMUONSegmentationV05)
 
 void AliMUONSegmentationV05::Init(Int_t chamber)
 {
-    printf("\n Initialise segmentation v05 \n");
+    printf("\n Initialise Segmentation V05 \n");
 //
 //  Fill the arrays fCx (x-contour) and fNpxS (ix-contour) for each sector
 //  These arrays help in converting from real to pad co-ordinates and
@@ -92,7 +99,6 @@ void AliMUONSegmentationV05::Init(Int_t chamber)
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
@@ -121,16 +127,10 @@ void AliMUONSegmentationV05::Init(Int_t chamber)
            } // sectors
        } // pad raws in module
     } // PCB rows
-/*
-    for (Int_t iy=1; iy< fNpy; iy++) {
-           printf("\nBoundary %d %f %d %f %d %f %d %f",
-                  fNpxS[0][iy], fCx[0][iy],
-                  fNpxS[1][iy], fCx[1][iy],
-                  fNpxS[2][iy], fCx[2][iy],
-                  fNpxS[3][iy], fCx[3][iy]);
-           
-    }
-*/
+
+    AliMUON *pMUON  = (AliMUON *) gAlice->GetModule("MUON");
+    fChamber=&(pMUON->Chamber(chamber));
+    fZ = fChamber->Z();
 }
 
 void AliMUONSegmentationV05::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y) const
index f1f3715..b825abd 100644 (file)
@@ -15,6 +15,9 @@
 
 /*
 $Log$
+Revision 1.6  2000/10/03 21:48:07  morsch
+Adopt to const declaration of some of the methods in AliSegmentation.
+
 Revision 1.5  2000/10/02 16:58:29  egangler
 Cleaning of the code :
 -> coding conventions
@@ -52,6 +55,7 @@ AliMUONSegmentationV1 code  from  AliMUONSegResV1.cxx
 #include "AliMUONSegmentationV1.h"
 #include "AliRun.h"
 #include "AliMUON.h"
+#include "AliMUONChamber.h"
 
 //___________________________________________
 ClassImp(AliMUONSegmentationV1)
@@ -89,6 +93,9 @@ void AliMUONSegmentationV1::Init(Int_t chamber)
     //    fNwire=3;
     DefaultCut();
     fCorr=0;
+
+    fZ = iChamber->Z();
+
 }
 
 void AliMUONSegmentationV1::DefaultCut(void)
index f47a37a..48b6c6f 100644 (file)
@@ -66,7 +66,7 @@ public AliSegmentation {
     // Transform from real to pad coordinates
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y);
     virtual void    GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z)
-       {z=0; GetPadC(ix, iy, x , y);}
+       {z=fZ; GetPadC(ix, iy, x , y);}
     // Set pad position
     virtual void     SetPad(Int_t ix, Int_t iy);
     // Set hit position
@@ -178,6 +178,7 @@ public AliSegmentation {
     Float_t fYt;    // y
     Float_t fXhit;  // x-position of hit
     Float_t fYhit;  // y-position of hit
+    Float_t fZ;     // z-position of chamber
     
     TF1* fCorr;     // correction function
 };