]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Updated cuts classes (Rossella, Renu, Francesco, Giacomo, Chiara)
authordainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 15 Apr 2010 21:11:11 +0000 (21:11 +0000)
committerdainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 15 Apr 2010 21:11:11 +0000 (21:11 +0000)
PWG3/vertexingHF/AliRDHFCutsD0toKpi.cxx
PWG3/vertexingHF/AliRDHFCutsD0toKpipipi.cxx
PWG3/vertexingHF/AliRDHFCutsD0toKpipipi.h
PWG3/vertexingHF/AliRDHFCutsDplustoKpipi.cxx
PWG3/vertexingHF/AliRDHFCutsDplustoKpipi.h
PWG3/vertexingHF/AliRDHFCutsDstoKKpi.cxx
PWG3/vertexingHF/AliRDHFCutsJpsitoee.cxx
PWG3/vertexingHF/AliRDHFCutsLctopKpi.cxx

index a79c7e306e13a36e2af15fb2b46a6cf2ef3268ad..86c3991d10aa46f6795f2e9c788656005afc60bb 100644 (file)
@@ -106,18 +106,6 @@ void AliRDHFCutsD0toKpi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int
   }
 
   AliAODRecoDecayHF2Prong *dd = (AliAODRecoDecayHF2Prong*)d;
