#include <TDatabasePDG.h>
#include <Riostream.h>
#include "AliRDHFCutsD0toKpipipi.h"
#include "AliAODRecoDecayHF4Prong.h"
#include "AliAODTrack.h"
#include "AliESDtrack.h"
#include "AliAODPidHF.h"
using std::cout;
using std::endl;
ClassImp(AliRDHFCutsD0toKpipipi)
AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi(const char* name) :
AliRDHFCuts(name)
{
Int_t nvars=9;
SetNVars(nvars);
TString varNames[9]={"inv. mass [GeV]",
"dca [cm]",
"Dist 2-trk Vtx to PrimVtx [cm]",
"Dist 3-trk Vtx to PrimVtx [cm]",
"Dist 4-trk Vtx to PrimVtx [cm]",
"cosThetaPoint",
"pt [GeV/c]",
"rho mass [GeV]",
"PID cut"};
Bool_t isUpperCut[9]={kTRUE,
kTRUE,
kFALSE,
kFALSE,
kFALSE,
kFALSE,
kFALSE,
kTRUE,
kFALSE};
SetVarNames(nvars,varNames,isUpperCut);
Bool_t forOpt[9]={kFALSE,
kTRUE,
kTRUE,
kTRUE,
kTRUE,
kTRUE,
kFALSE,
kFALSE,
kFALSE};
SetVarsForOpt(5,forOpt);
Float_t limits[2]={0,999999999.};
SetPtBins(2,limits);
}
AliRDHFCutsD0toKpipipi::AliRDHFCutsD0toKpipipi(const AliRDHFCutsD0toKpipipi &source) :
AliRDHFCuts(source)
{
}
AliRDHFCutsD0toKpipipi &AliRDHFCutsD0toKpipipi::operator=(const AliRDHFCutsD0toKpipipi &source)
{
if(&source == this) return *this;
AliRDHFCuts::operator=(source);
return *this;
}
void AliRDHFCutsD0toKpipipi::GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters,AliAODEvent* aod) {
if(nvars!=fnVarsForOpt) {
printf("AliRDHFCutsD0toKpipipi::GetCutsVarsForOpt: wrong number of variables\n");
return;
}
AliAODRecoDecayHF4Prong *dd = (AliAODRecoDecayHF4Prong*)d;
Bool_t cleanvtx=kFALSE;
AliAODVertex *origownvtx=0x0;
if(fRemoveDaughtersFromPrimary) {
if(dd->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*dd->GetOwnPrimaryVtx());
cleanvtx=kTRUE;
if(!RecalcOwnPrimaryVtx(dd,aod)) {
CleanOwnPrimaryVtx(dd,aod,origownvtx);
cleanvtx=kFALSE;
}
}
Int_t iter=-1;
if(fVarsForOpt[0]) {
iter++;
Double_t mD0[2],mD0bar[2];
if(TMath::Abs(pdgdaughters[1])==321 || TMath::Abs(pdgdaughters[3])==321) {
dd->InvMassD0(mD0);
if(TMath::Abs(pdgdaughters[1])==321) {
vars[iter]=mD0[0];
}else{
vars[iter]=mD0[1];
}
} else {
dd->InvMassD0bar(mD0bar);
if(TMath::Abs(pdgdaughters[0])==321) {
vars[iter]=mD0bar[0];
}else{
vars[iter]=mD0bar[1];
}
}
}
if(fVarsForOpt[1]){
iter++;
vars[iter]=dd->GetDCA();
}
if(fVarsForOpt[2]){
iter++;
vars[iter]=dd->GetDist12toPrim();
}
if(fVarsForOpt[3]){
iter++;
vars[iter]=dd->GetDist3toPrim();
}
if(fVarsForOpt[4]){
iter++;
vars[iter]=dd->GetDist4toPrim();
}
if(fVarsForOpt[5]){
iter++;
vars[iter]=dd->CosPointingAngle();
}
if(fVarsForOpt[6]){
iter++;
vars[iter]=dd->Pt();
}
if(fVarsForOpt[7]){
iter++;
vars[iter]=999999999.;
printf("ERROR: optmization for rho mass cut not implemented\n");
}
if(fVarsForOpt[8]){
iter++;
vars[iter]=999999999.;
printf("ERROR: optmization for PID cut not implemented\n");
}
if(cleanvtx)CleanOwnPrimaryVtx(dd,aod,origownvtx);
return;
}
Int_t AliRDHFCutsD0toKpipipi::IsSelected(TObject* obj,Int_t selectionLevel) {
if(!fCutsRD){
cout<<"Cut matrix not inizialized. Exit..."<<endl;
return 0;
}
AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
if(!d){
cout<<"AliAODRecoDecayHF4Prong null"<<endl;
return 0;
}
Double_t ptD=d->Pt();
if(ptD<fMinPtCand) return 0;
if(ptD>fMaxPtCand) return 0;
if(fUseTrackSelectionWithFilterBits && d->HasBadDaughters()) return 0;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kTracks) {
if(!AreDaughtersSelected(d)) return 0;
}
Int_t returnvalue=1;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kCandidate) {
Int_t ptbin=PtBin(d->Pt());
Int_t okD0=1,okD0bar=1;
Double_t mD0[2],mD0bar[2];
Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();
d->InvMassD0(mD0);
if(TMath::Abs(mD0[0]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)] &&
TMath::Abs(mD0[1]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0 = 0;
d->InvMassD0bar(mD0bar);
if(TMath::Abs(mD0bar[0]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)] &&
TMath::Abs(mD0bar[1]-mD0PDG) > fCutsRD[GetGlobalIndex(0,ptbin)]) okD0bar = 0;
if(!okD0 && !okD0bar) return 0;
if(d->GetDCA() > fCutsRD[GetGlobalIndex(1,ptbin)]
|| d->GetDCA(3) > fCutsRD[GetGlobalIndex(1,ptbin)]
|| d->GetDCA(2) > fCutsRD[GetGlobalIndex(1,ptbin)]
|| d->GetDCA(5) > fCutsRD[GetGlobalIndex(1,ptbin)]) return 0;
if(d->GetDist12toPrim() < fCutsRD[GetGlobalIndex(2,ptbin)]) return 0;
if(d->GetDist3toPrim() < fCutsRD[GetGlobalIndex(3,ptbin)]) return 0;
if(d->GetDist4toPrim() < fCutsRD[GetGlobalIndex(4,ptbin)]) return 0;
if(d->CosPointingAngle() < fCutsRD[GetGlobalIndex(5,ptbin)]) return 0;
if(d->Pt() < fCutsRD[GetGlobalIndex(6,ptbin)]) return 0;
if(!d->CutRhoMass(mD0,mD0bar,fCutsRD[GetGlobalIndex(0,ptbin)],fCutsRD[GetGlobalIndex(7,ptbin)])) return 0;
if (okD0) returnvalue=1;
if (okD0bar) returnvalue=2;
if (okD0 && okD0bar) returnvalue=3;
}
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kPID) {
Int_t selD01 = D01Selected(d,AliRDHFCuts::kCandidate);
Int_t selD02 = D02Selected(d,AliRDHFCuts::kCandidate);
Int_t selD0bar1 = D0bar1Selected(d,AliRDHFCuts::kCandidate);
Int_t selD0bar2 = D0bar2Selected(d,AliRDHFCuts::kCandidate);
Int_t d01PID = 0, d02PID = 0, d0bar1PID = 0, d0bar2PID = 0;
returnvalue = IsSelectedFromPID(d, &d01PID, &d02PID, &d0bar1PID, &d0bar2PID);
returnvalue = 0;
if((selD01 == 1 && d01PID == 1)||(selD02 == 1 && d02PID == 1)||(selD0bar1 == 1 && d0bar1PID == 1)||(selD0bar2 == 1 && d0bar2PID == 1)) returnvalue = 1;
}
return returnvalue;
}
Int_t AliRDHFCutsD0toKpipipi::IsSelectedFromPID(AliAODRecoDecayHF4Prong *d, Int_t *hyp1, Int_t *hyp2, Int_t *hyp3, Int_t *hyp4) {
Int_t output=0;
Int_t matchK[4], matchPi[4];
Double_t ptlimit[2] = {0.6,0.8};
AliAODTrack* trk[4];
trk[0] = (AliAODTrack*)d->GetDaughter(0);
trk[1] = (AliAODTrack*)d->GetDaughter(1);
trk[2] = (AliAODTrack*)d->GetDaughter(2);
trk[3] = (AliAODTrack*)d->GetDaughter(3);
AliAODPidHF* pidObj = new AliAODPidHF();
pidObj->SetAsym(kTRUE);
pidObj->SetPLimit(ptlimit);
pidObj->SetSigma(0,2.);
pidObj->SetSigma(1,1.);
pidObj->SetSigma(2,0.);
pidObj->SetSigma(3,2.);
pidObj->SetTPC(kTRUE);
pidObj->SetTOF(kTRUE);
pidObj->SetMatch(1);
pidObj->SetCompat(kTRUE);
for(Int_t ii=0; ii<4; ii++) {
pidObj->SetSigma(0,2.);
matchK[ii] = pidObj->MatchTPCTOF(trk[ii],3);
pidObj->SetSigma(0,2.);
matchPi[ii] = pidObj->MatchTPCTOF(trk[ii],2);
}
Int_t d01rho03 = 0, d01rho23 = 0, d02rho01 = 0, d02rho12 = 0, d0bar1rho12 = 0, d0bar1rho23 = 0, d0bar2rho01 = 0, d0bar2rho03 = 0;
if(TMath::Abs(0.775 - d->InvMassRho(0,3))<0.1) {d01rho03 = 1; d0bar2rho03 = 1;}
if(TMath::Abs(0.775 - d->InvMassRho(2,3))<0.1) {d01rho23 = 1; d0bar1rho23 = 1;}
if(TMath::Abs(0.775 - d->InvMassRho(0,1))<0.1) {d02rho01 = 1; d0bar2rho01 = 1;}
if(TMath::Abs(0.775 - d->InvMassRho(1,2))<0.1) {d02rho12 = 1; d0bar1rho12 = 1;}
Int_t d01rho = 0, d02rho = 0, d0bar1rho = 0, d0bar2rho = 0;
if(d01rho03==1||d01rho23==1) d01rho = 1;
if(d02rho01==1||d02rho12==1) d02rho = 1;
if(d0bar1rho12==1||d0bar1rho23==1) d0bar1rho = 1;
if(d0bar2rho01==1||d0bar2rho03==1) d0bar2rho = 1;
if(d01rho==1 && (matchK[1]>=0 && matchPi[0]>=0 && matchPi[2]>=0 && matchPi[3]>=0)) {*hyp1 = 1; output = 1;}
if(d02rho==1 && (matchK[3]>=0 && matchPi[0]>=0 && matchPi[1]>=0 && matchPi[2]>=0)) {*hyp2 = 1; output = 1;}
if(d0bar1rho==1 && (matchK[0]>=0 && matchPi[1]>=0 && matchPi[2]>=0 && matchPi[3]>=0)) {*hyp3 = 1; output = 1;}
if(d0bar2rho==1 && (matchK[2]>=0 && matchPi[0]>=0 && matchPi[1]>=0 && matchPi[3]>=0)) {*hyp4 = 1; output = 1;}
return output;
}
Int_t AliRDHFCutsD0toKpipipi::D01Selected(TObject* obj,Int_t selectionLevel) {
if(!fCutsRD){
cout<<"Cut matrix not inizialized. Exit..."<<endl;
return 0;
}
AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
if(!d){
cout<<"AliAODRecoDecayHF4Prong null"<<endl;
return 0;
}
Int_t returnvalue=0;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kCandidate) {
Int_t ptbin=PtBin(d->Pt());
Double_t mD0[2];
Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();
d->InvMassD0(mD0);
if(TMath::Abs(mD0[0]-mD0PDG) < fCutsRD[GetGlobalIndex(0,ptbin)]) returnvalue = 1;
}
return returnvalue;
}
Int_t AliRDHFCutsD0toKpipipi::D02Selected(TObject* obj,Int_t selectionLevel) {
if(!fCutsRD){
cout<<"Cut matrix not inizialized. Exit..."<<endl;
return 0;
}
AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
if(!d){
cout<<"AliAODRecoDecayHF4Prong null"<<endl;
return 0;
}
Int_t returnvalue=0;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kCandidate) {
Int_t ptbin=PtBin(d->Pt());
Double_t mD0[2];
Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();
d->InvMassD0(mD0);
if(TMath::Abs(mD0[1]-mD0PDG) < fCutsRD[GetGlobalIndex(0,ptbin)]) returnvalue = 1;
}
return returnvalue;
}
Int_t AliRDHFCutsD0toKpipipi::D0bar1Selected(TObject* obj,Int_t selectionLevel) {
if(!fCutsRD){
cout<<"Cut matrix not inizialized. Exit..."<<endl;
return 0;
}
AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
if(!d){
cout<<"AliAODRecoDecayHF4Prong null"<<endl;
return 0;
}
Int_t returnvalue=0;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kCandidate) {
Int_t ptbin=PtBin(d->Pt());
Double_t mD0bar[2];
Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();
d->InvMassD0bar(mD0bar);
if(TMath::Abs(mD0bar[0]-mD0PDG) < fCutsRD[GetGlobalIndex(0,ptbin)]) returnvalue = 1;
}
return returnvalue;
}
Int_t AliRDHFCutsD0toKpipipi::D0bar2Selected(TObject* obj,Int_t selectionLevel) {
if(!fCutsRD){
cout<<"Cut matrix not inizialized. Exit..."<<endl;
return 0;
}
AliAODRecoDecayHF4Prong* d=(AliAODRecoDecayHF4Prong*)obj;
if(!d){
cout<<"AliAODRecoDecayHF4Prong null"<<endl;
return 0;
}
Int_t returnvalue=0;
if(selectionLevel==AliRDHFCuts::kAll ||
selectionLevel==AliRDHFCuts::kCandidate) {
Int_t ptbin=PtBin(d->Pt());
Double_t mD0bar[2];
Double_t mD0PDG = TDatabasePDG::Instance()->GetParticle(421)->Mass();
d->InvMassD0bar(mD0bar);
if(TMath::Abs(mD0bar[1]-mD0PDG) < fCutsRD[GetGlobalIndex(0,ptbin)]) returnvalue = 1;
}
return returnvalue;
}
Bool_t AliRDHFCutsD0toKpipipi::IsInFiducialAcceptance(Double_t pt, Double_t y) const
{
if(fMaxRapidityCand>-998.){
if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
else return kTRUE;
}
if(pt > 5.) {
AliDebug(4,Form("pt of D0 = %f (> 5), cutting at |y| < 0.8\n",pt));
if (TMath::Abs(y) > 0.8){
return kFALSE;
}
} else {
Double_t maxFiducialY = -0.2/15*pt*pt+1.9/15*pt+0.5;
Double_t minFiducialY = 0.2/15*pt*pt-1.9/15*pt-0.5;
AliDebug(4,Form("pt of D0 = %f (< 5), cutting according to the fiducial zone [%f, %f]\n",pt,minFiducialY,maxFiducialY));
if (y < minFiducialY || y > maxFiducialY){
return kFALSE;
}
}
return kTRUE;
}
AliRDHFCutsD0toKpipipi.cxx:1 AliRDHFCutsD0toKpipipi.cxx:2 AliRDHFCutsD0toKpipipi.cxx:3 AliRDHFCutsD0toKpipipi.cxx:4 AliRDHFCutsD0toKpipipi.cxx:5 AliRDHFCutsD0toKpipipi.cxx:6 AliRDHFCutsD0toKpipipi.cxx:7 AliRDHFCutsD0toKpipipi.cxx:8 AliRDHFCutsD0toKpipipi.cxx:9 AliRDHFCutsD0toKpipipi.cxx:10 AliRDHFCutsD0toKpipipi.cxx:11 AliRDHFCutsD0toKpipipi.cxx:12 AliRDHFCutsD0toKpipipi.cxx:13 AliRDHFCutsD0toKpipipi.cxx:14 AliRDHFCutsD0toKpipipi.cxx:15 AliRDHFCutsD0toKpipipi.cxx:16 AliRDHFCutsD0toKpipipi.cxx:17 AliRDHFCutsD0toKpipipi.cxx:18 AliRDHFCutsD0toKpipipi.cxx:19 AliRDHFCutsD0toKpipipi.cxx:20 AliRDHFCutsD0toKpipipi.cxx:21 AliRDHFCutsD0toKpipipi.cxx:22 AliRDHFCutsD0toKpipipi.cxx:23 AliRDHFCutsD0toKpipipi.cxx:24 AliRDHFCutsD0toKpipipi.cxx:25 AliRDHFCutsD0toKpipipi.cxx:26 AliRDHFCutsD0toKpipipi.cxx:27 AliRDHFCutsD0toKpipipi.cxx:28 AliRDHFCutsD0toKpipipi.cxx:29 AliRDHFCutsD0toKpipipi.cxx:30 AliRDHFCutsD0toKpipipi.cxx:31 AliRDHFCutsD0toKpipipi.cxx:32 AliRDHFCutsD0toKpipipi.cxx:33 AliRDHFCutsD0toKpipipi.cxx:34 AliRDHFCutsD0toKpipipi.cxx:35 AliRDHFCutsD0toKpipipi.cxx:36 AliRDHFCutsD0toKpipipi.cxx:37 AliRDHFCutsD0toKpipipi.cxx:38 AliRDHFCutsD0toKpipipi.cxx:39 AliRDHFCutsD0toKpipipi.cxx:40 AliRDHFCutsD0toKpipipi.cxx:41 AliRDHFCutsD0toKpipipi.cxx:42 AliRDHFCutsD0toKpipipi.cxx:43 AliRDHFCutsD0toKpipipi.cxx:44 AliRDHFCutsD0toKpipipi.cxx:45 AliRDHFCutsD0toKpipipi.cxx:46 AliRDHFCutsD0toKpipipi.cxx:47 AliRDHFCutsD0toKpipipi.cxx:48 AliRDHFCutsD0toKpipipi.cxx:49 AliRDHFCutsD0toKpipipi.cxx:50 AliRDHFCutsD0toKpipipi.cxx:51 AliRDHFCutsD0toKpipipi.cxx:52 AliRDHFCutsD0toKpipipi.cxx:53 AliRDHFCutsD0toKpipipi.cxx:54 AliRDHFCutsD0toKpipipi.cxx:55 AliRDHFCutsD0toKpipipi.cxx:56 AliRDHFCutsD0toKpipipi.cxx:57 AliRDHFCutsD0toKpipipi.cxx:58 AliRDHFCutsD0toKpipipi.cxx:59 AliRDHFCutsD0toKpipipi.cxx:60 AliRDHFCutsD0toKpipipi.cxx:61 AliRDHFCutsD0toKpipipi.cxx:62 AliRDHFCutsD0toKpipipi.cxx:63 AliRDHFCutsD0toKpipipi.cxx:64 AliRDHFCutsD0toKpipipi.cxx:65 AliRDHFCutsD0toKpipipi.cxx:66 AliRDHFCutsD0toKpipipi.cxx:67 AliRDHFCutsD0toKpipipi.cxx:68 AliRDHFCutsD0toKpipipi.cxx:69 AliRDHFCutsD0toKpipipi.cxx:70 AliRDHFCutsD0toKpipipi.cxx:71 AliRDHFCutsD0toKpipipi.cxx:72 AliRDHFCutsD0toKpipipi.cxx:73 AliRDHFCutsD0toKpipipi.cxx:74 AliRDHFCutsD0toKpipipi.cxx:75 AliRDHFCutsD0toKpipipi.cxx:76 AliRDHFCutsD0toKpipipi.cxx:77 AliRDHFCutsD0toKpipipi.cxx:78 AliRDHFCutsD0toKpipipi.cxx:79 AliRDHFCutsD0toKpipipi.cxx:80 AliRDHFCutsD0toKpipipi.cxx:81 AliRDHFCutsD0toKpipipi.cxx:82 AliRDHFCutsD0toKpipipi.cxx:83 AliRDHFCutsD0toKpipipi.cxx:84 AliRDHFCutsD0toKpipipi.cxx:85 AliRDHFCutsD0toKpipipi.cxx:86 AliRDHFCutsD0toKpipipi.cxx:87 AliRDHFCutsD0toKpipipi.cxx:88 AliRDHFCutsD0toKpipipi.cxx:89 AliRDHFCutsD0toKpipipi.cxx:90 AliRDHFCutsD0toKpipipi.cxx:91 AliRDHFCutsD0toKpipipi.cxx:92 AliRDHFCutsD0toKpipipi.cxx:93 AliRDHFCutsD0toKpipipi.cxx:94 AliRDHFCutsD0toKpipipi.cxx:95 AliRDHFCutsD0toKpipipi.cxx:96 AliRDHFCutsD0toKpipipi.cxx:97 AliRDHFCutsD0toKpipipi.cxx:98 AliRDHFCutsD0toKpipipi.cxx:99 AliRDHFCutsD0toKpipipi.cxx:100 AliRDHFCutsD0toKpipipi.cxx:101 AliRDHFCutsD0toKpipipi.cxx:102 AliRDHFCutsD0toKpipipi.cxx:103 AliRDHFCutsD0toKpipipi.cxx:104 AliRDHFCutsD0toKpipipi.cxx:105 AliRDHFCutsD0toKpipipi.cxx:106 AliRDHFCutsD0toKpipipi.cxx:107 AliRDHFCutsD0toKpipipi.cxx:108 AliRDHFCutsD0toKpipipi.cxx:109 AliRDHFCutsD0toKpipipi.cxx:110 AliRDHFCutsD0toKpipipi.cxx:111 AliRDHFCutsD0toKpipipi.cxx:112 AliRDHFCutsD0toKpipipi.cxx:113 AliRDHFCutsD0toKpipipi.cxx:114 AliRDHFCutsD0toKpipipi.cxx:115 AliRDHFCutsD0toKpipipi.cxx:116 AliRDHFCutsD0toKpipipi.cxx:117 AliRDHFCutsD0toKpipipi.cxx:118 AliRDHFCutsD0toKpipipi.cxx:119 AliRDHFCutsD0toKpipipi.cxx:120 AliRDHFCutsD0toKpipipi.cxx:121 AliRDHFCutsD0toKpipipi.cxx:122 AliRDHFCutsD0toKpipipi.cxx:123 AliRDHFCutsD0toKpipipi.cxx:124 AliRDHFCutsD0toKpipipi.cxx:125 AliRDHFCutsD0toKpipipi.cxx:126 AliRDHFCutsD0toKpipipi.cxx:127 AliRDHFCutsD0toKpipipi.cxx:128 AliRDHFCutsD0toKpipipi.cxx:129 AliRDHFCutsD0toKpipipi.cxx:130 AliRDHFCutsD0toKpipipi.cxx:131 AliRDHFCutsD0toKpipipi.cxx:132 AliRDHFCutsD0toKpipipi.cxx:133 AliRDHFCutsD0toKpipipi.cxx:134 AliRDHFCutsD0toKpipipi.cxx:135 AliRDHFCutsD0toKpipipi.cxx:136 AliRDHFCutsD0toKpipipi.cxx:137 AliRDHFCutsD0toKpipipi.cxx:138 AliRDHFCutsD0toKpipipi.cxx:139 AliRDHFCutsD0toKpipipi.cxx:140 AliRDHFCutsD0toKpipipi.cxx:141 AliRDHFCutsD0toKpipipi.cxx:142 AliRDHFCutsD0toKpipipi.cxx:143 AliRDHFCutsD0toKpipipi.cxx:144 AliRDHFCutsD0toKpipipi.cxx:145 AliRDHFCutsD0toKpipipi.cxx:146 AliRDHFCutsD0toKpipipi.cxx:147 AliRDHFCutsD0toKpipipi.cxx:148 AliRDHFCutsD0toKpipipi.cxx:149 AliRDHFCutsD0toKpipipi.cxx:150 AliRDHFCutsD0toKpipipi.cxx:151 AliRDHFCutsD0toKpipipi.cxx:152 AliRDHFCutsD0toKpipipi.cxx:153 AliRDHFCutsD0toKpipipi.cxx:154 AliRDHFCutsD0toKpipipi.cxx:155 AliRDHFCutsD0toKpipipi.cxx:156 AliRDHFCutsD0toKpipipi.cxx:157 AliRDHFCutsD0toKpipipi.cxx:158 AliRDHFCutsD0toKpipipi.cxx:159 AliRDHFCutsD0toKpipipi.cxx:160 AliRDHFCutsD0toKpipipi.cxx:161 AliRDHFCutsD0toKpipipi.cxx:162 AliRDHFCutsD0toKpipipi.cxx:163 AliRDHFCutsD0toKpipipi.cxx:164 AliRDHFCutsD0toKpipipi.cxx:165 AliRDHFCutsD0toKpipipi.cxx:166 AliRDHFCutsD0toKpipipi.cxx:167 AliRDHFCutsD0toKpipipi.cxx:168 AliRDHFCutsD0toKpipipi.cxx:169 AliRDHFCutsD0toKpipipi.cxx:170 AliRDHFCutsD0toKpipipi.cxx:171 AliRDHFCutsD0toKpipipi.cxx:172 AliRDHFCutsD0toKpipipi.cxx:173 AliRDHFCutsD0toKpipipi.cxx:174 AliRDHFCutsD0toKpipipi.cxx:175 AliRDHFCutsD0toKpipipi.cxx:176 AliRDHFCutsD0toKpipipi.cxx:177 AliRDHFCutsD0toKpipipi.cxx:178 AliRDHFCutsD0toKpipipi.cxx:179 AliRDHFCutsD0toKpipipi.cxx:180 AliRDHFCutsD0toKpipipi.cxx:181 AliRDHFCutsD0toKpipipi.cxx:182 AliRDHFCutsD0toKpipipi.cxx:183 AliRDHFCutsD0toKpipipi.cxx:184 AliRDHFCutsD0toKpipipi.cxx:185 AliRDHFCutsD0toKpipipi.cxx:186 AliRDHFCutsD0toKpipipi.cxx:187 AliRDHFCutsD0toKpipipi.cxx:188 AliRDHFCutsD0toKpipipi.cxx:189 AliRDHFCutsD0toKpipipi.cxx:190 AliRDHFCutsD0toKpipipi.cxx:191 AliRDHFCutsD0toKpipipi.cxx:192 AliRDHFCutsD0toKpipipi.cxx:193 AliRDHFCutsD0toKpipipi.cxx:194 AliRDHFCutsD0toKpipipi.cxx:195 AliRDHFCutsD0toKpipipi.cxx:196 AliRDHFCutsD0toKpipipi.cxx:197 AliRDHFCutsD0toKpipipi.cxx:198 AliRDHFCutsD0toKpipipi.cxx:199 AliRDHFCutsD0toKpipipi.cxx:200 AliRDHFCutsD0toKpipipi.cxx:201 AliRDHFCutsD0toKpipipi.cxx:202 AliRDHFCutsD0toKpipipi.cxx:203 AliRDHFCutsD0toKpipipi.cxx:204 AliRDHFCutsD0toKpipipi.cxx:205 AliRDHFCutsD0toKpipipi.cxx:206 AliRDHFCutsD0toKpipipi.cxx:207 AliRDHFCutsD0toKpipipi.cxx:208 AliRDHFCutsD0toKpipipi.cxx:209 AliRDHFCutsD0toKpipipi.cxx:210 AliRDHFCutsD0toKpipipi.cxx:211 AliRDHFCutsD0toKpipipi.cxx:212 AliRDHFCutsD0toKpipipi.cxx:213 AliRDHFCutsD0toKpipipi.cxx:214 AliRDHFCutsD0toKpipipi.cxx:215 AliRDHFCutsD0toKpipipi.cxx:216 AliRDHFCutsD0toKpipipi.cxx:217 AliRDHFCutsD0toKpipipi.cxx:218 AliRDHFCutsD0toKpipipi.cxx:219 AliRDHFCutsD0toKpipipi.cxx:220 AliRDHFCutsD0toKpipipi.cxx:221 AliRDHFCutsD0toKpipipi.cxx:222 AliRDHFCutsD0toKpipipi.cxx:223 AliRDHFCutsD0toKpipipi.cxx:224 AliRDHFCutsD0toKpipipi.cxx:225 AliRDHFCutsD0toKpipipi.cxx:226 AliRDHFCutsD0toKpipipi.cxx:227 AliRDHFCutsD0toKpipipi.cxx:228 AliRDHFCutsD0toKpipipi.cxx:229 AliRDHFCutsD0toKpipipi.cxx:230 AliRDHFCutsD0toKpipipi.cxx:231 AliRDHFCutsD0toKpipipi.cxx:232 AliRDHFCutsD0toKpipipi.cxx:233 AliRDHFCutsD0toKpipipi.cxx:234 AliRDHFCutsD0toKpipipi.cxx:235 AliRDHFCutsD0toKpipipi.cxx:236 AliRDHFCutsD0toKpipipi.cxx:237 AliRDHFCutsD0toKpipipi.cxx:238 AliRDHFCutsD0toKpipipi.cxx:239 AliRDHFCutsD0toKpipipi.cxx:240 AliRDHFCutsD0toKpipipi.cxx:241 AliRDHFCutsD0toKpipipi.cxx:242 AliRDHFCutsD0toKpipipi.cxx:243 AliRDHFCutsD0toKpipipi.cxx:244 AliRDHFCutsD0toKpipipi.cxx:245 AliRDHFCutsD0toKpipipi.cxx:246 AliRDHFCutsD0toKpipipi.cxx:247 AliRDHFCutsD0toKpipipi.cxx:248 AliRDHFCutsD0toKpipipi.cxx:249 AliRDHFCutsD0toKpipipi.cxx:250 AliRDHFCutsD0toKpipipi.cxx:251 AliRDHFCutsD0toKpipipi.cxx:252 AliRDHFCutsD0toKpipipi.cxx:253 AliRDHFCutsD0toKpipipi.cxx:254 AliRDHFCutsD0toKpipipi.cxx:255 AliRDHFCutsD0toKpipipi.cxx:256 AliRDHFCutsD0toKpipipi.cxx:257 AliRDHFCutsD0toKpipipi.cxx:258 AliRDHFCutsD0toKpipipi.cxx:259 AliRDHFCutsD0toKpipipi.cxx:260 AliRDHFCutsD0toKpipipi.cxx:261 AliRDHFCutsD0toKpipipi.cxx:262 AliRDHFCutsD0toKpipipi.cxx:263 AliRDHFCutsD0toKpipipi.cxx:264 AliRDHFCutsD0toKpipipi.cxx:265 AliRDHFCutsD0toKpipipi.cxx:266 AliRDHFCutsD0toKpipipi.cxx:267 AliRDHFCutsD0toKpipipi.cxx:268 AliRDHFCutsD0toKpipipi.cxx:269 AliRDHFCutsD0toKpipipi.cxx:270 AliRDHFCutsD0toKpipipi.cxx:271 AliRDHFCutsD0toKpipipi.cxx:272 AliRDHFCutsD0toKpipipi.cxx:273 AliRDHFCutsD0toKpipipi.cxx:274 AliRDHFCutsD0toKpipipi.cxx:275 AliRDHFCutsD0toKpipipi.cxx:276 AliRDHFCutsD0toKpipipi.cxx:277 AliRDHFCutsD0toKpipipi.cxx:278 AliRDHFCutsD0toKpipipi.cxx:279 AliRDHFCutsD0toKpipipi.cxx:280 AliRDHFCutsD0toKpipipi.cxx:281 AliRDHFCutsD0toKpipipi.cxx:282 AliRDHFCutsD0toKpipipi.cxx:283 AliRDHFCutsD0toKpipipi.cxx:284 AliRDHFCutsD0toKpipipi.cxx:285 AliRDHFCutsD0toKpipipi.cxx:286 AliRDHFCutsD0toKpipipi.cxx:287 AliRDHFCutsD0toKpipipi.cxx:288 AliRDHFCutsD0toKpipipi.cxx:289 AliRDHFCutsD0toKpipipi.cxx:290 AliRDHFCutsD0toKpipipi.cxx:291 AliRDHFCutsD0toKpipipi.cxx:292 AliRDHFCutsD0toKpipipi.cxx:293 AliRDHFCutsD0toKpipipi.cxx:294 AliRDHFCutsD0toKpipipi.cxx:295 AliRDHFCutsD0toKpipipi.cxx:296 AliRDHFCutsD0toKpipipi.cxx:297 AliRDHFCutsD0toKpipipi.cxx:298 AliRDHFCutsD0toKpipipi.cxx:299 AliRDHFCutsD0toKpipipi.cxx:300 AliRDHFCutsD0toKpipipi.cxx:301 AliRDHFCutsD0toKpipipi.cxx:302 AliRDHFCutsD0toKpipipi.cxx:303 AliRDHFCutsD0toKpipipi.cxx:304 AliRDHFCutsD0toKpipipi.cxx:305 AliRDHFCutsD0toKpipipi.cxx:306 AliRDHFCutsD0toKpipipi.cxx:307 AliRDHFCutsD0toKpipipi.cxx:308 AliRDHFCutsD0toKpipipi.cxx:309 AliRDHFCutsD0toKpipipi.cxx:310 AliRDHFCutsD0toKpipipi.cxx:311 AliRDHFCutsD0toKpipipi.cxx:312 AliRDHFCutsD0toKpipipi.cxx:313 AliRDHFCutsD0toKpipipi.cxx:314 AliRDHFCutsD0toKpipipi.cxx:315 AliRDHFCutsD0toKpipipi.cxx:316 AliRDHFCutsD0toKpipipi.cxx:317 AliRDHFCutsD0toKpipipi.cxx:318 AliRDHFCutsD0toKpipipi.cxx:319 AliRDHFCutsD0toKpipipi.cxx:320 AliRDHFCutsD0toKpipipi.cxx:321 AliRDHFCutsD0toKpipipi.cxx:322 AliRDHFCutsD0toKpipipi.cxx:323 AliRDHFCutsD0toKpipipi.cxx:324 AliRDHFCutsD0toKpipipi.cxx:325 AliRDHFCutsD0toKpipipi.cxx:326 AliRDHFCutsD0toKpipipi.cxx:327 AliRDHFCutsD0toKpipipi.cxx:328 AliRDHFCutsD0toKpipipi.cxx:329 AliRDHFCutsD0toKpipipi.cxx:330 AliRDHFCutsD0toKpipipi.cxx:331 AliRDHFCutsD0toKpipipi.cxx:332 AliRDHFCutsD0toKpipipi.cxx:333 AliRDHFCutsD0toKpipipi.cxx:334 AliRDHFCutsD0toKpipipi.cxx:335 AliRDHFCutsD0toKpipipi.cxx:336 AliRDHFCutsD0toKpipipi.cxx:337 AliRDHFCutsD0toKpipipi.cxx:338 AliRDHFCutsD0toKpipipi.cxx:339 AliRDHFCutsD0toKpipipi.cxx:340 AliRDHFCutsD0toKpipipi.cxx:341 AliRDHFCutsD0toKpipipi.cxx:342 AliRDHFCutsD0toKpipipi.cxx:343 AliRDHFCutsD0toKpipipi.cxx:344 AliRDHFCutsD0toKpipipi.cxx:345 AliRDHFCutsD0toKpipipi.cxx:346 AliRDHFCutsD0toKpipipi.cxx:347 AliRDHFCutsD0toKpipipi.cxx:348 AliRDHFCutsD0toKpipipi.cxx:349 AliRDHFCutsD0toKpipipi.cxx:350 AliRDHFCutsD0toKpipipi.cxx:351 AliRDHFCutsD0toKpipipi.cxx:352 AliRDHFCutsD0toKpipipi.cxx:353 AliRDHFCutsD0toKpipipi.cxx:354 AliRDHFCutsD0toKpipipi.cxx:355 AliRDHFCutsD0toKpipipi.cxx:356 AliRDHFCutsD0toKpipipi.cxx:357 AliRDHFCutsD0toKpipipi.cxx:358 AliRDHFCutsD0toKpipipi.cxx:359 AliRDHFCutsD0toKpipipi.cxx:360 AliRDHFCutsD0toKpipipi.cxx:361 AliRDHFCutsD0toKpipipi.cxx:362 AliRDHFCutsD0toKpipipi.cxx:363 AliRDHFCutsD0toKpipipi.cxx:364 AliRDHFCutsD0toKpipipi.cxx:365 AliRDHFCutsD0toKpipipi.cxx:366 AliRDHFCutsD0toKpipipi.cxx:367 AliRDHFCutsD0toKpipipi.cxx:368 AliRDHFCutsD0toKpipipi.cxx:369 AliRDHFCutsD0toKpipipi.cxx:370 AliRDHFCutsD0toKpipipi.cxx:371 AliRDHFCutsD0toKpipipi.cxx:372 AliRDHFCutsD0toKpipipi.cxx:373 AliRDHFCutsD0toKpipipi.cxx:374 AliRDHFCutsD0toKpipipi.cxx:375 AliRDHFCutsD0toKpipipi.cxx:376 AliRDHFCutsD0toKpipipi.cxx:377 AliRDHFCutsD0toKpipipi.cxx:378 AliRDHFCutsD0toKpipipi.cxx:379 AliRDHFCutsD0toKpipipi.cxx:380 AliRDHFCutsD0toKpipipi.cxx:381 AliRDHFCutsD0toKpipipi.cxx:382 AliRDHFCutsD0toKpipipi.cxx:383 AliRDHFCutsD0toKpipipi.cxx:384 AliRDHFCutsD0toKpipipi.cxx:385 AliRDHFCutsD0toKpipipi.cxx:386 AliRDHFCutsD0toKpipipi.cxx:387 AliRDHFCutsD0toKpipipi.cxx:388 AliRDHFCutsD0toKpipipi.cxx:389 AliRDHFCutsD0toKpipipi.cxx:390 AliRDHFCutsD0toKpipipi.cxx:391 AliRDHFCutsD0toKpipipi.cxx:392 AliRDHFCutsD0toKpipipi.cxx:393 AliRDHFCutsD0toKpipipi.cxx:394 AliRDHFCutsD0toKpipipi.cxx:395 AliRDHFCutsD0toKpipipi.cxx:396 AliRDHFCutsD0toKpipipi.cxx:397 AliRDHFCutsD0toKpipipi.cxx:398 AliRDHFCutsD0toKpipipi.cxx:399 AliRDHFCutsD0toKpipipi.cxx:400 AliRDHFCutsD0toKpipipi.cxx:401 AliRDHFCutsD0toKpipipi.cxx:402 AliRDHFCutsD0toKpipipi.cxx:403 AliRDHFCutsD0toKpipipi.cxx:404 AliRDHFCutsD0toKpipipi.cxx:405 AliRDHFCutsD0toKpipipi.cxx:406 AliRDHFCutsD0toKpipipi.cxx:407 AliRDHFCutsD0toKpipipi.cxx:408 AliRDHFCutsD0toKpipipi.cxx:409 AliRDHFCutsD0toKpipipi.cxx:410 AliRDHFCutsD0toKpipipi.cxx:411 AliRDHFCutsD0toKpipipi.cxx:412 AliRDHFCutsD0toKpipipi.cxx:413 AliRDHFCutsD0toKpipipi.cxx:414 AliRDHFCutsD0toKpipipi.cxx:415 AliRDHFCutsD0toKpipipi.cxx:416 AliRDHFCutsD0toKpipipi.cxx:417 AliRDHFCutsD0toKpipipi.cxx:418 AliRDHFCutsD0toKpipipi.cxx:419 AliRDHFCutsD0toKpipipi.cxx:420 AliRDHFCutsD0toKpipipi.cxx:421 AliRDHFCutsD0toKpipipi.cxx:422 AliRDHFCutsD0toKpipipi.cxx:423 AliRDHFCutsD0toKpipipi.cxx:424 AliRDHFCutsD0toKpipipi.cxx:425 AliRDHFCutsD0toKpipipi.cxx:426 AliRDHFCutsD0toKpipipi.cxx:427 AliRDHFCutsD0toKpipipi.cxx:428 AliRDHFCutsD0toKpipipi.cxx:429 AliRDHFCutsD0toKpipipi.cxx:430 AliRDHFCutsD0toKpipipi.cxx:431 AliRDHFCutsD0toKpipipi.cxx:432 AliRDHFCutsD0toKpipipi.cxx:433 AliRDHFCutsD0toKpipipi.cxx:434 AliRDHFCutsD0toKpipipi.cxx:435 AliRDHFCutsD0toKpipipi.cxx:436 AliRDHFCutsD0toKpipipi.cxx:437 AliRDHFCutsD0toKpipipi.cxx:438 AliRDHFCutsD0toKpipipi.cxx:439 AliRDHFCutsD0toKpipipi.cxx:440 AliRDHFCutsD0toKpipipi.cxx:441 AliRDHFCutsD0toKpipipi.cxx:442 AliRDHFCutsD0toKpipipi.cxx:443 AliRDHFCutsD0toKpipipi.cxx:444 AliRDHFCutsD0toKpipipi.cxx:445 AliRDHFCutsD0toKpipipi.cxx:446 AliRDHFCutsD0toKpipipi.cxx:447 AliRDHFCutsD0toKpipipi.cxx:448 AliRDHFCutsD0toKpipipi.cxx:449 AliRDHFCutsD0toKpipipi.cxx:450 AliRDHFCutsD0toKpipipi.cxx:451 AliRDHFCutsD0toKpipipi.cxx:452 AliRDHFCutsD0toKpipipi.cxx:453 AliRDHFCutsD0toKpipipi.cxx:454 AliRDHFCutsD0toKpipipi.cxx:455 AliRDHFCutsD0toKpipipi.cxx:456 AliRDHFCutsD0toKpipipi.cxx:457 AliRDHFCutsD0toKpipipi.cxx:458 AliRDHFCutsD0toKpipipi.cxx:459 AliRDHFCutsD0toKpipipi.cxx:460 AliRDHFCutsD0toKpipipi.cxx:461 AliRDHFCutsD0toKpipipi.cxx:462 AliRDHFCutsD0toKpipipi.cxx:463 AliRDHFCutsD0toKpipipi.cxx:464 AliRDHFCutsD0toKpipipi.cxx:465 AliRDHFCutsD0toKpipipi.cxx:466 AliRDHFCutsD0toKpipipi.cxx:467 AliRDHFCutsD0toKpipipi.cxx:468 AliRDHFCutsD0toKpipipi.cxx:469 AliRDHFCutsD0toKpipipi.cxx:470 AliRDHFCutsD0toKpipipi.cxx:471 AliRDHFCutsD0toKpipipi.cxx:472 AliRDHFCutsD0toKpipipi.cxx:473 AliRDHFCutsD0toKpipipi.cxx:474 AliRDHFCutsD0toKpipipi.cxx:475 AliRDHFCutsD0toKpipipi.cxx:476 AliRDHFCutsD0toKpipipi.cxx:477 AliRDHFCutsD0toKpipipi.cxx:478 AliRDHFCutsD0toKpipipi.cxx:479 AliRDHFCutsD0toKpipipi.cxx:480 AliRDHFCutsD0toKpipipi.cxx:481 AliRDHFCutsD0toKpipipi.cxx:482 AliRDHFCutsD0toKpipipi.cxx:483 AliRDHFCutsD0toKpipipi.cxx:484 AliRDHFCutsD0toKpipipi.cxx:485 AliRDHFCutsD0toKpipipi.cxx:486 AliRDHFCutsD0toKpipipi.cxx:487 AliRDHFCutsD0toKpipipi.cxx:488 AliRDHFCutsD0toKpipipi.cxx:489 AliRDHFCutsD0toKpipipi.cxx:490 AliRDHFCutsD0toKpipipi.cxx:491 AliRDHFCutsD0toKpipipi.cxx:492 AliRDHFCutsD0toKpipipi.cxx:493 AliRDHFCutsD0toKpipipi.cxx:494 AliRDHFCutsD0toKpipipi.cxx:495 AliRDHFCutsD0toKpipipi.cxx:496 AliRDHFCutsD0toKpipipi.cxx:497 AliRDHFCutsD0toKpipipi.cxx:498 AliRDHFCutsD0toKpipipi.cxx:499 AliRDHFCutsD0toKpipipi.cxx:500 AliRDHFCutsD0toKpipipi.cxx:501 AliRDHFCutsD0toKpipipi.cxx:502 AliRDHFCutsD0toKpipipi.cxx:503 AliRDHFCutsD0toKpipipi.cxx:504 AliRDHFCutsD0toKpipipi.cxx:505 AliRDHFCutsD0toKpipipi.cxx:506