Added a threshold (fDigitThreshold) to validate a digit
authorschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 2 Mar 2000 16:29:43 +0000 (16:29 +0000)
committerschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 2 Mar 2000 16:29:43 +0000 (16:29 +0000)
PHOS/AliPHOSv0.cxx
PHOS/AliPHOSv0.h

index 2abacf1..d743d23 100644 (file)
@@ -64,7 +64,8 @@ AliPHOSv0::AliPHOSv0(const char *name, const char *title):
   //   - fTmpHits, which retains all the hits of the current event. It 
   //     is used for the digitization part.
 
-  fPINElectronicNoise = 0.010 ;
+  fPinElectronicNoise = 0.010 ;
+  fDigitThreshold      = 1. ;   // 1 GeV 
 
   fHits   = new TClonesArray("AliPHOSHit",100) ;
   gAlice->AddHitList(fHits) ; 
@@ -100,7 +101,7 @@ AliPHOSv0::AliPHOSv0(AliPHOSReconstructioner * Reconstructioner, const char *nam
   //
   //   - fTmpHits, which retains all the hits of the current event. It 
   //     is used for the digitization part.
-  fPINElectronicNoise = 0.010 ;
+  fPinElectronicNoise = 0.010 ;
   fHits   = new TClonesArray("AliPHOSHit",100) ;
   fDigits = new TClonesArray("AliPHOSDigit",100) ;
   fTmpHits= new TClonesArray("AliPHOSHit",100) ;
@@ -1064,7 +1065,7 @@ void AliPHOSv0::FinishEvent()
        deja = kTRUE ; 
       }
     }
-    if ( !deja ) {
+    if ( !deja && (newdigit->GetAmp() > fDigitThreshold) ) {
       new(lDigits[fNdigits]) AliPHOSDigit(* newdigit) ;
       fNdigits++ ;  
     }
@@ -1079,7 +1080,7 @@ void AliPHOSv0::FinishEvent()
     newdigit =  (AliPHOSDigit * ) fDigits->At(i) ;
     fGeom->AbsToRelNumbering(newdigit->GetId(), relid) ;
     if (relid[1]==0){   // Digits belong to EMC (PbW0_4 crystals)
-      energyandnoise = newdigit->GetAmp() + Digitize(gRandom->Gaus(0., fPINElectronicNoise)) ;
+      energyandnoise = newdigit->GetAmp() + Digitize(gRandom->Gaus(0., fPinElectronicNoise)) ;
       if (energyandnoise < 0 ) 
        energyandnoise = 0 ;
       newdigit->SetAmp(energyandnoise) ;
index a2ca6e9..5ebc9a3 100644 (file)
@@ -49,15 +49,17 @@ public:
   RecParticlesList * RecParticles() { return fRecParticles ; }      // gets TClonesArray of reconstructed particles
   void           ResetClusters(){} ;
   void           SetReconstructioner(AliPHOSReconstructioner& Reconstructioner) {fReconstructioner = &Reconstructioner ;} 
+  void           SetDigitThreshold(Float_t th) { fDigitThreshold = th ; } 
   virtual void   StepManager(void) ;                                // does the tracking through PHOS and a preliminary digitalization
   TrackSegmentsList *    TrackSegments(){return fTrackSegments ;}
   
 protected:
 
-  Float_t fPINElectronicNoise  ;        // Electronic Noise in the PIN
+  Float_t fDigitThreshold ;             // Threshold for the digit registration 
   RecPointsList * fEmcClusters ;        // The RecPoints (clusters) list in EMC 
   AliPHOSGeometry * fGeom ;             // geometry definition
   Int_t fNTmpHits ;                     //!  used internally for digitalization
+  Float_t fPinElectronicNoise  ;       // Electronic Noise in the PIN
   RecPointsList * fPpsdClusters ;       // The RecPoints (clusters) list in PPSD 
   AliPHOSReconstructioner * fReconstructioner ; // Reconstrutioner of the PHOS event: Clusterization and subtracking procedures
   TClonesArray * fTmpHits ;             //!  used internally for digitalization