- /*
-  vars[0] = dd->GetDCA();
-  if(TMath::Abs(pdgdaughters[0])==211) {
-    vars[1] = dd->CosThetaStarD0();
-  } else {
-    vars[1] = dd->CosThetaStarD0bar();
-  }
-  vars[2] = dd->Prodd0d0();
-  vars[3] = dd->CosPointingAngle();
-
-  return;
-*/
  
   Int_t iter=-1;
   if(fVarsForOpt[0]){
@@ -233,40 +221,35 @@ Int_t AliRDHFCutsD0toKpi::IsSelected(TObject* obj,Int_t selectionLevel) {
     if(d->PtProng(1) < fCutsRD[GetGlobalIndex(3,ptbin)] || d->PtProng(0) < fCutsRD[GetGlobalIndex(4,ptbin)]) okD0 = 0;
     if(d->PtProng(0) < fCutsRD[GetGlobalIndex(3,ptbin)] || d->PtProng(1) < fCutsRD[GetGlobalIndex(4,ptbin)]) okD0bar = 0;
     
-    if(!okD0 && !okD0bar) returnvalue=0;
+    if(!okD0 && !okD0bar) return 0;
     
     if(TMath::Abs(d->Getd0Prong(1)) > fCutsRD[GetGlobalIndex(5,ptbin)] || 
        TMath::Abs(d->Getd0Prong(0)) > fCutsRD[GetGlobalIndex(6,ptbin)]) okD0 = 0;
     if(TMath::Abs(d->Getd0Prong(0)) > fCutsRD[GetGlobalIndex(6,ptbin)] ||
        TMath::Abs(d->Getd0Prong(1)) > fCutsRD[GetGlobalIndex(5,ptbin)]) okD0bar = 0;
-    if(!okD0 && !okD0bar) returnvalue=0;
+    if(!okD0 && !okD0bar) return 0;
     
-    if(d->GetDCA() > fCutsRD[GetGlobalIndex(1,ptbin)]) { okD0 = okD0bar = 0; returnvalue=0;
-    }
+    if(d->GetDCA() > fCutsRD[GetGlobalIndex(1,ptbin)]) return 0;
     
     d->InvMassD0(mD0,mD0bar);
     if(TMath::Abs(mD0-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0 = 0;
     if(TMath::Abs(mD0bar-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0bar = 0;
-    if(!okD0 && !okD0bar) returnvalue=0;
+    if(!okD0 && !okD0bar) return 0;
     
     d->CosThetaStarD0(ctsD0,ctsD0bar);
     if(TMath::Abs(ctsD0) > fCutsRD[GetGlobalIndex(2,ptbin)]) okD0 = 0;
     if(TMath::Abs(ctsD0bar) > fCutsRD[GetGlobalIndex(2,ptbin)]) okD0bar = 0;
-    if(!okD0 && !okD0bar) returnvalue=0;
-    
-    if(d->Prodd0d0() > fCutsRD[GetGlobalIndex(7,ptbin)]) { okD0 = okD0bar = 0; returnvalue=0; }
-    
-    if(d->CosPointingAngle() < fCutsRD[GetGlobalIndex(8,ptbin)]) { okD0 = okD0bar = 0; returnvalue=0; }
+    if(!okD0 && !okD0bar) return 0;
     
+    if(d->Prodd0d0() > fCutsRD[GetGlobalIndex(7,ptbin)]) return 0;
     
+    if(d->CosPointingAngle() < fCutsRD[GetGlobalIndex(8,ptbin)]) return 0;
     
     if (okD0) returnvalue=1; //cuts passed as D0
     if (okD0bar) returnvalue=2; //cuts passed as D0bar
     if (okD0 && okD0bar) returnvalue=3; //cuts passed as D0 and D0bar
   }
 
-
   return returnvalue;
-
 }
 //---------------------------------------------------------------------------
index 9ba7da4688126ece97d9ba90c44f036fda3dd19a..7c1ba452c9408720b4d04d5bb12453db7af129c5 100644 (file)
-/**************************************************************************
- * Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
- *                                                                        *
- * Author: The ALICE Off-line Project.                                    *
- * Contributors are mentioned in the code where appropriate.              *
- *                                                                        *
- * Permission to use, copy, modify and distribute this software and its   *
- * documentation strictly for non-commercial purposes is hereby granted   *
- * without fee, provided that the above copyright notice appears in all   *
- * copies and that both the copyright notice and this permission notice   *
- * appear in the supporting documentation. The authors make no claims     *
- * about the suitability of this software for any purpose. It is          *
- * provided "as is" without express or implied warranty.                  *
- **************************************************************************/
-
-/////////////////////////////////////////////////////////////
-//
-// Class for cuts on AOD reconstructed D0->Kpi
-//
-// Author: A.Dainese, andrea.dainese@pd.infn.it
-/////////////////////////////////////////////////////////////
-
-#include <TDatabasePDG.h>
-#include <Riostream.h>
-
-#include "AliRDHFCutsD0toKpipipi.h"
-#include "AliAODRecoDecayHF4Prong.h"
-#include "AliAODTrack.h"
-#include "AliESDtrack.h"
-
-ClassImp(AliRDHFCutsD0toKpipipi)
-
-//--------------------------------------------------------------------------
-AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi() : 
-AliRDHFCuts()
-{
-  //
-  // Default Constructor
-  //
-  Int_t nvars=9;
-  SetNVars(nvars);
-  TString varNames[9]={"inv. mass [GeV]",   
-                      "dca [cm]",
-                      "cosThetaStar", 
-                      "pTK [GeV/c]",
-                      "pTPi [GeV/c]",
-                      "d0K [cm]",
-                      "d0Pi [cm]",
-                      "d0d0 [cm^2]",
-                      "cosThetaPoint"};
-  Bool_t isUpperCut[9]={kTRUE,
-                       kTRUE,
-                       kTRUE,
-                       kFALSE,
-                       kFALSE,
-                       kTRUE,
-                       kTRUE,
-                       kTRUE,
-                       kFALSE};
-  SetVarNames(nvars,varNames,isUpperCut);
-  Bool_t forOpt[9]={kFALSE,
-                   kTRUE,
-                   kTRUE,
-                   kFALSE,
-                   kFALSE,
-                   kFALSE,
-                   kFALSE,
-                   kTRUE,
-                   kTRUE};
-  SetVarsForOpt(4,forOpt);
-  Float_t limits[2]={0,999999999.};
-  SetPtBins(2,limits);
-}
-//--------------------------------------------------------------------------
-AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi(const AliRDHFCutsD0toKpipipi &source) :
-  AliRDHFCuts(source)
-{
-  //
-  // Copy constructor
-  //
-
-}
-//--------------------------------------------------------------------------
-AliRDHFCutsD0toKpipipi &AliRDHFCutsD0toKpipipi::operator=(const AliRDHFCutsD0toKpipipi &source)
-{
-  //
-  // assignment operator
-  //
-  if(&source == this) return *this;
-
-  AliRDHFCuts::operator=(source);
-
-  return *this;
-}
-
-
-//---------------------------------------------------------------------------
-void AliRDHFCutsD0toKpipipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters) {
-  // 
-  // Fills in vars the values of the variables 
-  //
-
-  if(nvars!=fnVarsForOpt) {
-    printf("AliRDHFCutsD0toKpipipi::GetCutsVarsForOpt: wrong number of variables\n");
-    return;
-  }
-
-  AliAODRecoDecayHF4Prong *dd = (AliAODRecoDecayHF4Prong*)d;
-  
-  return;
-}
-//---------------------------------------------------------------------------
-Int_t AliRDHFCutsD0toKpipipi::IsSelected(TObject* obj,Int_t selectionLevel) {
-  //
-  // Apply selection
-  //
-
-  if(!fCutsRD){
-    cout<<"Cut matrice not inizialized. Exit..."<<endl;
-    return 0;
-  }
-  //PrintAll();
-  AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
-
-  if(!d){
-    cout<<"AliAODRecoDecayHF4Prong null"<<endl;
-    return 0;
-  }
-
-
-  // selection on daughter tracks 
-  if(selectionLevel==AliRDHFCuts::kAll || 
-     selectionLevel==AliRDHFCuts::kTracks) {
-    if(!AreDaughtersSelected(d)) return 0;
-  }
-
-
-  Int_t returnvalue=1;
-
-  // selection on candidate
-  if(selectionLevel==AliRDHFCuts::kAll || 
-     selectionLevel==AliRDHFCuts::kCandidate) {
-    
-  }
-
-
-  return returnvalue;
-
-}
-//---------------------------------------------------------------------------
+/**************************************************************************\r
+ * Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *\r
+ *                                                                        *\r
+ * Author: The ALICE Off-line Project.                                    *\r
+ * Contributors are mentioned in the code where appropriate.              *\r
+ *                                                                        *\r
+ * Permission to use, copy, modify and distribute this software and its   *\r
+ * documentation strictly for non-commercial purposes is hereby granted   *\r
+ * without fee, provided that the above copyright notice appears in all   *\r
+ * copies and that both the copyright notice and this permission notice   *\r
+ * appear in the supporting documentation. The authors make no claims     *\r
+ * about the suitability of this software for any purpose. It is          *\r
+ * provided "as is" without express or implied warranty.                  *\r
+ **************************************************************************/\r
+\r
+/////////////////////////////////////////////////////////////\r
+//\r
+// Class for cuts on AOD reconstructed D0->Kpipipi\r
+//\r
+// Author: r.romita@gsi.de, andrea.dainese@pd.infn.it\r
+/////////////////////////////////////////////////////////////\r
+\r
+#include <TDatabasePDG.h>\r
+#include <Riostream.h>\r
+\r
+#include "AliRDHFCutsD0toKpipipi.h"\r
+#include "AliAODRecoDecayHF4Prong.h"\r
+#include "AliAODTrack.h"\r
+#include "AliESDtrack.h"\r
+\r
+ClassImp(AliRDHFCutsD0toKpipipi)\r
+\r
+//--------------------------------------------------------------------------\r
+AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi() : \r
+AliRDHFCuts()\r
+{\r
+  //\r
+  // Default Constructor\r
+  //\r
+  Int_t nvars=9;\r
+  SetNVars(nvars);\r
+  TString varNames[9]={"inv. mass [GeV]",   \r
+                      "dca [cm]",\r
+                       "Dist 2-trk Vtx to PrimVtx [cm]",\r
+                      "Dist 3-trk Vtx to PrimVtx [cm]",\r
+                      "Dist 4-trk Vtx to PrimVtx [cm]",\r
+                      "cosThetaPoint",\r
+                      "pt [GeV/c]",\r
+                      "rho mass [GeV]",\r
+                      "PID cut"};\r
+  Bool_t isUpperCut[9]={kTRUE,\r
+                       kTRUE,\r
+                       kFALSE,\r
+                       kFALSE,\r
+                       kFALSE,\r
+                       kFALSE,\r
+                       kFALSE,\r
+                       kTRUE,\r
+                       kFALSE};\r
+  SetVarNames(nvars,varNames,isUpperCut);\r
+  Bool_t forOpt[9]={kFALSE,\r
+                   kTRUE,\r
+                   kTRUE,\r
+                   kTRUE,\r
+                   kTRUE,\r
+                   kTRUE,\r
+                   kFALSE,\r
+                   kFALSE,\r
+                   kFALSE};\r
+  SetVarsForOpt(5,forOpt);\r
+  Float_t limits[2]={0,999999999.};\r
+  SetPtBins(2,limits);\r
+}\r
+//--------------------------------------------------------------------------\r
+AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi(const AliRDHFCutsD0toKpipipi &source) :\r
+  AliRDHFCuts(source)\r
+{\r
+  //\r
+  // Copy constructor\r
+  //\r
+\r
+}\r
+//--------------------------------------------------------------------------\r
+AliRDHFCutsD0toKpipipi &AliRDHFCutsD0toKpipipi::operator=(const AliRDHFCutsD0toKpipipi &source)\r
+{\r
+  //\r
+  // assignment operator\r
+  //\r
+  if(&source == this) return *this;\r
+\r
+  AliRDHFCuts::operator=(source);\r
+\r
+  return *this;\r
+}\r
+\r
+\r
+//---------------------------------------------------------------------------\r
+void AliRDHFCutsD0toKpipipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters) {\r
+  // \r
+  // Fills in vars the values of the variables \r
+  //\r
+\r
+  if(nvars!=fnVarsForOpt) {\r
+    printf("AliRDHFCutsD0toKpipipi::GetCutsVarsForOpt: wrong number of variables\n");\r
+    return;\r
+  }\r
+\r
+  AliAODRecoDecayHF4Prong *dd = (AliAODRecoDecayHF4Prong*)d;\r
+\r
+  Int_t iter=-1;\r
+\r
+  if(fVarsForOpt[0]) {\r
+    iter++;\r
+    Double_t mD0[2],mD0bar[2];\r
+    if(TMath::Abs(pdgdaughters[1])==321 || TMath::Abs(pdgdaughters[3])==321) {\r
+      dd->InvMassD0(mD0);\r
+      if(TMath::Abs(pdgdaughters[1])==321) {\r
+       vars[iter]=mD0[0];\r
+      }else{\r
+       vars[iter]=mD0[1];\r
+      }\r
+    } else {\r
+      dd->InvMassD0bar(mD0bar);\r
+      if(TMath::Abs(pdgdaughters[0])==321) {\r
+       vars[iter]=mD0[0];\r
+      }else{\r
+       vars[iter]=mD0[1];\r
+      }\r
+   }\r
+  }\r
+\r
+  if(fVarsForOpt[1]){\r
+    iter++;\r
+    vars[iter]=dd->GetDCA();\r
+  }\r
+\r
+  if(fVarsForOpt[2]){\r
+    iter++;\r
+    vars[iter]=dd->GetDist12toPrim();\r
+  }\r
+  if(fVarsForOpt[3]){\r
+    iter++;\r
+    vars[iter]=dd->GetDist3toPrim();\r
+  }\r
+  if(fVarsForOpt[4]){\r
+    iter++;\r
+    vars[iter]=dd->GetDist4toPrim();\r
+  }\r
+  if(fVarsForOpt[5]){\r
+    iter++;\r
+    vars[iter]=dd->CosPointingAngle();\r
+  }\r
+  if(fVarsForOpt[6]){\r
+    iter++;\r
+    vars[iter]=dd->Pt();\r
+  }\r
+  if(fVarsForOpt[7]){\r
+    iter++;\r
+    vars[iter]=999999999.;\r
+    printf("ERROR: optmization for rho mass cut not implemented\n");\r
+  }\r
+  if(fVarsForOpt[8]){\r
+    iter++;\r
+    vars[iter]=999999999.;\r
+    printf("ERROR: optmization for PID cut not implemented\n");\r
+  }\r
+  \r
+  return;\r
+}\r
+//---------------------------------------------------------------------------\r
+Int_t AliRDHFCutsD0toKpipipi::IsSelected(TObject* obj,Int_t selectionLevel) {\r
+  //\r
+  // Apply selection\r
+  //\r
+\r
+  if(!fCutsRD){\r
+    cout<<"Cut matrix not inizialized. Exit..."<<endl;\r
+    return 0;\r
+  }\r
+  //PrintAll();\r
+  AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;\r
+\r
+  if(!d){\r
+    cout<<"AliAODRecoDecayHF4Prong null"<<endl;\r
+    return 0;\r
+  }\r
+\r
+\r
+  // selection on daughter tracks \r
+  if(selectionLevel==AliRDHFCuts::kAll || \r
+     selectionLevel==AliRDHFCuts::kTracks) {\r
+    if(!AreDaughtersSelected(d)) return 0;\r
+  }\r
+\r
+\r
+  Int_t returnvalue=1;\r
+\r
+  // selection on candidate\r
+  if(selectionLevel==AliRDHFCuts::kAll || \r
+     selectionLevel==AliRDHFCuts::kCandidate) {\r
+\r
+    Int_t ptbin=PtBin(d->Pt());\r
+    \r
+    Int_t okD0=1,okD0bar=1;    \r
+    Double_t mD0[2],mD0bar[2];\r
+    Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();\r
+\r
+    d->InvMassD0(mD0);\r
+    if(TMath::Abs(mD0[0]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)] &&\r
+       TMath::Abs(mD0[1]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0 = 0;\r
+    d->InvMassD0bar(mD0bar);\r
+    if(TMath::Abs(mD0bar[0]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)] &&\r
+       TMath::Abs(mD0bar[1]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0bar = 0;\r
+    if(!okD0 && !okD0bar) return 0;\r
+    \r
+    if(d->GetDCA() > fCutsRD[GetGlobalIndex(1,ptbin)]) return 0;\r
+    if(d->GetDist12toPrim() < fCutsRD[GetGlobalIndex(2,ptbin)]) return 0;\r
+    if(d->GetDist3toPrim() < fCutsRD[GetGlobalIndex(3,ptbin)]) return 0;\r
+    if(d->GetDist4toPrim() < fCutsRD[GetGlobalIndex(4,ptbin)]) return 0;\r
+    if(d->CosPointingAngle() < fCutsRD[GetGlobalIndex(5,ptbin)]) return 0;\r
+    if(d->Pt() < fCutsRD[GetGlobalIndex(6,ptbin)]) return 0;\r
+    if(!d->CutRhoMass(mD0,mD0bar,fCutsRD[GetGlobalIndex(0,ptbin)],fCutsRD[GetGlobalIndex(7,ptbin)])) return 0;\r
+\r
+    if (okD0) returnvalue=1; //cuts passed as D0\r
+    if (okD0bar) returnvalue=2; //cuts passed as D0bar\r
+    if (okD0 && okD0bar) returnvalue=3; //cuts passed as D0 and D0bar\r
+  }\r
+\r
+  return returnvalue;\r
+}\r
+//---------------------------------------------------------------------------\r
index 1c313b8a4bd5541cf0bb82f9ee9d1a2276a91793..9c663e71e2283b3a2414bd61d807e42366861f5b 100644 (file)
@@ -1,39 +1,39 @@
-#ifndef ALIRDHFCUTSD0TOKPIPIPI_H
-#define ALIRDHFCUTSD0TOKPIPIPI_H
-/* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice                               */
-
-//***********************************************************
-// Class AliRDHFCutsD0toKpipipi
-// class for cuts on AOD reconstructed D0->Kpipipi
-// Author: A.Dainese, andrea.dainese@pd.infn.it
-//***********************************************************
-
-#include "AliRDHFCuts.h"
-
-class AliRDHFCutsD0toKpipipi : public AliRDHFCuts 
-{
- public:
-
-  AliRDHFCutsD0toKpipipi();
-  
-  virtual ~AliRDHFCutsD0toKpipipi(){}
-
-  AliRDHFCutsD0toKpipipi(const AliRDHFCutsD0toKpipipi& source);
-  AliRDHFCutsD0toKpipipi& operator=(const AliRDHFCutsD0toKpipipi& source); 
-  virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);
-
-  using AliRDHFCuts::IsSelected;
-  virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
-  
-  Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
-  Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}
-
- protected:
-
-
-  ClassDef(AliRDHFCutsD0toKpipipi,1);  // class for cuts on AOD reconstructed D0->Kpipipi
-};
-
-#endif
+#ifndef ALIRDHFCUTSD0TOKPIPIPI_H\r
+#define ALIRDHFCUTSD0TOKPIPIPI_H\r
+/* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *\r
+ * See cxx source for full Copyright notice                               */\r
+\r
+//***********************************************************\r
+// Class AliRDHFCutsD0toKpipipi\r
+// class for cuts on AOD reconstructed D0->Kpipipi\r
+// Author: A.Dainese, andrea.dainese@pd.infn.it\r
+//***********************************************************\r
+\r
+#include "AliRDHFCuts.h"\r
+\r
+class AliRDHFCutsD0toKpipipi : public AliRDHFCuts \r
+{\r
+ public:\r
+\r
+  AliRDHFCutsD0toKpipipi();\r
+  \r
+  virtual ~AliRDHFCutsD0toKpipipi(){}\r
+\r
+  AliRDHFCutsD0toKpipipi(const AliRDHFCutsD0toKpipipi& source);\r
+  AliRDHFCutsD0toKpipipi& operator=(const AliRDHFCutsD0toKpipipi& source); \r
\r
+  virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);\r
+\r
+  using AliRDHFCuts::IsSelected;\r
+  virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);\r
+  \r
+  Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}\r
+  Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}\r
+\r
+ protected:\r
+\r
+\r
+  ClassDef(AliRDHFCutsD0toKpipipi,1);  // class for cuts on AOD reconstructed D0->Kpipipi\r
+};\r
+\r
+#endif\r
index b84fce523480b33d4d687d8138b070150a0c388a..5f55cb6055e91e78b28e6f4e351f8e50199885f9 100644 (file)
@@ -65,7 +65,7 @@ AliRDHFCutsDplustoKpipi::AliRDHFCutsDplustoKpipi() :
                         kFALSE,
                         kTRUE};
   SetVarNames(nvars,varNames,isUpperCut);
