New class AliESDEvent, backward compatibility with the old AliESD (Christian)
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALPID.cxx
index 98494b5..7717c74 100644 (file)
 /* History of cvs commits:
  *
  * $Log$
+ * Revision 1.12  2007/06/11 20:43:06  hristov
+ * Changes required by the updated AliESDCaloCluster (Gustavo)
+ *
+ * Revision 1.11  2007/03/30 13:50:34  gustavo
+ * PID for particles with E < 5 GeV was not done, temporal solution found (Guenole)
+ *
+ * Revision 1.10  2007/03/09 14:34:11  gustavo
+ * Correct probability calculation, added missing initialization of data members
+ *
  * Revision 1.9  2007/02/20 20:17:43  hristov
  * Corrected array size, removed warnings (icc)
  *
 // #include "AliLoader.h"
 // #include "AliStack.h"
 // #include "AliESDtrack.h"
-// #include "AliESD.h"
+// #include "AliESDEvent.h"
 #include "AliLog.h"
 #include "AliEMCALPID.h"
   
@@ -226,7 +235,7 @@ ClassImp(AliEMCALPID)
 }
 
 //______________________________________________
-void AliEMCALPID::RunPID(AliESD *esd)
+void AliEMCALPID::RunPID(AliESDEvent *esd)
 {
 //
 // Make the PID for all the EMCAL clusters containedin the ESDs File
@@ -235,7 +244,7 @@ void AliEMCALPID::RunPID(AliESD *esd)
        // trivial check against NULL object passed
   
   if (esd == 0x0) {
-    AliInfo("NULL ESD object passed!!" );
+    AliInfo("NULL ESD object passed !!" );
     return ;
   }
 
@@ -245,14 +254,19 @@ void AliEMCALPID::RunPID(AliESD *esd)
   for (Int_t iCluster = firstCluster; iCluster < (nClusters + firstCluster); iCluster++) {
     
     AliESDCaloCluster *clust = esd->GetCaloCluster(iCluster);
-    energy = clust->GetClusterEnergy();
+    energy = clust->E();
     lambda0 = clust->GetM02();
     // verify cluster type
     Int_t clusterType= clust->GetClusterType();
-    if (clusterType == AliESDCaloCluster::kClusterv1 && lambda0 != 0 && energy > 5 && energy < 1000) {
+    if (clusterType == AliESDCaloCluster::kClusterv1 && lambda0 != 0  && energy < 1000) {
+
+
       // reject clusters with lambda0 = 0
-      // reject clusters with energy < 5 GeV
+
+
       ComputePID(energy, lambda0);
+
+
       if (fPrintInfo) {
        AliInfo("___________________________________________________");
        AliInfo(Form( "Particle Energy = %f",energy));
@@ -289,6 +303,10 @@ void AliEMCALPID::ComputePID(Double_t energy, Double_t lambda0)
 // This is the main command, which uses the distributions computed and parametrised, 
 // and gives the PID by the bayesian method.
 //
+
+if (energy<5){energy =6;}
+
+
   TArrayD paramDistribGamma  = DistLambda0(energy, 1);
   TArrayD paramDistribPiZero = DistLambda0(energy, 2);
   TArrayD paramDistribHadron = DistLambda0(energy, 3);