Correction in efficiency for p < 0.5.
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALFast.cxx
index 766eaaf..3e405d0 100644 (file)
 
 /*
 $Log$
+Revision 1.3  2002/02/05 11:32:15  morsch
+Smearing parameters with TRD included added.
+
+Revision 1.2  2002/01/18 03:27:12  morsch
+Acceptance and random rejection added.
+
 */
 
 
@@ -38,10 +44,21 @@ Float_t AliEMCALFast::SmearMomentum(Int_t ind, Float_t p)
 //  where typically a = 0.75 and b = 0.16 - 0.24 depending on multiplicity
 //  (the lower value is for dn/d(eta) about 2000, and the higher one for 8000)
 //
+//  If we include information from TRD b will be by a factor 2/3 smaller.
+//
+//  ind = 1: high multiplicity
+//  ind = 2: low  multiplicity
+//  ind = 3: high multiplicity + TRD
+//  ind = 4: low  multiplicity + TRD
+
     Float_t pSmeared;
     Float_t a = 0.75;
     Float_t b = 0.24;
+
+    if (ind == 1) b = 0.24;
     if (ind == 2) b = 0.16;
+    if (ind == 3) b = 0.16;    
+    if (ind == 4) b = 0.11;    
     
     Float_t sigma = p*TMath::Sqrt(a*a+b*b*p*p)*0.01;
     pSmeared = p + gRandom->Gaus(0., sigma);
@@ -57,14 +74,12 @@ Float_t AliEMCALFast::Efficiency(Int_t ind, Float_t p)
 // below 0.5 GeV goes down to about 70% at 0.2 GeV.
 // On top of that there is 90% geometrical acceptance for tracking due
 // to TPC (dead zones between readout chambers).  
-    Float_t eff = 0.;
 // Tracking 
-    if (p > 0.5) {
-       eff = 0.9;
-       if (ind == 2) eff = 0.95;
-    } else {
-       eff = eff-(0.5-p)*0.2/0.3;
-    }
+//      
+    Float_t eff = 0.9;
+    if (ind == 2) eff  = 0.95;
+    if (p < 0.5) eff -= (0.5-p)*0.2/0.3;
+// Geometry
     eff *= 0.9;
 // Acceptance    
     return eff;