-  Bool_t forOpt[12]={kTRUE,
+  Bool_t forOpt[12]={kFALSE,
                     kFALSE,
                     kFALSE,
                     kFALSE,
@@ -77,7 +77,7 @@ AliRDHFCutsDplustoKpipi::AliRDHFCutsDplustoKpipi() :
                     kTRUE,
                     kTRUE,
                     kFALSE};
-  SetVarsForOpt(6,forOpt);
+  SetVarsForOpt(5,forOpt);
   Float_t limits[2]={0,999999999.};
   SetPtBins(2,limits);
 }
@@ -117,20 +117,7 @@ void AliRDHFCutsDplustoKpipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *var
   }
 
   AliAODRecoDecayHF3Prong *dd = (AliAODRecoDecayHF3Prong*)d;
- /*
-  vars[0] = dd->GetDCA();
-  if(TMath::Abs(pdgdaughters[0])==211) {
-    vars[1] = dd->CosThetaStarD0();
-  } else {
-    vars[1] = dd->CosThetaStarD0bar();
-  }
-  vars[2] = dd->Prodd0d0();
-  vars[3] = dd->CosPointingAngle();
 
-  return;
-*/
-  //possibile generalizzazione
   Int_t iter=-1;
   if(fVarsForOpt[0]){
     iter++;
@@ -146,11 +133,15 @@ void AliRDHFCutsDplustoKpipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *var
   }
   if(fVarsForOpt[2]){
     iter++;
+    Float_t minPtDau=1000000.0;
     for(Int_t iprong=0;iprong<3;iprong++){
       if(TMath::Abs(pdgdaughters[iprong])==211) {
-       vars[iter]=dd->PtProng(iprong);
+       if(dd->PtProng(iprong)<minPtDau){
+         minPtDau=dd->PtProng(iprong);
+       }
       }
     }
+    vars[iter]=minPtDau;
   }
   if(fVarsForOpt[3]){
     iter++;
@@ -162,15 +153,22 @@ void AliRDHFCutsDplustoKpipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *var
   }
   if(fVarsForOpt[4]){
     iter++;
+    Float_t minImpParDau=1000000.0;
     for(Int_t iprong=0;iprong<3;iprong++){
       if(TMath::Abs(pdgdaughters[iprong])==211) {
-       vars[iter]=dd->Getd0Prong(iprong);
+       if(dd->Getd0Prong(iprong)<minImpParDau){
+         minImpParDau=dd->Getd0Prong(iprong);
+       }
       }
     }
+   vars[iter]=minImpParDau;
   }
   if(fVarsForOpt[5]){
     iter++;
-    vars[iter]=dd->GetDist12toPrim();
+    Float_t dist12 = dd->GetDist12toPrim();
+    Float_t dist23 = dd->GetDist23toPrim();
+    if(dist12<dist23)vars[iter]=dist12;
+    else vars[iter]=dist23;
   }
   if(fVarsForOpt[6]){
     iter++;
@@ -198,7 +196,13 @@ void AliRDHFCutsDplustoKpipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *var
   }
   if(fVarsForOpt[11]){
     iter++;
-    vars[iter]=dd->GetDCA();
+    Float_t maxDCA=0;
+    for(Int_t iprong=0;iprong<3;iprong++){
+      if(dd->GetDCA(iprong)<maxDCA){
+       maxDCA=dd->GetDCA(iprong);
+      }
+    }
+    vars[iter]=maxDCA;
   }
   return;
 }
