#include "AliVEvent.h"
#include <TMatrixDSym.h>
#include <TMath.h>
+#include "AliVMultiplicity.h"
#include "AliAnalysisUtils.h"
fnSigmaPlpZdistSPD(3.),
fnSigmaPlpDiamXYSPD(2.),
fnSigmaPlpDiamZSPD(5.),
- fUseSPDCutInMultBins(kFALSE)
+ fUseSPDCutInMultBins(kFALSE),
+ fASPDCvsTCut(65.),
+ fBSPDCvsTCut(4.)
{
// Default contructor
}
return kFALSE;
}
+
+//______________________________________________________________________
+Bool_t AliAnalysisUtils::IsSPDClusterVsTrackletBG(AliVEvent *event){
+ Int_t nClustersLayer0 = event->GetNumberOfITSClusters(0);
+ Int_t nClustersLayer1 = event->GetNumberOfITSClusters(1);
+ Int_t nTracklets = event->GetMultiplicity()->GetNumberOfTracklets();
+ if (nClustersLayer0 + nClustersLayer1 > fASPDCvsTCut + nTracklets*fBSPDCvsTCut) return kTRUE;
+ return kFALSE;
+}
+
+
//______________________________________________________________________
Double_t AliAnalysisUtils::GetWDist(const AliVVertex* v0, const AliVVertex* v1)
{
return dist>0 ? TMath::Sqrt(dist) : -1;
}
+
Bool_t IsPileUpMV(AliVEvent *event); //MV pileup selection implemented here
Bool_t IsPileUpSPD(AliVEvent *event); //this calls IsPileUpFromSPD
Bool_t IsOutOfBunchPileUp(AliVEvent *event); //out-of-bunch pileup rejection using trigger information
+ Bool_t IsSPDClusterVsTrackletBG(AliVEvent *event); // background rejection with cluster-vs-tracklet cut
Double_t GetWDist(const AliVVertex* v0, const AliVVertex* v1);
void SetnSigmaPlpDiamZSPD(Float_t nSigmaPlpDiamZSPD) { fnSigmaPlpDiamZSPD = nSigmaPlpDiamZSPD;}
void SetUseSPDCutInMultBins(Bool_t useSPDCutInMultBins) { fUseSPDCutInMultBins = useSPDCutInMultBins;}
+ // SPD cluster-vs-tracklet cut
+ void SetASPDCvsTCut(Float_t a) { fASPDCvsTCut = a; }
+ void SetBSPDCvsTCut(Float_t b) { fBSPDCvsTCut = b; }
private:
Float_t fnSigmaPlpDiamZSPD; //cut on nsigma diamond Z for SPD pileup
Bool_t fUseSPDCutInMultBins; //use IsPileupFromSPDInMultBins instead of IsPileupFromSPD
- ClassDef(AliAnalysisUtils,1) // base helper class
+ Float_t fASPDCvsTCut; // constant for the linear cut in SPD clusters vs tracklets
+ Float_t fBSPDCvsTCut; // slope for the linear cut in SPD clusters vs tracklets
+
+ ClassDef(AliAnalysisUtils,2) // base helper class
};
#endif