36 const Bool_t simulation = kFALSE,
37 const TString collision =
"pp",
38 const TString
suffix =
"default",
39 const Bool_t qaan = kFALSE,
40 const Bool_t hadronan = kFALSE,
41 const Bool_t calibrate = kTRUE,
42 const Int_t minTime = -1000,
43 const Int_t maxTime = 1000,
44 const Int_t minCen = -1,
45 const Int_t maxCen = -1,
46 const Int_t debugLevel = -1,
47 const Int_t year = 2015
50 if(simulation && !
suffix.Contains(
"default"))
52 printf(
"AddTaskPi0IMGammaCorrQA - CAREFUL : Triggered events not checked in simulation!! \n");
58 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
61 ::Error(
"AddTaskPi0IMGammaCorrQA",
"No analysis manager to connect to.");
67 if (!mgr->GetInputEventHandler())
69 ::Error(
"AddTaskPi0IMGammaCorrQA",
"This task requires an input event handler");
74 ((AliInputEventHandler*)mgr->GetInputEventHandler())->SetNeedField(kTRUE);
76 TString inputDataType = mgr->GetInputEventHandler()->GetDataType();
82 if(collision!=
"pp" && maxCen>=0) containerName+=Form(
"Cen%d_%d",minCen,maxCen);
84 printf(
"AddTaskPi0IMGammaCorrQA - Container NAME: %s \n",containerName.Data());
91 maker->SetReader (
ConfigureReader (inputDataType,collision,calibrate,minTime,maxTime,minCen,maxCen,simulation,year,debugLevel) );
103 maker->GetReader()->SwitchOnCTS();
110 maker->SetAnaDebug(debugLevel) ;
111 maker->SwitchOnHistogramsMaker() ;
112 maker->SwitchOnAODsMaker() ;
113 maker->SwitchOffDataControlHistograms();
114 if(
suffix.Contains(
"EMC"))
115 maker->SwitchOnDataControlHistograms();
117 if(debugLevel > 0) maker->Print(
"");
121 TString taskName =Form(
"Pi0IM_GammaTrackCorr_%s",containerName.Data());
124 task->SetConfigFileName(
"");
125 task->SetDebugLevel(debugLevel);
128 task->SetAnalysisMaker(maker);
133 TString outputfile = AliAnalysisManager::GetCommonFileName();
135 AliAnalysisDataContainer *cout_pc = mgr->CreateContainer(taskName, TList::Class(),
136 AliAnalysisManager::kOutputContainer,
137 Form(
"%s:%s",outputfile.Data(),taskName.Data()));
139 AliAnalysisDataContainer *cout_cuts = mgr->CreateContainer(Form(
"Param_%s",taskName.Data()), TList::Class(),
140 AliAnalysisManager::kParamContainer,
141 Form(
"%s_Parameters.root",taskName.Data()));
146 mgr->ConnectInput (task, 0, mgr->GetCommonInputContainer());
147 mgr->ConnectOutput (task, 1, cout_pc);
148 mgr->ConnectOutput (task, 2, cout_cuts);
157 Int_t minTime, Int_t maxTime,
158 Int_t minCen, Int_t maxCen,
159 Bool_t simulation, Int_t year, Int_t debugLevel)
162 if (inputDataType==
"AOD")
164 else if(inputDataType==
"ESD")
167 printf(
"AliCaloTrackReader::ConfigureReader() - Data combination not known input Data=%s\n",
168 inputDataType.Data());
175 if(inputDataType ==
"ESD")
180 else if(inputDataType ==
"AOD")
219 if(inputDataType==
"ESD")
221 gROOT->LoadMacro(
"$ALICE_PHYSICS/PWGJE/macros/CreateTrackCutsPWGJE.C");
225 AliESDtrackCuts * esdTrackCuts = CreateTrackCutsPWGJE(10001008);
227 AliESDtrackCuts * esdTrackCuts2 = CreateTrackCutsPWGJE(10011008);
233 AliESDtrackCuts * esdTrackCuts = CreateTrackCutsPWGJE(10001006);
235 AliESDtrackCuts * esdTrackCuts2 = CreateTrackCutsPWGJE(10041006);
239 else if(inputDataType==
"AOD")
269 if(collision==
"PbPb")
275 if(debugLevel > 0) reader->
Print(
"");
284 Int_t year, Int_t debugLevel)
313 Bool_t bExotic = kTRUE;
314 Bool_t bNonLin = kTRUE;
315 Bool_t bBadMap = kTRUE;
317 Bool_t bEnCalib = kFALSE;
318 Bool_t bTiCalib = kFALSE;
320 if(calibrate && !simulation)
330 gROOT->LoadMacro(
"$ALICE_PHYSICS/PWGPP/EMCAL/macros/ConfigureEMCALRecoUtils.C");
338 recou->SetExoticCellDiffTimeCut(50.);
340 if(calorimeter==
"PHOS")
354 if(debugLevel > 0) cu->
Print(
"");
364 TString containerName, Bool_t simulation,
365 Int_t year, Int_t debugLevel)
376 if(calorimeter ==
"PHOS")
434 if(debugLevel > 0 ) ana->
Print(
"");
443 TString containerName, Bool_t simulation, Int_t year,
444 Bool_t qaan, Int_t debugLevel)
466 if (collision ==
"pp" )
474 else if(collision ==
"PbPb")
482 else if(collision ==
"pPb")
503 if(debugLevel > 0) ana->
Print(
"");
512 Bool_t simulation, Int_t year, Int_t debugLevel)
540 if(debugLevel > 0) ana->
Print(
"");
549 TString collision, TString containerName,
550 Bool_t simulation, Int_t year, Int_t debugLevel)
605 ana->
SetInputAODName(Form(
"%s%s",particle.Data(),containerName.Data()));
606 ana->
SetAODObjArrayName(Form(
"%sHadronCorr_%s",particle.Data(),containerName.Data()));
625 if(debugLevel > 0) ana->
Print(
"");
634 Bool_t simulation, Int_t year, Int_t debugLevel)
658 if(debugLevel > 0) ana->
Print(
"");
668 TString collision, Int_t year)
672 if(calorimeter==
"EMCAL")
680 else if ( year < 2014 )
730 if(collision==
"PbPb")
void SwitchOnBadChannelsRemoval()
void SetHistoTrackMultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n)
virtual void SetDebug(Int_t d)
virtual void SwitchOffTrackMultBins()
void SetNumberOfCellsFromPHOSBorder(Int_t n)
void SwitchOffRunDepCorrection()
void SwitchOffStudyWeight()
virtual void SetMaxEnergy(Float_t e)
void SetTimeCut(Double_t min, Double_t max)
void SwitchOffFillEtaGapHistograms()
void ana(Int_t mode=mGRID)
void SetSimpleCTSFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
void SwitchOffStudyClustersAsymmetry()
void SetHistoMassRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void AddToHistogramsName(TString add)
void SwitchOffCorrelationVzBin()
void SwitchOnFillAllTrackMatchingHistogram()
void SetHistoXRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SwitchOnTrackMatchRejection()
void SwitchOnLoadOwnEMCALGeometryMatrices()
void SetAssociatedPtRange(Float_t min, Float_t max)
void SetNPIDBits(Int_t s)
virtual void SwitchOnAODHybridTrackSelection()
virtual void SetCentralityBin(Int_t min, Int_t max)
AliEMCALRecoUtils * GetEMCALRecoUtils() const
void SwitchOffClusterRecalculation()
virtual void SwitchOnDataMC()
void FillNPrimaryHistograms(Int_t n)
virtual void SwitchOnTrackMultBins()
void SetCTSPtMax(Float_t pt)
void SwitchOffClusterPlot()
void SetHistoPtRangeAndNBins(Float_t min, Float_t max, Int_t n)
Selected photon clusters invariant mass analysis.
virtual void SetCalorimeter(TString &calo)
Set the calorimeter for the analysis. A string.
virtual void SetInputAODName(TString name)
virtual void SetTrackComplementaryCuts(AliESDtrackCuts *)
void SwitchOffUseTrackDCACut()
void SwitchOnSMCombinations()
void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3)
void SwitchOnRecalculateClusterPosition()
void SetHistoRangeAndNBins(AliHistogramRanges *histoRanges, TString calorimeter, TString collision, Int_t year)
void SwitchOffTMHistoFill()
virtual void SetDebug(Int_t d)
virtual void SetOutputAODClassName(TString name)
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
void SwitchOnCorrelation()
void SwitchOffMultipleCutAnalysis()
void SwitchOffFillAllPositionHistogram2()
Class for the Calorimeter QA analysis.
AliCaloTrackReader * ConfigureReader(TString inputDataType, TString collision, Bool_t calibrate, Int_t minTime, Int_t maxTime, Int_t minCen, Int_t maxCen, Bool_t simulation, Int_t year, Int_t debugLevel)
void SetHistodRRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SwitchOnAODMCParticles()
void SetLocalMaximaCutEDiff(Float_t c)
void SetPHOSEMax(Float_t e)
void SetNumberOfCellsFromEMCALBorder(Int_t n)
void SetEMCALEMin(Float_t e)
void SetNCellCut(Int_t n)
AliAnalysisTaskCaloTrackCorrelation * AddTaskPi0IMGammaCorrQA(const TString calorimeter="EMCAL", const Bool_t simulation=kFALSE, const TString collision="pp", const TString suffix="default", const Bool_t qaan=kFALSE, const Bool_t hadronan=kFALSE, const Bool_t calibrate=kTRUE, const Int_t minTime=-1000, const Int_t maxTime=1000, const Int_t minCen=-1, const Int_t maxCen=-1, const Int_t debugLevel=-1, const Int_t year=2015)
void SwitchOffNearSideLeading()
void SwitchOffPileUpEventRejection()
const TString calorimeter
void SwitchOnRecalibration()
void SwitchOffV0ANDSelection()
void SetHistoTrackResidualEtaRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
Class for event, clusters and tracks filtering and preparation for the AOD analysis.
void SwitchOffAODMCParticles()
void SetCTSPtMin(Float_t pt)
AliAnaParticleHadronCorrelation * ConfigureHadronCorrelationAnalysis(TString particle, TString calorimeter, TString collision, TString containerName, Bool_t simulation, Int_t year, Int_t debugLevel)
virtual void SetPairTimeCut(Float_t t)
void SetPHOSRCut(Float_t rcut)
void SetEMCALDPhiCut(Float_t dcut)
virtual void SetOutputAODName(TString name)
void SwitchOffRecalculateClusterTrackMatching()
AliAnaCalorimeterQA * ConfigureQAAnalysis(TString calorimeter, TString collision, Bool_t simulation, Int_t year, Int_t debugLevel)
void SwitchOffVertexBCEventSelection()
Correlate trigger particles (photon, pi0, tracks) and charged tracks: Azimuthal correlations, xE distributions.
virtual void SetNTrackMultBin(Int_t n=1)
Number of bins in centrality.
void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)
void SwitchOffRecalibration()
void SetUeDeltaPhiCutRange(Double_t uephimin, Double_t uephimax)
void SetHistoPtInConeRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void SetDebug(Int_t d)
void SetHistoPOverERangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual AliFiducialCut * GetFiducialCut()
void SwitchOffFillAngleHisto()
virtual void SetCentralityOpt(Int_t opt)
void SetHistoPhiRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual AliHistogramRanges * GetHistogramRanges()
void SwitchOffDecayTriggerDecayCorr()
AliCalorimeterUtils * ConfigureCaloUtils(TString calorimeter, Bool_t simulation, Bool_t calibrate, Int_t year, Int_t debugLevel)
void SetHistoPtSumRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void SetNZvertBin(Int_t n=1)
void SetTrackStatus(ULong_t bit)
void SwitchOnUseEMCALTimeCut()
void SwitchOffNeutralCorr()
Filter EMCal/PHOS clusters for photon analysis.
void SetHistoTrackResidualPhiRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void SwitchOnOwnMix()
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
AliAnaPhoton * ConfigurePhotonAnalysis(TString calorimeter, TString collision, TString containerName, Bool_t simulation, Int_t year, Int_t debugLevel)
virtual void SwitchOnCaloPID()
Base class for event, clusters and tracks filtering and preparation for the analysis.
void SetHistoNClusterCellRangeAndNBins(Int_t min, Int_t max, Int_t n)
void SetEMCALClusterListName(TString &name)
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
AliAnaPi0 * ConfigurePi0Analysis(TString calorimeter, TString collision, TString containerName, Bool_t simulation, Int_t year, Bool_t qaan, Int_t debugLevel)
void SwitchOnCorrectClusterLinearity()
void SwitchOffHMPIDCorrelation()
void SetHistoYRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetTimeCut(Double_t min, Double_t max)
void SwitchOffFillAllPositionHistogram()
void SwitchOffFillVertexBC0Histograms()
virtual void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
void SwitchOffUseTrackTimeCut()
virtual AliCaloPID * GetCaloPID()
virtual void SwitchOnFiducialCut()
virtual void SetZvertexCut(Float_t zcut=10.)
void SwitchOffRejectNoTrackEvents()
void SetNumberOfSuperModulesUsed(Int_t nSM)
void SwitchOnClusterRecalculation()
Class containing more common histogram axis types.
void SetEMCALLambda0CutMax(Float_t lcut)
void SwitchOnPrimaryVertexSelection()
void SwitchOnEMCALCells()
virtual void SetMinEnergy(Float_t e)
virtual void SetNCentrBin(Int_t n=1)
Number of bins in reaction plain.
Class for event, clusters and tracks filtering and preparation for the ESD analysis.
void SetNAsymCuts(Int_t s)
virtual void SetNRPBin(Int_t n=1)
Number of bins for vertex position.
void SetHistoNClustersRangeAndNBins(Int_t min, Int_t max, Int_t n)
void SetPHOSDispersionCut(Float_t dcut)
virtual void SetTrackCuts(AliESDtrackCuts *)
Track selection for correlation analysis.
virtual void SwitchOffFiducialCut()
void SwitchOnFillShowerShapeHistograms()
void SwitchOffFillBradHistograms()
virtual void SwitchOffFillHighMultiplicityHistograms()
void SetHistoEtaRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SwitchOffSeveralUECalculation()
void SetTrackTimeCut(Double_t a, Double_t b)
void SetEMCALTimeCut(Double_t a, Double_t b)
void SetHistoAsymmetryRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetHistoV0MultiplicityRangeAndNBins(Int_t min, Int_t max, Int_t n)
virtual void SetAODObjArrayName(TString name)
Main class conecting the CaloTrackCorrelations package and Analysis Frame.
void SwitchOffLoadOwnPHOSGeometryMatrices()
void SwitchOffStudyBadClusters()
void SwitchOffRecalculateVertexBC()
void SwitchOffFillAllTH3Histogram()
void SetHistoZRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetHistoV0SignalRangeAndNBins(Int_t min, Int_t max, Int_t n)
void SetHistoTimeRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetHistoFinePtRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SwitchOnAbsoluteLeading()
void SetNAssocPtBins(Int_t n)
Set number of associated charged (neutral) hadrons pT bins.
void SwitchOnFillAllCellTimeHisto()
Class for PID selection with calorimeters.
void FillNOriginHistograms(Int_t n)
virtual void SetNMaxEvMix(Int_t n=20)
Number of bins in track multiplicity.
void SetPHOSEMin(Float_t e)
void SetHistoShowerShapeRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SelectIsolated(Bool_t s)
void SetHistodEdxRangeAndNBins(Float_t min, Float_t max, Int_t n)
Class with utils specific to calorimeter clusters/cells.
void SetHistoHBPRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetEMCALLambda0CutMin(Float_t lcut)
void SetHistoRRangeAndNBins(Float_t min, Float_t max, Int_t n)
virtual void SwitchOffFiducialCut()
void SwitchOnEventTriggerAtSE()
virtual void SwitchOffOwnMix()
void SetHistoVertexDistRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetEMCALEMax(Float_t e)
void SwitchOffPi0TriggerDecayCorr()
void SetHistoDiffTimeRangeAndNBins(Float_t min, Float_t max, Int_t n)
void SetEMCALDEtaCut(Float_t dcut)
void SwitchOffUseParametrizedTimeCut()
void SwitchOffFillOriginHisto()
void SetLocalMaximaCutE(Float_t cut)
virtual void SetMinPt(Float_t pt)
void SetHistoRatioRangeAndNBins(Float_t min, Float_t max, Int_t n)
void Print(const Option_t *opt) const
Print some relevant parameters set for the analysis.
void SetNLMCut(Int_t min, Int_t max)
void SetAssocPtBinLimit(Int_t ibin, Float_t pt)
Set the list of pT limits for the of associated charged (neutral) hadrons.
Steering class of package CaloTrackCorrelartions.
AliAnaChargedParticles * ConfigureChargedAnalysis(TString collision, TString containerName, Bool_t simulation, Int_t year, Int_t debugLevel)
void SetTriggerPtRange(Float_t min, Float_t max)