@@ -209,7 +213,7 @@ Int_t AliRDHFCutsDplustoKpipi::IsSelected(TObject* obj,Int_t selectionLevel) {
   //
 
   if(!fCutsRD){
-    cout<<"Cut matrice not inizialized. Exit..."<<endl;
+    cout<<"Cut matrix not inizialized. Exit..."<<endl;
     return 0;
   }
   //PrintAll();
@@ -234,9 +238,9 @@ Int_t AliRDHFCutsDplustoKpipi::IsSelected(TObject* obj,Int_t selectionLevel) {
      selectionLevel==AliRDHFCuts::kCandidate) {
     
     Double_t pt=d->Pt();
-    
+   
     Int_t ptbin=PtBin(pt);
-    
+
     Double_t mDplusPDG = TDatabasePDG::Instance()->GetParticle(411)->Mass();
     Double_t mDplus=d->InvMassDplus();
     if(TMath::Abs(mDplus-mDplusPDG)>fCutsRD[GetGlobalIndex(0,ptbin)])return 0;
@@ -247,23 +251,24 @@ Int_t AliRDHFCutsDplustoKpipi::IsSelected(TObject* obj,Int_t selectionLevel) {
 
     
 
-    //2track cuts
-    if(d->GetDist12toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)]|| d->GetDist23toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)])return 0;
-    if(d->Getd0Prong(0)*d->Getd0Prong(1)<0. && d->Getd0Prong(2)*d->Getd0Prong(1)<0.)return 0;
-    
-    //sec vert
-    if(d->GetSigmaVert()>fCutsRD[GetGlobalIndex(6,ptbin)])return 0;
+  //2track cuts
+  if(d->GetDist12toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)]|| d->GetDist23toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)])return 0;
+  if(d->Getd0Prong(0)*d->Getd0Prong(1)<0. && d->Getd0Prong(2)*d->Getd0Prong(1)<0.)return 0;
 
