fIsSelectedPID(0),
fMinPtCand(-1.),
fMaxPtCand(100000.),
+fMaxRapidityCand(-999.),
fKeepSignalMC(kFALSE),
fIsCandTrackSPDFirst(kFALSE),
fMaxPtCandTrackSPDFirst(0.),
fIsSelectedPID(source.fIsSelectedPID),
fMinPtCand(source.fMinPtCand),
fMaxPtCand(source.fMaxPtCand),
+ fMaxRapidityCand(source.fMaxRapidityCand),
fKeepSignalMC(source.fKeepSignalMC),
fIsCandTrackSPDFirst(source.fIsCandTrackSPDFirst),
fMaxPtCandTrackSPDFirst(source.fMaxPtCandTrackSPDFirst),
fIsSelectedPID=source.fIsSelectedPID;
fMinPtCand=source.fMinPtCand;
fMaxPtCand=source.fMaxPtCand;
+ fMaxRapidityCand=source.fMaxRapidityCand;
fKeepSignalMC=source.fKeepSignalMC;
fIsCandTrackSPDFirst=source.fIsCandTrackSPDFirst;
fMaxPtCandTrackSPDFirst=source.fMaxPtCandTrackSPDFirst;
/* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
+/* $Id$ */
+
//***********************************************************
// Class AliRDHFCuts
// base class for cuts on AOD reconstructed heavy-flavour decays
void SetRecomputePrimaryVertex(Bool_t opt) {fRecomputePrimVertex=opt;}
void SetMinPtCandidate(Double_t ptCand=-1.) {fMinPtCand=ptCand; return;}
void SetMaxPtCandidate(Double_t ptCand=1000.) {fMaxPtCand=ptCand; return;}
+ void SetMaxRapidityCandidate(Double_t ycand) {fMaxRapidityCand=ycand; return;}
void SetOptPileup(Int_t opt=0){
// see enum below
fOptPileup=opt;
Bool_t IsEventRejectedDueToCentrality() const {
return fEvRejectionBits&(1<<kOutsideCentrality);
}
+ Bool_t IsEventRejectedDueToCentralityFlattening() const {
+ return fEvRejectionBits&(1<<kCentralityFlattening);
+ }
Bool_t IsEventRejectedDuePhysicsSelection() const {
return fEvRejectionBits&(1<<kPhysicsSelection);
}
Int_t fIsSelectedPID; // outcome of PID selection
Double_t fMinPtCand; // minimum pt of the candidate
Double_t fMaxPtCand; // minimum pt of the candidate
+ Double_t fMaxRapidityCand; // max rapidity of candidate (if !=-999 overrides IsInFiducialAcceptance)
Bool_t fKeepSignalMC; // IsSelected returns always kTRUE for MC signal
Bool_t fIsCandTrackSPDFirst; // flag to select the track kFirst criteria for pt < ptlimit
Double_t fMaxPtCandTrackSPDFirst; // maximum pt of the candidate for which to check if the daughters fulfill kFirst criteria
Bool_t fUseCentrFlatteningInMC; // flag for enabling/diabling centrality flattening in MC
TH1F *fHistCentrDistr; // histogram with reference centrality distribution for centrality distribution flattening
- ClassDef(AliRDHFCuts,30); // base class for cuts on AOD reconstructed heavy-flavour decays
+ ClassDef(AliRDHFCuts,31); // base class for cuts on AOD reconstructed heavy-flavour decays
};
#endif
// Checking if D0 is in fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(2,Form("pt of D0 = %f (> 5), cutting at |y| < 0.8\n",pt));
* provided "as is" without express or implied warranty. *
**************************************************************************/
+/* $Id$ */
+
/////////////////////////////////////////////////////////////
//
// Class for cuts on AOD reconstructed D0->Kpipipi
// Checking if D0 is in fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(4,Form("pt of D0 = %f (> 5), cutting at |y| < 0.8\n",pt));
// D* fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(4,Form("pt of D* = %f (> 5), cutting at |y| < 0.8\n",pt));
// Checking if Dplus is in fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(2,Form("pt of D+ = %f (> 5), cutting at |y| < 0.8",pt));
// Checking if Ds is in fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(2,Form("pt of Ds = %f (> 5), cutting at |y| < 0.8",pt));
Bool_t AliRDHFCutsLctopKpi::IsInFiducialAcceptance(Double_t pt, Double_t y) const
{
//
- // // Checking if Dplus is in fiducial acceptance region
+ // // Checking if Lc is in fiducial acceptance region
// //
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
- AliDebug(2,Form("pt of D+ = %f (> 5), cutting at |y| < 0.8",pt));
+ AliDebug(2,Form("pt of Lc = %f (> 5), cutting at |y| < 0.8",pt));
if (TMath::Abs(y) > 0.8) return kFALSE;
} else {
// appliying smooth cut for pt < 5 GeV
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(2,Form("pt of D+ = %f (< 5), cutting according to the fiducial zone [%f, %f]\n",pt,minFiducialY,maxFiducialY));
+ AliDebug(2,Form("pt of Lc = %f (< 5), cutting according to the fiducial zone [%f, %f]\n",pt,minFiducialY,maxFiducialY));
if (y < minFiducialY || y > maxFiducialY) return kFALSE;
}
//