#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliCentrality.h"
+#include "AliPPVsMultUtils.h"
#include "AliCFContainer.h"
#include "AliMultiplicity.h"
ClassImp(AliAnalysisTaskStrangenessVsMultiplicity)
AliAnalysisTaskStrangenessVsMultiplicity::AliAnalysisTaskStrangenessVsMultiplicity()
- : AliAnalysisTaskSE(), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0),
+ : AliAnalysisTaskSE(), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0),
fkSaveV0Tree ( kFALSE ),
fkSaveCascadeTree ( kTRUE ),
fkRunVertexers ( kTRUE ),
fCentrality_V0AEq(0),
fCentrality_V0CEq(0),
fCentrality_V0MEq(0),
+ fCustomCentrality_V0M(0),
+ fCustomCentrality_V0MEq(0),
fRefMultEta5(0),
fRefMultEta8(0),
fRunNumber(0),
}
AliAnalysisTaskStrangenessVsMultiplicity::AliAnalysisTaskStrangenessVsMultiplicity(const char *name)
- : AliAnalysisTaskSE(name), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0),
+ : AliAnalysisTaskSE(name), fListHist(0), fTreeEvent(0), fTreeV0(0), fTreeCascade(0), fPIDResponse(0), fESDtrackCuts(0), fPPVsMultUtils(0),
fkSaveV0Tree ( kFALSE ),
fkSaveCascadeTree ( kTRUE ),
fkRunVertexers ( kTRUE ),
fCentrality_V0M(0),
fCentrality_V0AEq(0),
fCentrality_V0CEq(0),
- fCentrality_V0MEq(0),
+ fCentrality_V0MEq(0),
+ fCustomCentrality_V0M(0),
+ fCustomCentrality_V0MEq(0),
fRefMultEta5(0),
fRefMultEta8(0),
fRunNumber(0),
delete fTreeCascade;
fTreeCascade = 0x0;
}
+ if (fPPVsMultUtils){
+ delete fPPVsMultUtils;
+ fPPVsMultUtils = 0x0;
+ }
}
//________________________________________________________________________
fTreeEvent->Branch("fCentrality_V0AEq",&fCentrality_V0AEq,"fCentrality_V0AEq/F");
fTreeEvent->Branch("fCentrality_V0CEq",&fCentrality_V0CEq,"fCentrality_V0CEq/F");
fTreeEvent->Branch("fCentrality_V0MEq",&fCentrality_V0MEq,"fCentrality_V0MEq/F");
-
+ fTreeEvent->Branch("fCustomCentrality_V0M",&fCustomCentrality_V0M,"fCustomCentrality_V0M/F");
+ fTreeEvent->Branch("fCustomCentrality_V0MEq",&fCustomCentrality_V0MEq,"fCustomCentrality_V0MEq/F");
+
//Official GetReferenceMultiplicity
fTreeEvent->Branch("fRefMultEta5",&fRefMultEta5,"fRefMultEta5/I");
fTreeEvent->Branch("fRefMultEta8",&fRefMultEta8,"fRefMultEta8/I");
if(! fESDtrackCuts ){
fESDtrackCuts = new AliESDtrackCuts();
}
+ //Helper
+ if(! fPPVsMultUtils ){
+ fPPVsMultUtils = new AliPPVsMultUtils();
+ }
//------------------------------------------------
// V0 Multiplicity Histograms
fCentrality_V0MEq = centrality->GetCentralityPercentile( "V0MEq" );
}
+ //Cross-check/debug
+ fCustomCentrality_V0M = fPPVsMultUtils->GetMultiplicityPercentile(lESDevent,"V0M");
+ fCustomCentrality_V0MEq = fPPVsMultUtils->GetMultiplicityPercentile(lESDevent,"V0MEq");
+
//Tracklets vs Clusters Exploratory data
fEvSel_nTracklets = lESDevent->GetMultiplicity()->GetNumberOfTracklets();
fEvSel_nSPDClusters = lESDevent->GetNumberOfITSClusters(0) + lESDevent->GetNumberOfITSClusters(1);
class AliESDpid;
class AliESDtrackCuts;
class AliAnalysisUtils;
+class AliPPVsMultUtils;
class AliESDEvent;
class AliPhysicsSelection;
class AliCFContainer;
AliPIDResponse *fPIDResponse; // PID response object
AliESDtrackCuts *fESDtrackCuts; // ESD track cuts used for primary track definition
+ AliPPVsMultUtils *fPPVsMultUtils; //
//Objects Controlling Task Behaviour
Bool_t fkSaveV0Tree; //if true, save TTree
Float_t fCentrality_V0M; //!
Float_t fCentrality_V0AEq; //!
Float_t fCentrality_V0CEq; //!
- Float_t fCentrality_V0MEq; //!
+ Float_t fCentrality_V0MEq; //!
+ Float_t fCustomCentrality_V0M; //!
+ Float_t fCustomCentrality_V0MEq; //!
Int_t fRefMultEta5; //!
Int_t fRefMultEta8; //!
Int_t fRunNumber; //!