-    if(d->DecayLength()<fCutsRD[GetGlobalIndex(7,ptbin)])return 0;
-    
-    if(TMath::Abs(d->PtProng(0))<fCutsRD[GetGlobalIndex(8,ptbin)] && TMath::Abs(d->PtProng(1))<fCutsRD[GetGlobalIndex(8,ptbin)] && TMath::Abs(d->PtProng(2))<fCutsRD[GetGlobalIndex(8,ptbin)])return 0;
-    if(d->CosPointingAngle()< fCutsRD[GetGlobalIndex(9,ptbin)])return 0;
-    Double_t sum2=d->Getd0Prong(0)*d->Getd0Prong(0)+d->Getd0Prong(1)*d->Getd0Prong(1)+d->Getd0Prong(2)*d->Getd0Prong(2);
-    if(sum2<fCutsRD[GetGlobalIndex(10,ptbin)])return 0;
-    
-    //DCA
-    for(Int_t i=0;i<3;i++) if(d->GetDCA(i)>fCutsRD[GetGlobalIndex(11,ptbin)]) return 0;
-    
+  //sec vert
+  if(d->GetSigmaVert()>fCutsRD[GetGlobalIndex(6,ptbin)])return 0;
+
+  if(d->DecayLength()<fCutsRD[GetGlobalIndex(7,ptbin)])return 0;
+
+  if(TMath::Abs(d->PtProng(0))<fCutsRD[GetGlobalIndex(8,ptbin)] && TMath::Abs(d->PtProng(1))<fCutsRD[GetGlobalIndex(8,ptbin)] && TMath::Abs(d->PtProng(2))<fCutsRD[GetGlobalIndex(8,ptbin)])return 0;
+  if(d->CosPointingAngle()< fCutsRD[GetGlobalIndex(9,ptbin)])return 0;
+  Double_t sum2=d->Getd0Prong(0)*d->Getd0Prong(0)+d->Getd0Prong(1)*d->Getd0Prong(1)+d->Getd0Prong(2)*d->Getd0Prong(2);
+  if(sum2<fCutsRD[GetGlobalIndex(10,ptbin)])return 0;
+
+  //DCA
+  for(Int_t i=0;i<3;i++) if(d->GetDCA(i)>fCutsRD[GetGlobalIndex(11,ptbin)]) return 0;
+  
+  return 1;
   }
   return 1;
 }
index 43e76098b0953cc32f86582206a35326151aaf3c..d03265629d953c7f90370be4b49d127583956569 100644 (file)
@@ -32,12 +32,13 @@ class AliRDHFCutsDplustoKpipi : public AliRDHFCuts
   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
   
   Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
-  Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(11,iPtBin)] : 1.e6);}
+  Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}
   
  protected:
   
 
-  ClassDef(AliRDHFCutsDplustoKpipi,1);  // class for cuts on AOD reconstructed D+->Kpipi
+  ClassDef(AliRDHFCutsDplustoKpipi,1);  // class for cuts on AOD reconstructed 
+                                   // D+->Kpipi
 };
 
 #endif
index 3caa2a130f0dd082cc42adbe2936e2d9a7459dbf..0755479293caaabb09786fe838e333e88b8ef064 100644 (file)
@@ -37,37 +37,53 @@ AliRDHFCuts()
   //
   // Default Constructor
   //
-  Int_t nvars=9;
+  const Int_t nvars=14;
   SetNVars(nvars);
-  TString varNames[9]={"inv. mass [GeV]",   
-                      "dca [cm]",
-                      "cosThetaStar", 
-                      "pTK [GeV/c]",
-                      "pTPi [GeV/c]",
-                      "d0K [cm]",
-                      "d0Pi [cm]",
-                      "d0d0 [cm^2]",
-                      "cosThetaPoint"};
-  Bool_t isUpperCut[9]={kTRUE,
-                       kTRUE,
-                       kTRUE,
-                       kFALSE,
-                       kFALSE,
-                       kTRUE,
-                       kTRUE,
-                       kTRUE,
-                       kFALSE};
+  TString varNames[nvars]={"inv. mass [GeV]",   
+                       "pTK [GeV/c]",
+                       "pTPi [GeV/c]",
+                       "d0K [cm]",
+                       "d0Pi [cm]",
+                       "dist12 [cm]",
+                       "sigmavert [cm]",
+                       "decLen [cm]",
+                       "ptMax [GeV/c]",
+                       "cosThetaPoint",
+                       "Sum d0^2 (cm^2)",
+                       "dca [cm]",
+                       "inv. mass (Mphi-MKK) [GeV]",
+                       "inv. mass (MKo*-MKpi) [GeV]"
+};
+  Bool_t isUpperCut[nvars]={kTRUE,
+                        kFALSE,
+                        kFALSE,
+                        kFALSE,
+                        kFALSE,
+                        kFALSE,
+                        kTRUE,
+                        kFALSE,
+                        kFALSE,
+                        kFALSE,
+                        kFALSE,
+                        kTRUE,
+                        kTRUE,
+                        kTRUE};
   SetVarNames(nvars,varNames,isUpperCut);
-  Bool_t forOpt[9]={kFALSE,
-                   kTRUE,
-                   kTRUE,
+  Bool_t forOpt[nvars]={kFALSE,
+                   kFALSE,
                    kFALSE,
                    kFALSE,
                    kFALSE,
                    kFALSE,
                    kTRUE,
+                   kTRUE,
+                   kTRUE,
+                   kTRUE,
+                   kTRUE,
+                   kFALSE,
+                   kTRUE,
                    kTRUE};
-  SetVarsForOpt(4,forOpt);
+  SetVarsForOpt(7,forOpt);
   Float_t limits[2]={0,999999999.};
   SetPtBins(2,limits);
 }
@@ -107,6 +123,103 @@ void AliRDHFCutsDstoKKpi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,In
 
   AliAODRecoDecayHF3Prong *dd = (AliAODRecoDecayHF3Prong*)d;
  
+  Int_t iter=-1;
+  if(fVarsForOpt[0]){
+    iter++;
+    if(TMath::Abs(pdgdaughters[0]==321)){
+      vars[iter]=dd->InvMassDsKKpi();
+    }else{
+      vars[iter]=dd->InvMassDspiKK();
+    }
+  }
+  if(fVarsForOpt[1]){
+    iter++;
+    Float_t minPtDau=99999.;
+    for(Int_t iprong=0;iprong<3;iprong++){
+      if(TMath::Abs(pdgdaughters[iprong])==321 && 
+        dd->PtProng(iprong)<minPtDau) minPtDau=dd->PtProng(iprong);
+    }
+    vars[iter]=minPtDau;
+  }
+  if(fVarsForOpt[2]){
+    iter++;
+    for(Int_t iprong=0;iprong<3;iprong++){
+      if(TMath::Abs(pdgdaughters[iprong])==211) {
+       vars[iter]=dd->PtProng(iprong);
+      }
+    }
+  }
+  if(fVarsForOpt[3]){
+    iter++;
+    Float_t minImpParDau=99999.;
+    for(Int_t iprong=0;iprong<3;iprong++){
+      if(TMath::Abs(pdgdaughters[iprong])==321 &&
+        dd->Getd0Prong(iprong)<minImpParDau) minImpParDau=dd->Getd0Prong(iprong);
+    }
+    vars[iter]=minImpParDau;
+  }
+  if(fVarsForOpt[4]){
+    iter++;
+    for(Int_t iprong=0;iprong<3;iprong++){
+      if(TMath::Abs(pdgdaughters[iprong])==211) {
+       vars[iter]=dd->Getd0Prong(iprong);
+      }
+    }
+  }
+  if(fVarsForOpt[5]){
+    iter++;
+    Float_t minDistPair=TMath::Min(dd->GetDist12toPrim(),dd->GetDist23toPrim());
+    vars[iter]=minDistPair;
+  }
+  if(fVarsForOpt[6]){
+    iter++;
+    vars[iter]=dd->GetSigmaVert();
+  }
+  if(fVarsForOpt[7]){
+    iter++;
+    vars[iter] = dd->DecayLength();
+  }
+  if(fVarsForOpt[8]){
+    iter++;
+    Float_t ptmax=0;
+    for(Int_t i=0;i<3;i++){
+      if(dd->PtProng(i)>ptmax)ptmax=dd->PtProng(i);
+    }
+    vars[iter]=ptmax;
+  }
+  if(fVarsForOpt[9]){
+    iter++;
+    vars[iter]=dd->CosPointingAngle();
+  }
+  if(fVarsForOpt[10]){
+    iter++;
+    vars[iter]=dd->Getd0Prong(0)*dd->Getd0Prong(0)+dd->Getd0Prong(1)*dd->Getd0Prong(1)+dd->Getd0Prong(2)*dd->Getd0Prong(2);
+  }
+  if(fVarsForOpt[11]){
+    iter++;
+    Float_t maxDCA=0.;
+    for(Int_t i=0;i<3;i++){ 
+      if(d->GetDCA(i)>maxDCA) maxDCA=d->GetDCA(i);
+    }
+    vars[iter]=maxDCA;
+  }
+  if(fVarsForOpt[12]){
+    iter++;
+    if(TMath::Abs(pdgdaughters[0]==321)){
+      vars[iter]=dd->InvMass2Prongs(0,1,321,321);
+    }else{
+      vars[iter]=dd->InvMass2Prongs(1,2,321,321);      
+    }
+  }
+  if(fVarsForOpt[13]){
+    iter++;
+    if(TMath::Abs(pdgdaughters[0]==321)){
+      vars[iter]=dd->InvMass2Prongs(1,2,321,211);
+    }else{
+      vars[iter]=dd->InvMass2Prongs(0,1,211,321);      
+    }
+  }
+
   
   return;
 }
@@ -136,15 +249,87 @@ Int_t AliRDHFCutsDstoKKpi::IsSelected(TObject* obj,Int_t selectionLevel) {
   }
 
 
-  Int_t returnvalue=1;
 
+  Int_t returnvalue=1;
   // selection on candidate
   if(selectionLevel==AliRDHFCuts::kAll || 
      selectionLevel==AliRDHFCuts::kCandidate) {
     
-  }
 
+    Int_t okDsKKpi=1;
+    Int_t okDspiKK=1;
+    Int_t okMassPhi=0;
+    Int_t okMassK0star=0;
 
+    Double_t pt=d->Pt();
+    Int_t ptbin=PtBin(pt);
+
+    Double_t mDsPDG = TDatabasePDG::Instance()->GetParticle(431)->Mass();
+    Double_t mDsKKpi=d->InvMassDsKKpi();
+    Double_t mDspiKK=d->InvMassDspiKK();
+    if(TMath::Abs(mDsKKpi-mDsPDG)>fCutsRD[GetGlobalIndex(0,ptbin)]) okDsKKpi = 0;
+    if(TMath::Abs(mDspiKK-mDsPDG)>fCutsRD[GetGlobalIndex(0,ptbin)]) okDspiKK = 0;
+    if(!okDsKKpi && !okDspiKK) return 0;
+
+    //single track
+    if(TMath::Abs(d->PtProng(1)) < fCutsRD[GetGlobalIndex(1,ptbin)] || 
+       TMath::Abs(d->Getd0Prong(1))<fCutsRD[GetGlobalIndex(3,ptbin)]) return 0;
+    if(okDsKKpi){
+      if(TMath::Abs(d->PtProng(0)) < fCutsRD[GetGlobalIndex(1,ptbin)] || 
+        TMath::Abs(d->Getd0Prong(0))<fCutsRD[GetGlobalIndex(3,ptbin)]) okDsKKpi=0;
+      if(TMath::Abs(d->PtProng(2)) < fCutsRD[GetGlobalIndex(2,ptbin)] || 
+        TMath::Abs(d->Getd0Prong(2))<fCutsRD[GetGlobalIndex(4,ptbin)]) okDsKKpi=0;
+    }
+    if(okDspiKK){
+      if(TMath::Abs(d->PtProng(0)) < fCutsRD[GetGlobalIndex(2,ptbin)] || 
+        TMath::Abs(d->Getd0Prong(0))<fCutsRD[GetGlobalIndex(4,ptbin)]) okDspiKK=0;
+      if(TMath::Abs(d->PtProng(2)) < fCutsRD[GetGlobalIndex(1,ptbin)] || 
+        TMath::Abs(d->Getd0Prong(2))<fCutsRD[GetGlobalIndex(3,ptbin)]) okDspiKK=0;
+    }
+    if(!okDsKKpi && !okDspiKK) return 0;
+
+    // cuts on resonant decays (via Phi or K0*)
+    Double_t mPhiPDG = TDatabasePDG::Instance()->GetParticle(333)->Mass();
+    Double_t mK0starPDG = TDatabasePDG::Instance()->GetParticle(313)->Mass();
+    if(okDsKKpi){
+      Double_t mass01phi=d->InvMass2Prongs(0,1,321,321);
+      Double_t mass12K0s=d->InvMass2Prongs(1,2,321,211);
+      if(TMath::Abs(mass01phi-mPhiPDG)<fCutsRD[GetGlobalIndex(12,ptbin)]) okMassPhi=1;
+      if(TMath::Abs(mass12K0s-mK0starPDG)<fCutsRD[GetGlobalIndex(13,ptbin)]) okMassK0star = 1;
+      if(!okMassPhi && !okMassK0star) okDsKKpi=0;
+    }
+    if(okDspiKK){
+      Double_t mass01K0s=d->InvMass2Prongs(0,1,211,321);
+      Double_t mass12phi=d->InvMass2Prongs(1,2,321,321);
+      if(TMath::Abs(mass01K0s-mK0starPDG)<fCutsRD[GetGlobalIndex(13,ptbin)]) okMassK0star = 1;
+      if(TMath::Abs(mass12phi-mPhiPDG)<fCutsRD[GetGlobalIndex(12,ptbin)]) okMassPhi=1;
+      if(!okMassPhi && !okMassK0star) okDspiKK=0;
+    }
+    if(!okDsKKpi && !okDspiKK) return 0;
+
+    // Cuts on track pairs
+    for(Int_t i=0;i<3;i++) if(d->GetDCA(i)>fCutsRD[GetGlobalIndex(11,ptbin)])  return 0;
+    if(d->GetDist12toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)] || 
+       d->GetDist23toPrim()<fCutsRD[GetGlobalIndex(5,ptbin)]) return 0;
+
+
+    // Cuts on candidate triplet
+    if(d->GetSigmaVert()>fCutsRD[GetGlobalIndex(6,ptbin)]) return 0;
+    if(d->DecayLength()<fCutsRD[GetGlobalIndex(7,ptbin)]) return 0;
+    if(TMath::Abs(d->PtProng(0))<fCutsRD[GetGlobalIndex(8,ptbin)] && 
+       TMath::Abs(d->PtProng(1))<fCutsRD[GetGlobalIndex(8,ptbin)] && 
+       TMath::Abs(d->PtProng(2))<fCutsRD[GetGlobalIndex(8,ptbin)]) return 0;
+    if(d->CosPointingAngle()< fCutsRD[GetGlobalIndex(9,ptbin)])return 0;
+    Double_t sum2=d->Getd0Prong(0)*d->Getd0Prong(0)+d->Getd0Prong(1)*d->Getd0Prong(1)+d->Getd0Prong(2)*d->Getd0Prong(2);
+    if(sum2<fCutsRD[GetGlobalIndex(10,ptbin)])return 0;
+
+    returnvalue=0;
+    if(okDsKKpi) returnvalue+=1;
+    if(okDspiKK) returnvalue+=2;
+    if(okMassPhi) returnvalue+=4;
+    if(okMassK0star) returnvalue+=8;
+
+  }
   return returnvalue;
 
 }
index a54403bebda354c9277f42c5f4103e00350caf8d..8cc1f7db56dbae4a5476b2f080691259e3f263bf 100644 (file)
@@ -106,18 +106,6 @@ void AliRDHFCutsJpsitoee::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,In
   }
 
   AliAODRecoDecayHF2Prong *dd = (AliAODRecoDecayHF2Prong*)d;
- /*
-  vars[0] = dd->GetDCA();
-  if(TMath::Abs(pdgdaughters[0])==211) {
-    vars[1] = dd->CosThetaStarD0();
-  } else {
-    vars[1] = dd->CosThetaStarD0bar();
-  }
-  vars[2] = dd->Prodd0d0();
-  vars[3] = dd->CosPointingAngle();
-
-  return;
-*/
  
   Int_t iter=-1;
   if(fVarsForOpt[0]){
@@ -134,11 +122,11 @@ void AliRDHFCutsJpsitoee::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,In
   }
   if(fVarsForOpt[3]){
     iter++;
-    vars[iter]=dd->PtProng(0);
+    if(pdgdaughters[0]==11) vars[iter]=dd->PtProng(0);
   }
   if(fVarsForOpt[4]){
     iter++;
-    vars[iter]=dd->PtProng(1);
+    if(pdgdaughters[1]==11) vars[iter]=dd->PtProng(1);
   }
   if(fVarsForOpt[5]){
     iter++;
@@ -166,7 +154,7 @@ Int_t AliRDHFCutsJpsitoee::IsSelected(TObject* obj,Int_t selectionLevel) {
   //
 
   if(!fCutsRD){
-    cout<<"Cut matrice not inizialized. Exit..."<<endl;
+    cout<<"Cut matrix not inizialized. Exit..."<<endl;
     return 0;
   }
   //PrintAll();
@@ -213,10 +201,8 @@ Int_t AliRDHFCutsJpsitoee::IsSelected(TObject* obj,Int_t selectionLevel) {
     if(d->Prodd0d0() > fCutsRD[GetGlobalIndex(7,ptbin)]) return 0;
     
     if(d->CosPointingAngle()   < fCutsRD[GetGlobalIndex(8,ptbin)]) return 0;
-    
   }
 
-
   return 1;
 }
 //---------------------------------------------------------------------------
index 91279c2fa024339dd05cc599214da7cbbd0f76ad..77a815513d974f3cbbbf19232215a850e240c9f9 100644 (file)
@@ -64,7 +64,7 @@ AliRDHFCuts()
                         kFALSE,
                         kTRUE};
   SetVarNames(nvars,varNames,isUpperCut);
-  Bool_t forOpt[12]={kTRUE,
+  Bool_t forOpt[12]={kFALSE,
                     kFALSE,
                     kFALSE,
                     kFALSE,
@@ -76,7 +76,7 @@ AliRDHFCuts()
                     kTRUE,
                     kTRUE,
                     kFALSE};
-  SetVarsForOpt(6,forOpt);
+  SetVarsForOpt(5,forOpt);
   Float_t limits[2]={0,999999999.};
   SetPtBins(2,limits);
 }